public class TryProcessor extends ServiceSupport implements AsyncProcessor, Navigate<Processor>, Traceable, IdAware
Modifier and Type | Field and Description |
---|---|
protected List<Processor> |
catchClauses |
protected Processor |
finallyProcessor |
protected String |
id |
protected Processor |
tryProcessor |
shutdown, shuttingdown, started, starting, stopped, stopping, suspended, suspending
Constructor and Description |
---|
TryProcessor(Processor tryProcessor,
List<Processor> catchClauses,
Processor finallyProcessor) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
continueRouting(Iterator<Processor> it,
Exchange exchange) |
protected void |
doStart()
Implementations override this method to support customized start/stop.
|
protected void |
doStop()
Implementations override this method to support customized start/stop.
|
String |
getId()
Returns the id
|
String |
getTraceLabel()
Gets the trace label used for logging when tracing is enabled.
|
boolean |
hasNext()
Are there more outputs?
Important only invoke this once, as this method do not carry state, and is not intended to be used in a while loop,
but used by a if statement instead.
|
List<Processor> |
next()
Next group of outputs
Important only invoke this once, as this method do not carry state, and is not intended to be used in a while loop,
but used by a if statement instead.
|
void |
process(Exchange exchange)
Processes the message exchange
|
boolean |
process(Exchange exchange,
AsyncCallback callback)
Processes the message exchange.
|
protected boolean |
process(Exchange exchange,
AsyncCallback callback,
Iterator<Processor> processors,
AsyncProcessor processor,
Object lastHandled) |
void |
setId(String id)
Sets the id
|
String |
toString() |
doResume, doShutdown, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
protected final Processor tryProcessor
protected final List<Processor> catchClauses
protected final Processor finallyProcessor
public TryProcessor(Processor tryProcessor, List<Processor> catchClauses, Processor finallyProcessor)
public String getTraceLabel()
Traceable
getTraceLabel
in interface Traceable
public void process(Exchange exchange) throws Exception
Processor
public boolean process(Exchange exchange, AsyncCallback callback)
AsyncProcessor
Processor.process(org.apache.camel.Exchange)
, but the caller supports having the exchange asynchronously processed.
If there was a failure processing then the caused Exception
would be set on the Exchange
.process
in interface AsyncProcessor
exchange
- the message exchangecallback
- the AsyncCallback
will be invoked when the processing of the exchange is completed.
If the exchange is completed synchronously, then the callback is also invoked synchronously.
The callback should therefore be careful of starting recursive loop.protected boolean process(Exchange exchange, AsyncCallback callback, Iterator<Processor> processors, AsyncProcessor processor, Object lastHandled)
protected boolean continueRouting(Iterator<Processor> it, Exchange exchange)
protected void doStart() throws Exception
ServiceSupport
ServiceSupport.doStop()
for more details.doStart
in class ServiceSupport
Exception
ServiceSupport.doStop()
protected void doStop() throws Exception
ServiceSupport
ServiceSupport.doStop()
method when
the service is being stopped. This method will also be invoked
if the service is still in uninitialized state (eg has not
been started). The method is always called to allow the service
to do custom logic when the service is being stopped, such as when
CamelContext
is shutting down.doStop
in class ServiceSupport
Exception
ServiceSupport.doStart()
public List<Processor> next()
Navigate
public boolean hasNext()
Navigate
Apache Camel