Package org.apache.camel.processor
Class SharedCamelInternalProcessor
- java.lang.Object
-
- org.apache.camel.processor.SharedCamelInternalProcessor
-
public class SharedCamelInternalProcessor extends Object
A Shared (thread safe) internalProcessor
that Camel routing engine used during routing for cross cutting functionality such as:- Execute
UnitOfWork
- Keeping track which route currently is being routed
- Execute
RoutePolicy
- Gather JMX performance statics
- Tracing
- Debugging
- Message History
- Stream Caching
Transformer
CamelInternalProcessorAdvice
advice (before and after advice) by executing theCamelInternalProcessorAdvice.before(Exchange)
andCamelInternalProcessorAdvice.after(Exchange, Object)
callbacks in correct order during routing. This reduces number of stack frames needed during routing, and reduce the number of lines in stacktraces, as well makes debugging the routing engine easier for end users. Debugging tips: Camel end users whom want to debug their Camel applications with the Camel source code, then make sure to read the source code of this class about the debugging tips, which you can find in theprocess(Exchange, AsyncCallback, AsyncProcessor, Processor)
method. The added advices can implementOrdered
to control in which order the advices are executed. - Execute
-
-
Constructor Summary
Constructors Constructor Description SharedCamelInternalProcessor(org.apache.camel.CamelContext camelContext, org.apache.camel.spi.CamelInternalProcessorAdvice... advices)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
continueProcessing(org.apache.camel.Exchange exchange, org.apache.camel.AsyncProcessor processor)
Strategy to determine if we should continue processing theExchange
.boolean
process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback originalCallback, org.apache.camel.AsyncProcessor processor, org.apache.camel.Processor resultProcessor)
Asynchronous APIvoid
process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncProcessor processor, org.apache.camel.Processor resultProcessor)
Synchronous API
-
-
-
Method Detail
-
process
public void process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncProcessor processor, org.apache.camel.Processor resultProcessor)
Synchronous API
-
process
public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback originalCallback, org.apache.camel.AsyncProcessor processor, org.apache.camel.Processor resultProcessor)
Asynchronous API
-
continueProcessing
protected boolean continueProcessing(org.apache.camel.Exchange exchange, org.apache.camel.AsyncProcessor processor)
Strategy to determine if we should continue processing theExchange
.
-
-