Class ControllerService


  • public class ControllerService
    extends Object
    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.
    • Constructor Detail

      • ControllerService

        public ControllerService()
    • Method Detail

      • main

        public static void main​(String[] args)
        Starts the ControllerService as a stand alone app. Useful for out of process testing - such as during integration testing.
      • start

        public Thread start​(ControllerServerConfig controllerConfig)
        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

        protected void initService()
                            throws IOException
        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()
      • runFromConfig

        public void runFromConfig​(QuorumPeerConfig config)
        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.