Interface LifeCycle

All Known Subinterfaces:
TowServer
All Known Implementing Classes:
AbstractLifeCycle, AbstractTowServer, DefaultTowServer, HouseKeeper, StopLifeCycle

public interface LifeCycle
The lifecycle interface for generic components.

Classes implementing this interface have a defined life cycle defined by the methods of this interface.

  • Field Details

  • Method Details

    • start

      void start() throws Exception
      Starts the component.
      Throws:
      Exception - If the component fails to start
      See Also:
    • stop

      void stop() throws Exception
      Stops the component. The component may wait for current activities to complete normally, but it can be interrupted.
      Throws:
      Exception - If the component fails to stop
      See Also:
    • isRunning

      boolean isRunning()
      Returns:
      true if the component is starting or has been started
    • isStarted

      boolean isStarted()
      Returns:
      true if the component has been started.
      See Also:
    • isStarting

      boolean isStarting()
      Returns:
      true if the component is starting
      See Also:
    • isStopping

      boolean isStopping()
      Returns:
      true if the component is stopping
      See Also:
    • isStopped

      boolean isStopped()
      Returns:
      true if the component has been stopped
      See Also:
    • isFailed

      boolean isFailed()
      Returns:
      true if the component has failed to start or has failed to stop
    • addLifeCycleListener

      void addLifeCycleListener(LifeCycle.Listener listener)
    • removeLifeCycleListener

      void removeLifeCycleListener(LifeCycle.Listener listener)
    • getState

      String getState()
    • start

      static void start(Object object)
      Utility to start an object if it is a LifeCycle and to convert any exception thrown to a RuntimeException.
      Parameters:
      object - the instance to start.
      Throws:
      RuntimeException - if the call to start throws an exception
    • stop

      static void stop(Object object)
      Utility to stop an object if it is a LifeCycle and to convert any exception thrown to a RuntimeException.
      Parameters:
      object - the instance to stop.
      Throws:
      RuntimeException - if the call to stop throws an exception