Class ClientFactory
java.lang.Object
com.linkedin.venice.fastclient.factory.ClientFactory
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <K,V> AvroGenericStoreClient<K, V> getAndStartGenericStoreClient(ClientConfig clientConfig) static <K,V> AvroGenericStoreClient<K, V> getAndStartGenericStoreClient(StoreMetadata storeMetadata, ClientConfig clientConfig) TODO: once we decide to completely remove the helix based implementation, we won't need to pass the param: in these factory methods.static <K,V extends org.apache.avro.specific.SpecificRecord>
AvroSpecificStoreClient<K,V> getAndStartSpecificStoreClient(ClientConfig clientConfig) static <K,V extends org.apache.avro.specific.SpecificRecord>
AvroSpecificStoreClient<K,V> getAndStartSpecificStoreClient(StoreMetadata storeMetadata, ClientConfig clientConfig) static <K,V> AvroGenericStoreClient<K, V> getGenericStoreClient(ClientConfig clientConfig) Builds the Fast Client wrapper chain without callingAvroGenericStoreClient.start().
-
Constructor Details
-
ClientFactory
public ClientFactory()
-
-
Method Details
-
getAndStartGenericStoreClient
public static <K,V> AvroGenericStoreClient<K,V> getAndStartGenericStoreClient(ClientConfig clientConfig) -
getGenericStoreClient
Builds the Fast Client wrapper chain without callingAvroGenericStoreClient.start(). Callers that need to register aStoreVersionSwitchListenerorStoreConfigChangeListenerbefore the first metadata refresh fires should use this entry point, register on the returned client, then callstart().register*Listeneronly delivers transitions observed after the listener exists in the registry — a listener registered afterstart()returns will not see the initial(-1 -> currentVersion)transition committed by the first refresh. This factory plusstart()from the caller is the supported way to observe that initial transition. -
getAndStartSpecificStoreClient
public static <K,V extends org.apache.avro.specific.SpecificRecord> AvroSpecificStoreClient<K,V> getAndStartSpecificStoreClient(ClientConfig clientConfig) -
getAndStartGenericStoreClient
public static <K,V> AvroGenericStoreClient<K,V> getAndStartGenericStoreClient(StoreMetadata storeMetadata, ClientConfig clientConfig) TODO: once we decide to completely remove the helix based implementation, we won't need to pass the param: in these factory methods. So far, it is for the testing purpose. -
getAndStartSpecificStoreClient
public static <K,V extends org.apache.avro.specific.SpecificRecord> AvroSpecificStoreClient<K,V> getAndStartSpecificStoreClient(StoreMetadata storeMetadata, ClientConfig clientConfig)
-