|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface Policy
A strategy capable of applying interceptors to a processor
Its strongly adviced to use anAsyncProcessor as the returned wrapped
Processor which ensures the policy works well with the asynchronous routing engine.
You can use the DelegateAsyncProcessor to easily return an
AsyncProcessor and override the
AsyncProcessor.process(org.apache.camel.Exchange, org.apache.camel.AsyncCallback) to
implement your interceptor logic. And just invoke the super method to continue routing.
Mind that not all frameworks supports asynchronous routing, for example some transaction managers, such as
Spring Transaction uses the current thread to store state of the transaction, and thus can't transfer this
state to other threads when routing continues asynchronously.
| Method Summary | |
|---|---|
void |
beforeWrap(RouteContext routeContext,
ProcessorDefinition<?> definition)
Hook invoked before the wrap. |
Processor |
wrap(RouteContext routeContext,
Processor processor)
Wraps any applicable interceptors around the given processor. |
| Method Detail |
|---|
void beforeWrap(RouteContext routeContext,
ProcessorDefinition<?> definition)
definiton
routeContext - the route contextdefinition - the processor definition
Processor wrap(RouteContext routeContext,
Processor processor)
routeContext - the route contextprocessor - the processor to be intercepted
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||