Class ErrorHandlerSupport
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.support.ChildServiceSupport
-
- org.apache.camel.processor.errorhandler.ErrorHandlerSupport
-
- All Implemented Interfaces:
AutoCloseable
,org.apache.camel.Processor
,org.apache.camel.Service
,org.apache.camel.ShutdownableService
,org.apache.camel.spi.ErrorHandler
,org.apache.camel.StatefulService
,org.apache.camel.SuspendableService
- Direct Known Subclasses:
NoErrorHandler
,RedeliveryErrorHandler
public abstract class ErrorHandlerSupport extends org.apache.camel.support.ChildServiceSupport implements org.apache.camel.spi.ErrorHandler
Support class forErrorHandler
implementations.
-
-
Field Summary
Fields Modifier and Type Field Description protected static org.apache.camel.support.processor.DefaultExchangeFormatter
DEFAULT_EXCHANGE_FORMATTER
protected Map<ExceptionPolicyKey,ExceptionPolicy>
exceptionPolicies
protected ExceptionPolicyStrategy
exceptionPolicy
-
Constructor Summary
Constructors Constructor Description ErrorHandlerSupport()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
addErrorHandler(org.apache.camel.Processor errorHandler)
void
addExceptionPolicy(ExceptionPolicyKey key, ExceptionPolicy policy)
abstract org.apache.camel.spi.ErrorHandler
clone(org.apache.camel.Processor output)
Clones the current error handler and changes the outputprotected ExceptionPolicy
getExceptionPolicy(org.apache.camel.Exchange exchange, Throwable exception)
Attempts to find the best suitedExceptionPolicy
to be used for handling the given thrown exception.abstract org.apache.camel.Processor
getOutput()
Gets the outputboolean
isDeadLetterChannel()
Whether this error handler handles exhausted errors by moving the exchange to a dead letter channel.abstract boolean
supportTransacted()
Whether this error handler supports transacted exchanges or not.-
Methods inherited from class org.apache.camel.support.ChildServiceSupport
addChildService, removeChildService, shutdown, start, stop
-
Methods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doInit, doLifecycleChange, doResume, doShutdown, doStart, doStop, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, suspend
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Field Detail
-
DEFAULT_EXCHANGE_FORMATTER
protected static final org.apache.camel.support.processor.DefaultExchangeFormatter DEFAULT_EXCHANGE_FORMATTER
-
exceptionPolicy
protected ExceptionPolicyStrategy exceptionPolicy
-
exceptionPolicies
protected Map<ExceptionPolicyKey,ExceptionPolicy> exceptionPolicies
-
-
Method Detail
-
addErrorHandler
public void addErrorHandler(org.apache.camel.Processor errorHandler)
-
addExceptionPolicy
public void addExceptionPolicy(ExceptionPolicyKey key, ExceptionPolicy policy)
-
getExceptionPolicy
protected ExceptionPolicy getExceptionPolicy(org.apache.camel.Exchange exchange, Throwable exception)
Attempts to find the best suitedExceptionPolicy
to be used for handling the given thrown exception.- Parameters:
exchange
- the exchangeexception
- the exception that was thrown- Returns:
- the best exception type to handle this exception, null if none found.
-
supportTransacted
public abstract boolean supportTransacted()
Whether this error handler supports transacted exchanges or not.
-
isDeadLetterChannel
public boolean isDeadLetterChannel()
Whether this error handler handles exhausted errors by moving the exchange to a dead letter channel.
-
getOutput
public abstract org.apache.camel.Processor getOutput()
Gets the output
-
clone
public abstract org.apache.camel.spi.ErrorHandler clone(org.apache.camel.Processor output)
Clones the current error handler and changes the output
-
-