public class WireTapProcessor extends ServiceSupport implements AsyncProcessor, Traceable, ShutdownAware, IdAware, CamelContextAware
shutdown, shuttingdown, started, starting, stopped, stopping, suspended, suspending| Constructor and Description |
|---|
WireTapProcessor(SendDynamicProcessor dynamicProcessor,
Processor processor,
ExchangePattern exchangePattern,
ExecutorService executorService,
boolean shutdownExecutorService) |
| Modifier and Type | Method and Description |
|---|---|
void |
addNewExchangeProcessor(Processor processor) |
protected Exchange |
configureExchange(Exchange exchange,
ExchangePattern pattern) |
boolean |
deferShutdown(ShutdownRunningTask shutdownRunningTask)
To defer shutdown during first phase of shutdown.
|
protected void |
doShutdown()
Implementations override this method to perform customized shutdown.
|
protected void |
doStart()
Implementations override this method to support customized start/stop.
|
protected void |
doStop()
Implementations override this method to support customized start/stop.
|
int |
getCacheSize() |
CamelContext |
getCamelContext()
Get the
CamelContext |
EndpointUtilizationStatistics |
getEndpointUtilizationStatistics() |
String |
getId()
Returns the id
|
Expression |
getNewExchangeExpression() |
List<Processor> |
getNewExchangeProcessors() |
Processor |
getOnPrepare() |
int |
getPendingExchangesSize()
Gets the number of pending exchanges.
|
String |
getTraceLabel()
Gets the trace label used for logging when tracing is enabled.
|
String |
getUri() |
boolean |
isCopy() |
boolean |
isIgnoreInvalidEndpoint() |
void |
prepareShutdown(boolean suspendOnly,
boolean forced)
Prepares for stop/shutdown.
|
void |
process(Exchange exchange)
Processes the message exchange
|
boolean |
process(Exchange exchange,
AsyncCallback callback)
Processes the message exchange.
|
void |
setCamelContext(CamelContext camelContext)
Injects the
CamelContext |
void |
setCopy(boolean copy) |
void |
setId(String id)
Sets the id
|
void |
setNewExchangeExpression(Expression newExchangeExpression) |
void |
setNewExchangeProcessors(List<Processor> newExchangeProcessors) |
void |
setOnPrepare(Processor onPrepare) |
String |
toString() |
doResume, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspendpublic WireTapProcessor(SendDynamicProcessor dynamicProcessor, Processor processor, ExchangePattern exchangePattern, ExecutorService executorService, boolean shutdownExecutorService)
public String getTraceLabel()
TraceablegetTraceLabel in interface Traceablepublic CamelContext getCamelContext()
CamelContextAwareCamelContextgetCamelContext in interface CamelContextAwarepublic void setCamelContext(CamelContext camelContext)
CamelContextAwareCamelContextsetCamelContext in interface CamelContextAwarecamelContext - the Camel contextpublic boolean deferShutdown(ShutdownRunningTask shutdownRunningTask)
ShutdownAwareSedaConsumer.deferShutdown in interface ShutdownAwareshutdownRunningTask - the configured option for how to act when shutting down running tasks.public int getPendingExchangesSize()
ShutdownAwareExchange which are pending.
For example the SedaConsumer.
Return zero to indicate no pending exchanges and therefore ready to shutdown.getPendingExchangesSize in interface ShutdownAwarepublic void prepareShutdown(boolean suspendOnly, boolean forced)
ShutdownPreparedShutdownStrategy supports preparing for shutdown using two steps.
First a regular preparation, where the given forced parameter will be false.
And if the shutdown times out, then the ShutdownStrategy performs a more aggressive
shutdown, calling this method a second time with true for the given forced parameter.
For example by graceful stopping any threads or the likes.
In addition a service can also be suspended (not stopped), and when this happens the parameter
suspendOnly has the value true. This can be used to prepare the service
for suspension, such as marking a worker thread to skip action.
For forced shutdown, then the service is expected to aggressively shutdown any child services, such
as thread pools etc. This is the last chance it has to perform such duties.prepareShutdown in interface ShutdownPreparedsuspendOnly - true if the intention is to only suspend the service, and not stop/shutdown the service.forced - true is forcing a more aggressive shutdown, false is for preparing to shutdown.public EndpointUtilizationStatistics getEndpointUtilizationStatistics()
public void process(Exchange exchange) throws Exception
Processorpublic boolean process(Exchange exchange, AsyncCallback callback)
AsyncProcessorProcessor.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 AsyncProcessorexchange - 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 Exchange configureExchange(Exchange exchange, ExchangePattern pattern) throws IOException
IOExceptionpublic List<Processor> getNewExchangeProcessors()
public void setNewExchangeProcessors(List<Processor> newExchangeProcessors)
public Expression getNewExchangeExpression()
public void setNewExchangeExpression(Expression newExchangeExpression)
public void addNewExchangeProcessor(Processor processor)
public boolean isCopy()
public void setCopy(boolean copy)
public Processor getOnPrepare()
public void setOnPrepare(Processor onPrepare)
public int getCacheSize()
public boolean isIgnoreInvalidEndpoint()
protected void doStart() throws Exception
ServiceSupportServiceSupport.doStop() for more details.doStart in class ServiceSupportExceptionServiceSupport.doStop()protected void doStop() throws Exception
ServiceSupportServiceSupport.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 ServiceSupportExceptionServiceSupport.doStart()protected void doShutdown() throws Exception
ServiceSupportdoShutdown in class ServiceSupportExceptionApache Camel