Class ControllerService
java.lang.Object
org.apache.zookeeper.server.controller.ControllerService
Main class which starts a ZooKeeperServer, a ZooKeeperServerController and the ControllerService.
Tests should either invoke this class as the main target of a new JVM process OR explicitly
start and stop a singleton of this class in their test process.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
cleanup()
protected void
initConfig
(String[] args) Derived classes may override to do custom initialization of command line args.void
initializeAndRun
(String[] args) Runs the main loop for this application but does not exit the process.protected void
Initializes an instance of the ZooKeeperServer, the ZooKeeperServerController, and a new Http listener (CommandListener) for the controller.boolean
isReady()
Is the service up with all necessary initialization and port opening complete?static void
Starts the ControllerService as a stand alone app.protected void
run()
void
runFromConfig
(QuorumPeerConfig config) Run the app given a QuorumPeerConfig.protected void
void
shutdown()
start
(ControllerServerConfig controllerConfig) Starts a new thread to run the controller (useful when this service is hosted in process - such as during unit testing).
-
Field Details
-
config
-
quorumPeer
-
-
Constructor Details
-
ControllerService
public ControllerService()
-
-
Method Details
-
main
Starts the ControllerService as a stand alone app. Useful for out of process testing - such as during integration testing. -
start
Starts a new thread to run the controller (useful when this service is hosted in process - such as during unit testing). -
shutdown
public void shutdown() -
initService
Initializes an instance of the ZooKeeperServer, the ZooKeeperServerController, and a new Http listener (CommandListener) for the controller.- Throws:
IOException
-
runServices
protected void runServices() -
cleanup
protected void cleanup() -
initializeAndRun
Runs the main loop for this application but does not exit the process.- Throws:
QuorumPeerConfig.ConfigException
-
initConfig
Derived classes may override to do custom initialization of command line args.- Throws:
QuorumPeerConfig.ConfigException
-
runFromConfig
Run the app given a QuorumPeerConfig.- Parameters:
config
- The quorum peer config.
-
run
protected void run() -
isReady
public boolean isReady()Is the service up with all necessary initialization and port opening complete?- Returns:
- true if the controller service is ready to use; false otherwise.
-