public class TransactionErrorHandler extends org.apache.camel.processor.RedeliveryErrorHandler
camelContext, deadLetter, deadLetterHandleNewException, deadLetterUri, exchangeFormatter, executorService, logger, onPrepare, output, outputAsync, preparingShutdown, redeliveryEnabled, redeliveryPolicy, redeliveryProcessor, redeliverySleepCounter, retryWhilePolicy, useOriginalMessagePolicy
Constructor and Description |
---|
TransactionErrorHandler(org.apache.camel.CamelContext camelContext,
org.apache.camel.Processor output,
org.apache.camel.util.CamelLogger logger,
org.apache.camel.Processor redeliveryProcessor,
org.apache.camel.processor.RedeliveryPolicy redeliveryPolicy,
org.apache.camel.processor.exceptionpolicy.ExceptionPolicyStrategy exceptionPolicyStrategy,
TransactionTemplate transactionTemplate,
org.apache.camel.Predicate retryWhile,
ScheduledExecutorService executorService,
org.apache.camel.LoggingLevel rollbackLoggingLevel)
Creates the transaction error handler.
|
Modifier and Type | Method and Description |
---|---|
protected void |
doInTransactionTemplate(org.apache.camel.Exchange exchange) |
void |
process(org.apache.camel.Exchange exchange) |
boolean |
process(org.apache.camel.Exchange exchange,
org.apache.camel.AsyncCallback callback) |
protected void |
processByErrorHandler(org.apache.camel.Exchange exchange)
Processes the
Exchange using the error handler. |
protected void |
processInTransaction(org.apache.camel.Exchange exchange) |
boolean |
supportTransacted() |
String |
toString() |
defensiveCopyExchangeIfNeeded, deliverToFailureProcessor, deliverToOnRedeliveryProcessor, determineRedeliveryDelay, doShutdown, doStart, doStop, getDeadLetter, getDeadLetterUri, getDefaultHandledPredicate, getLogger, getOutput, getPendingRedeliveryCount, getRedeliveryPolicy, handleException, hasNext, isCancelledOrInterrupted, isDeadLetterHandleNewException, isDone, isRedeliveryAllowed, isRunAllowed, isRunAllowedOnPreparingShutdown, isUseOriginalMessagePolicy, next, prepareExchangeAfterFailure, prepareExchangeForContinue, prepareExchangeForRedelivery, prepareShutdown, processAsyncErrorHandler, shouldHandleException
addExceptionPolicy, createDefaultExceptionPolicyStrategy, getExceptionPolicy, isDeadLetterChannel, setExceptionPolicy
addChildService, removeChildService, shutdown, start, start, stop
public TransactionErrorHandler(org.apache.camel.CamelContext camelContext, org.apache.camel.Processor output, org.apache.camel.util.CamelLogger logger, org.apache.camel.Processor redeliveryProcessor, org.apache.camel.processor.RedeliveryPolicy redeliveryPolicy, org.apache.camel.processor.exceptionpolicy.ExceptionPolicyStrategy exceptionPolicyStrategy, TransactionTemplate transactionTemplate, org.apache.camel.Predicate retryWhile, ScheduledExecutorService executorService, org.apache.camel.LoggingLevel rollbackLoggingLevel)
camelContext
- the camel contextoutput
- outer processor that should use this default error handlerlogger
- logger to use for logging failures and redelivery attemptsredeliveryProcessor
- an optional processor to run before redelivery attemptredeliveryPolicy
- policy for redeliveryexceptionPolicyStrategy
- strategy for onException handlingtransactionTemplate
- the transaction templateretryWhile
- retry whileexecutorService
- the ScheduledExecutorService
to be used for redelivery thread pool. Can be null.rollbackLoggingLevel
- logging level to use for logging transaction rollback occurredpublic boolean supportTransacted()
supportTransacted
in class org.apache.camel.processor.RedeliveryErrorHandler
public void process(org.apache.camel.Exchange exchange) throws Exception
process
in interface org.apache.camel.Processor
process
in class org.apache.camel.processor.RedeliveryErrorHandler
Exception
public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
process
in interface org.apache.camel.AsyncProcessor
process
in class org.apache.camel.processor.RedeliveryErrorHandler
protected void processInTransaction(org.apache.camel.Exchange exchange) throws Exception
Exception
protected void doInTransactionTemplate(org.apache.camel.Exchange exchange)
protected void processByErrorHandler(org.apache.camel.Exchange exchange)
Exchange
using the error handler.
This implementation will invoke ensure this occurs synchronously, that means if the async routing engine
did kick in, then this implementation will wait for the task to complete before it continues.exchange
- the exchangeApache Camel