org.apache.camel.spi
Interface RoutePolicy

All Known Implementing Classes:
RoutePolicySupport, ThrottlingInflightRoutePolicy

public interface RoutePolicy

Policy for a Route which allows controlling the route at runtime.

For example using the ThrottlingInflightRoutePolicy to throttle the Route at runtime where it suspends and resume the Route.getConsumer().

See also Route class javadoc about controlling the lifecycle of a Route

Version:
See Also:
Route

Method Summary
 void onExchangeBegin(Route route, Exchange exchange)
          Callback invoked when an Exchange is started being routed on the given Route
 void onExchangeDone(Route route, Exchange exchange)
          Callback invoked when an Exchange is done being routed, where it started from the given Route

Notice this callback is invoked when the Exchange is done and the Route is the route where the Exchange was started.

 void onInit(Route route)
          Callback invoked when the Route is being initialized
 void onRemove(Route route)
          Callback invoked when the Route is being removed from CamelContext
 void onResume(Route route)
          Callback invoked when the Route is being resumed
 void onStart(Route route)
          Callback invoked when the Route is being started
 void onStop(Route route)
          Callback invoked when the Route is being stopped
 void onSuspend(Route route)
          Callback invoked when the Route is being suspended
 

Method Detail

onInit

void onInit(Route route)
Callback invoked when the Route is being initialized

Parameters:
route - the route being initialized

onRemove

void onRemove(Route route)
Callback invoked when the Route is being removed from CamelContext

Parameters:
route - the route being removed

onStart

void onStart(Route route)
Callback invoked when the Route is being started

Parameters:
route - the route being started

onStop

void onStop(Route route)
Callback invoked when the Route is being stopped

Parameters:
route - the route being stopped

onSuspend

void onSuspend(Route route)
Callback invoked when the Route is being suspended

Parameters:
route - the route being suspended

onResume

void onResume(Route route)
Callback invoked when the Route is being resumed

Parameters:
route - the route being resumed

onExchangeBegin

void onExchangeBegin(Route route,
                     Exchange exchange)
Callback invoked when an Exchange is started being routed on the given Route

Parameters:
route - the route where the exchange started from
exchange - the created exchange

onExchangeDone

void onExchangeDone(Route route,
                    Exchange exchange)
Callback invoked when an Exchange is done being routed, where it started from the given Route

Notice this callback is invoked when the Exchange is done and the Route is the route where the Exchange was started. Most often its also the route where the exchange is done. However its possible to route an Exchange to other routes using endpoints such as direct or seda. Bottom line is that the Route parameter may not be the endpoint route and thus why we state its the starting route.

Parameters:
route - the route where the exchange started from
exchange - the created exchange


Apache CAMEL