ControllerService (Apache ZooKeeper - Server 3.7.0 API)
Date: 2021-03-17

org.apache.zookeeper.server.controller

## Class ControllerService

- java.lang.Object
- - org.apache.zookeeper.server.controller.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.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected QuorumPeerConfig` | `config`
    `protected QuorumPeer` | `quorumPeer`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ControllerService()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected 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` | `initService()` 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` | `main(String[] args)` Starts the ControllerService as a stand alone app.
    `protected void` | `run()`
    `void` | `runFromConfig(QuorumPeerConfig config)` Run the app given a QuorumPeerConfig.
    `protected void` | `runServices()`
    `void` | `shutdown()`
    `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).

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### config

          protected QuorumPeerConfig config

    - #### quorumPeer

          protected QuorumPeer quorumPeer

  - ### 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()

    - #### initializeAndRun

          public void initializeAndRun(String[] args)
                                throws QuorumPeerConfig.ConfigException

      Runs the main loop for this application but does not exit the process.
      Throws:
        `QuorumPeerConfig.ConfigException`

    - #### initConfig

          protected void initConfig(String[] args)
                             throws QuorumPeerConfig.ConfigException

      Derived classes may override to do custom initialization of command line args.
      Throws:
        `QuorumPeerConfig.ConfigException`

    - #### 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.

Copyright © 2008–2021 The Apache Software Foundation. All rights reserved.