Interface MainShutdownStrategy

All Known Implementing Classes:
DefaultMainShutdownStrategy, SimpleMainShutdownStrategy

public interface MainShutdownStrategy
Graceful shutdown when using Camel Main.
  • Method Details

    • addShutdownListener

      void addShutdownListener(MainShutdownStrategy.ShutdownEventListener listener)
      Adds a shutdown listener
      Parameters:
      listener - the listener
    • isRunAllowed

      boolean isRunAllowed()
      Returns true if the application is allowed to run.
      Returns:
      true if the application is allowed to run.
    • shutdown

      boolean shutdown()
      Return true if the shutdown has been initiated by the caller.
      Returns:
      true if the shutdown has been initiated by the caller.
    • await

      void await() throws InterruptedException
      Waiting for Camel Main to complete.
      Throws:
      InterruptedException
    • await

      boolean await(long timeout, TimeUnit unit) throws InterruptedException
      Waiting for Camel Main to complete (with timeout).
      Parameters:
      timeout - the maximum time to wait
      unit - the time unit of the timeout argument
      Returns:
      true if Camel Main was completed before the timeout, false if timeout was triggered.
      Throws:
      InterruptedException
    • restartAwait

      void restartAwait()
      This is used for restarting await with timeout.
    • getExtraShutdownTimeout

      int getExtraShutdownTimeout()
    • setExtraShutdownTimeout

      void setExtraShutdownTimeout(int extraShutdownTimeout)
      Extra timeout in seconds to graceful shutdown Camel. When Camel is shutting down then Camel first shutdown all the routes (shutdownTimeout). Then additional services is shutdown (extraShutdownTimeout).