Package org.apache.bookkeeper.meta.zk
Class ZKMetadataClientDriver
java.lang.Object
org.apache.bookkeeper.meta.zk.ZKMetadataDriverBase
org.apache.bookkeeper.meta.zk.ZKMetadataClientDriver
- All Implemented Interfaces:
AutoCloseable,MetadataClientDriver
ZooKeeper based metadata client driver.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.bookkeeper.meta.MetadataClientDriver
MetadataClientDriver.SessionStateListener -
Field Summary
FieldsModifier and TypeFieldDescription(package private) boolean(package private) ClientConfiguration(package private) RegistrationClient(package private) ScheduledExecutorServiceFields inherited from class org.apache.bookkeeper.meta.zk.ZKMetadataDriverBase
acls, conf, disableHealthCheckPath, layoutManager, ledgersRootPath, lmFactory, metadataServiceAvailable, ownZKHandle, SCHEME, statsLogger, zk -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Return the registration client used for discovering registered bookies.initialize(ClientConfiguration conf, ScheduledExecutorService scheduler, StatsLogger statsLogger, Optional<Object> optionalCtx) Initialize the metadata driver.Return driver metadata service is available.(package private) ZKRegistrationClientnewZKRegistrationClient(org.apache.zookeeper.ZooKeeper zk, String ledgersRootPath, ScheduledExecutorService scheduler, boolean bookieAddressTracking) voidsetSessionStateListener(MetadataClientDriver.SessionStateListener sessionStateListener) sets session state listener.Methods inherited from class org.apache.bookkeeper.meta.zk.ZKMetadataDriverBase
disableHealthCheck, enableHealthCheck, getLayoutManager, getLedgerManagerFactory, getScheme, getZk, getZKServersFromServiceUri, initialize, isHealthCheckEnabled, resolveLedgerManagerFactory, resolveZkLedgersRootPath, resolveZkServers, setZkMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.bookkeeper.meta.MetadataClientDriver
getLayoutManager, getLedgerManagerFactory, getScheme, isHealthCheckEnabled
-
Field Details
-
clientConf
ClientConfiguration clientConf -
scheduler
ScheduledExecutorService scheduler -
regClient
RegistrationClient regClient -
bookieAddressTracking
boolean bookieAddressTracking
-
-
Constructor Details
-
ZKMetadataClientDriver
public ZKMetadataClientDriver()
-
-
Method Details
-
initialize
public MetadataClientDriver initialize(ClientConfiguration conf, ScheduledExecutorService scheduler, StatsLogger statsLogger, Optional<Object> optionalCtx) throws MetadataException Description copied from interface:MetadataClientDriverInitialize the metadata driver.- Specified by:
initializein interfaceMetadataClientDriver- Parameters:
conf- configurationscheduler- schedulerstatsLogger- stats loggeroptionalCtx- optional context object passed in for initialization. currently it is an external zookeeper instance, which can be used for zookeeper based metadata implementation.- Returns:
- metadata driver
- Throws:
MetadataException- when fail to initialize the client driver.
-
getRegistrationClient
Description copied from interface:MetadataClientDriverReturn the registration client used for discovering registered bookies.- Specified by:
getRegistrationClientin interfaceMetadataClientDriver- Returns:
- the registration client used for discovering registered bookies.
-
newZKRegistrationClient
ZKRegistrationClient newZKRegistrationClient(org.apache.zookeeper.ZooKeeper zk, String ledgersRootPath, ScheduledExecutorService scheduler, boolean bookieAddressTracking) -
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceMetadataClientDriver- Overrides:
closein classZKMetadataDriverBase
-
setSessionStateListener
Description copied from interface:MetadataClientDriversets session state listener.- Specified by:
setSessionStateListenerin interfaceMetadataClientDriver- Parameters:
sessionStateListener- listener listening on metadata client session states.
-
isMetadataServiceAvailable
Description copied from interface:MetadataClientDriverReturn driver metadata service is available.- Specified by:
isMetadataServiceAvailablein interfaceMetadataClientDriver- Returns:
- the metadata service is available.
-