org.apache.camel.spring.spi
Class TransactionErrorHandler
java.lang.Object
  
org.apache.camel.impl.ServiceSupport
      
org.apache.camel.processor.ErrorHandlerSupport
          
org.apache.camel.processor.RedeliveryErrorHandler
              
org.apache.camel.spring.spi.TransactionErrorHandler
- All Implemented Interfaces: 
 - org.apache.camel.AsyncProcessor, org.apache.camel.Processor, org.apache.camel.processor.ErrorHandler, org.apache.camel.Service, org.apache.camel.ShutdownableService
 
public class TransactionErrorHandler
- extends org.apache.camel.processor.RedeliveryErrorHandler
 
The Transactional Client
 EIP pattern.
- Version:
 
  
 
| Nested classes/interfaces inherited from class org.apache.camel.processor.RedeliveryErrorHandler | 
org.apache.camel.processor.RedeliveryErrorHandler.RedeliveryData | 
 
 
| Fields inherited from class org.apache.camel.processor.RedeliveryErrorHandler | 
camelContext, deadLetter, deadLetterUri, executorServiceRef, logger, output, outputAsync, redeliveryEnabled, redeliveryPolicy, redeliveryProcessor, retryWhilePolicy, useOriginalMessagePolicy | 
 
| Fields inherited from class org.apache.camel.processor.ErrorHandlerSupport | 
exceptionPolicies, exceptionPolicy, log | 
 
| 
Constructor Summary | 
TransactionErrorHandler(org.apache.camel.CamelContext camelContext,
                        org.apache.camel.Processor output,
                        org.apache.camel.processor.CamelLogger logger,
                        org.apache.camel.Processor redeliveryProcessor,
                        org.apache.camel.processor.RedeliveryPolicy redeliveryPolicy,
                        org.apache.camel.processor.exceptionpolicy.ExceptionPolicyStrategy exceptionPolicyStrategy,
                        org.springframework.transaction.support.TransactionTemplate transactionTemplate,
                        org.apache.camel.Predicate retryWhile,
                        String executorServiceRef)
 
          Creates the transaction error handler. | 
 
 
| Methods inherited from class org.apache.camel.processor.RedeliveryErrorHandler | 
defensiveCopyExchangeIfNeeded, deliverToFailureProcessor, deliverToOnRedeliveryProcessor, doShutdown, doStart, doStop, getDeadLetter, getDeadLetterUri, getDefaultHandledPredicate, getLogger, getOutput, getRedeliveryPolicy, handleException, isCancelledOrInterrupted, isDone, isUseOriginalMessagePolicy, prepareExchangeAfterFailure, prepareExchangeForContinue, prepareExchangeForRedelivery, processAsyncErrorHandler, processErrorHandler, shouldHandleException | 
 
| Methods inherited from class org.apache.camel.processor.ErrorHandlerSupport | 
addExceptionPolicy, createDefaultExceptionPolicyStrategy, customProcessorForException, getExceptionPolicy, setExceptionPolicy | 
 
| Methods inherited from class org.apache.camel.impl.ServiceSupport | 
addChildService, doResume, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspended, isSuspending, removeChildService, resume, shutdown, start, start, stop, suspend | 
 
 
TransactionErrorHandler
public TransactionErrorHandler(org.apache.camel.CamelContext camelContext,
                               org.apache.camel.Processor output,
                               org.apache.camel.processor.CamelLogger logger,
                               org.apache.camel.Processor redeliveryProcessor,
                               org.apache.camel.processor.RedeliveryPolicy redeliveryPolicy,
                               org.apache.camel.processor.exceptionpolicy.ExceptionPolicyStrategy exceptionPolicyStrategy,
                               org.springframework.transaction.support.TransactionTemplate transactionTemplate,
                               org.apache.camel.Predicate retryWhile,
                               String executorServiceRef)
- Creates the transaction error handler.
- Parameters:
 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 whileexecutorServiceRef - reference to a ScheduledExecutorService to be used for redelivery thread pool. Can be null.
 
supportTransacted
public boolean supportTransacted()
- Overrides:
 supportTransacted in class org.apache.camel.processor.RedeliveryErrorHandler
 
 
toString
public String toString()
- Overrides:
 toString in class Object
 
 
process
public void process(org.apache.camel.Exchange exchange)
             throws Exception
- Specified by:
 process in interface org.apache.camel.Processor- Overrides:
 process in class org.apache.camel.processor.RedeliveryErrorHandler
 
- Throws:
 Exception
 
process
public boolean process(org.apache.camel.Exchange exchange,
                       org.apache.camel.AsyncCallback callback)
- Specified by:
 process in interface org.apache.camel.AsyncProcessor- Overrides:
 process in class org.apache.camel.processor.RedeliveryErrorHandler
 
 
processInTransaction
protected void processInTransaction(org.apache.camel.Exchange exchange)
                             throws Exception
- Throws:
 Exception
 
doInTransactionTemplate
protected void doInTransactionTemplate(org.apache.camel.Exchange exchange)
 
processByErrorHandler
protected void processByErrorHandler(org.apache.camel.Exchange exchange)
- Processes the 
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.
- Parameters:
 exchange - the exchange
 
 
Apache CAMEL