Package org.apache.camel.impl.engine
Class DurationRoutePolicy
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.support.RoutePolicySupport
-
- org.apache.camel.impl.engine.DurationRoutePolicy
-
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.CamelContextAware,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.spi.RoutePolicy,org.apache.camel.StatefulService,org.apache.camel.SuspendableService
public class DurationRoutePolicy extends org.apache.camel.support.RoutePolicySupport implements org.apache.camel.CamelContextAwareRoutePolicywhich executes for a duration and then triggers an action. This can be used to stop the route after it has processed a number of messages, or has been running for N seconds.
-
-
Constructor Summary
Constructors Constructor Description DurationRoutePolicy()DurationRoutePolicy(org.apache.camel.CamelContext camelContext, String routeId)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddoStop()org.apache.camel.impl.engine.DurationRoutePolicy.ActiongetAction()org.apache.camel.CamelContextgetCamelContext()intgetMaxMessages()intgetMaxSeconds()voidonExchangeDone(org.apache.camel.Route route, org.apache.camel.Exchange exchange)voidonInit(org.apache.camel.Route route)protected ScheduledFutureperformMaxDurationAction()protected voidperformMaxMessagesAction()voidsetAction(org.apache.camel.impl.engine.DurationRoutePolicy.Action action)What action to perform when maximum is triggered.voidsetCamelContext(org.apache.camel.CamelContext camelContext)voidsetMaxMessages(int maxMessages)Maximum number of messages to process before the action is triggeredvoidsetMaxSeconds(int maxSeconds)Maximum seconds Camel is running before the action is triggered-
Methods inherited from class org.apache.camel.support.RoutePolicySupport
controller, doStart, getExceptionHandler, handleException, onExchangeBegin, onRemove, onResume, onStart, onStop, onSuspend, resumeOrStartConsumer, resumeRoute, setExceptionHandler, startConsumer, startRoute, stopConsumer, stopRoute, stopRoute, stopRouteAsync, suspendOrStopConsumer, suspendRoute, suspendRoute
-
Methods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doInit, doLifecycleChange, doResume, doShutdown, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Constructor Detail
-
DurationRoutePolicy
public DurationRoutePolicy()
-
DurationRoutePolicy
public DurationRoutePolicy(org.apache.camel.CamelContext camelContext, String routeId)
-
-
Method Detail
-
getCamelContext
public org.apache.camel.CamelContext getCamelContext()
- Specified by:
getCamelContextin interfaceorg.apache.camel.CamelContextAware
-
setCamelContext
public void setCamelContext(org.apache.camel.CamelContext camelContext)
- Specified by:
setCamelContextin interfaceorg.apache.camel.CamelContextAware
-
getMaxMessages
public int getMaxMessages()
-
setMaxMessages
public void setMaxMessages(int maxMessages)
Maximum number of messages to process before the action is triggered
-
getMaxSeconds
public int getMaxSeconds()
-
setMaxSeconds
public void setMaxSeconds(int maxSeconds)
Maximum seconds Camel is running before the action is triggered
-
getAction
public org.apache.camel.impl.engine.DurationRoutePolicy.Action getAction()
-
setAction
public void setAction(org.apache.camel.impl.engine.DurationRoutePolicy.Action action)
What action to perform when maximum is triggered.
-
onInit
public void onInit(org.apache.camel.Route route)
- Specified by:
onInitin interfaceorg.apache.camel.spi.RoutePolicy- Overrides:
onInitin classorg.apache.camel.support.RoutePolicySupport
-
onExchangeDone
public void onExchangeDone(org.apache.camel.Route route, org.apache.camel.Exchange exchange)- Specified by:
onExchangeDonein interfaceorg.apache.camel.spi.RoutePolicy- Overrides:
onExchangeDonein classorg.apache.camel.support.RoutePolicySupport
-
doStop
protected void doStop() throws Exception- Overrides:
doStopin classorg.apache.camel.support.RoutePolicySupport- Throws:
Exception
-
performMaxMessagesAction
protected void performMaxMessagesAction()
-
performMaxDurationAction
protected ScheduledFuture performMaxDurationAction()
-
-