org.apache.camel.processor
Class ErrorHandlerSupport

java.lang.Object
  extended by org.apache.camel.impl.ServiceSupport
      extended by org.apache.camel.processor.ErrorHandlerSupport
All Implemented Interfaces:
Processor, ErrorHandler, Service, ShutdownableService
Direct Known Subclasses:
RedeliveryErrorHandler

public abstract class ErrorHandlerSupport
extends ServiceSupport
implements ErrorHandler

Support class for ErrorHandler implementations.

Version:

Field Summary
protected  Map<ExceptionPolicyKey,OnExceptionDefinition> exceptionPolicies
           
protected  ExceptionPolicyStrategy exceptionPolicy
           
protected  org.slf4j.Logger log
           
 
Constructor Summary
ErrorHandlerSupport()
           
 
Method Summary
 void addExceptionPolicy(OnExceptionDefinition exceptionType)
           
static ExceptionPolicyStrategy createDefaultExceptionPolicyStrategy()
          Creates the default exception policy strategy to use.
protected  boolean customProcessorForException(Exchange exchange, Throwable exception)
          Attempts to invoke the handler for this particular exception if one is available
protected  OnExceptionDefinition getExceptionPolicy(Exchange exchange, Throwable exception)
          Attempts to find the best suited OnExceptionDefinition to be used for handling the given thrown exception.
abstract  Processor getOutput()
          Gets the output
 void setExceptionPolicy(ExceptionPolicyStrategy exceptionPolicy)
          Sets the strategy to use for resolving the OnExceptionDefinition to use for handling thrown exceptions.
abstract  boolean supportTransacted()
          Whether this error handler supports transacted exchanges or not.
 
Methods inherited from class org.apache.camel.impl.ServiceSupport
addChildService, doResume, doShutdown, doStart, doStop, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspended, isSuspending, removeChildService, resume, shutdown, start, start, stop, suspend
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.camel.Processor
process
 

Field Detail

log

protected final transient org.slf4j.Logger log

exceptionPolicies

protected final Map<ExceptionPolicyKey,OnExceptionDefinition> exceptionPolicies

exceptionPolicy

protected ExceptionPolicyStrategy exceptionPolicy
Constructor Detail

ErrorHandlerSupport

public ErrorHandlerSupport()
Method Detail

addExceptionPolicy

public void addExceptionPolicy(OnExceptionDefinition exceptionType)

customProcessorForException

protected boolean customProcessorForException(Exchange exchange,
                                              Throwable exception)
                                       throws Exception
Attempts to invoke the handler for this particular exception if one is available

Throws:
Exception

getExceptionPolicy

protected OnExceptionDefinition getExceptionPolicy(Exchange exchange,
                                                   Throwable exception)
Attempts to find the best suited OnExceptionDefinition to be used for handling the given thrown exception.

Parameters:
exchange - the exchange
exception - the exception that was thrown
Returns:
the best exception type to handle this exception, null if none found.

setExceptionPolicy

public void setExceptionPolicy(ExceptionPolicyStrategy exceptionPolicy)
Sets the strategy to use for resolving the OnExceptionDefinition to use for handling thrown exceptions.


createDefaultExceptionPolicyStrategy

public static ExceptionPolicyStrategy createDefaultExceptionPolicyStrategy()
Creates the default exception policy strategy to use.


supportTransacted

public abstract boolean supportTransacted()
Whether this error handler supports transacted exchanges or not.


getOutput

public abstract Processor getOutput()
Gets the output



Apache CAMEL