Package org.apache.camel.main
Interface MainShutdownStrategy
-
- All Known Implementing Classes:
DefaultMainShutdownStrategy
,SimpleMainShutdownStrategy
public interface MainShutdownStrategy
Graceful shutdown when using Camel Main.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
MainShutdownStrategy.ShutdownEventListener
Event listener when shutting down.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addShutdownListener(MainShutdownStrategy.ShutdownEventListener listener)
Adds a shutdown listenervoid
await()
Waiting for Camel Main to complete.boolean
await(long timeout, TimeUnit unit)
Waiting for Camel Main to complete (with timeout).int
getExtraShutdownTimeout()
boolean
isRunAllowed()
Returns true if the application is allowed to run.void
restartAwait()
This is used for restarting await with timeout.void
setExtraShutdownTimeout(int extraShutdownTimeout)
Extra timeout in seconds to graceful shutdown Camel.boolean
shutdown()
Return true if the shutdown has been initiated by the caller.
-
-
-
Method Detail
-
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 waitunit
- the time unit of thetimeout
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).
-
-