org.mule.exception
Class AbstractExceptionStrategy
java.lang.Object
org.mule.processor.AbstractMessageProcessorOwner
org.mule.exception.AbstractExceptionStrategy
- All Implemented Interfaces:
- AnnotatedObject, FlowConstructAware, MuleContextAware, Disposable, Initialisable, Lifecycle, Startable, Stoppable
- Direct Known Subclasses:
- AbstractMessagingExceptionStrategy, AbstractSystemExceptionStrategy
public abstract class AbstractExceptionStrategy
- extends AbstractMessageProcessorOwner
This is the base class for exception strategies which contains several helper methods. However, you should
probably inherit from AbstractMessagingExceptionStrategy
(if you are creating a Messaging Exception Strategy)
or AbstractSystemExceptionStrategy
(if you are creating a System Exception Strategy) rather than directly from this class.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
logger
protected transient Log logger
messageProcessors
protected List<MessageProcessor> messageProcessors
initialised
protected AtomicBoolean initialised
rollbackTxFilter
protected WildcardFilter rollbackTxFilter
commitTxFilter
protected WildcardFilter commitTxFilter
enableNotifications
protected boolean enableNotifications
AbstractExceptionStrategy
public AbstractExceptionStrategy(MuleContext muleContext)
isRollback
protected boolean isRollback(Throwable t)
getMessageProcessors
public List<MessageProcessor> getMessageProcessors()
setMessageProcessors
public void setMessageProcessors(List<MessageProcessor> processors)
addEndpoint
public void addEndpoint(MessageProcessor processor)
removeMessageProcessor
public boolean removeMessageProcessor(MessageProcessor processor)
getExceptionType
protected Throwable getExceptionType(Throwable t,
Class exceptionType)
initialise
public final void initialise()
throws InitialisationException
- The initialise method is call every time the Exception stategy is assigned to
a service or connector. This implementation ensures that initialise is called
only once. The actual initialisation code is contained in the
doInitialise()
method.
- Specified by:
initialise
in interface Initialisable
- Overrides:
initialise
in class AbstractMessageProcessorOwner
- Throws:
InitialisationException
RecoverableException
- if an error occurs that can be recovered from
doInitialise
protected void doInitialise(MuleContext muleContext)
throws InitialisationException
- Throws:
InitialisationException
fireNotification
protected void fireNotification(Exception ex)
routeException
protected void routeException(MuleEvent event,
Throwable t)
- Routes the current exception to an error endpoint such as a Dead Letter Queue
(jms) This method is only invoked if there is a MuleMessage available to
dispatch. The message dispatched from this method will be an
ExceptionMessage
which contains the exception thrown the
MuleMessage and any context information.
- Parameters:
message
- the MuleMessage being processed when the exception occurredtarget
- optional; the endpoint being dispatched or received on
when the error occurred. This is NOT the endpoint that the message
will be disptched on and is only supplied to this method for
logging purposest
- the exception thrown. This will be sent with the ExceptionMessage- See Also:
ExceptionMessage
commit
protected void commit()
rollback
protected void rollback(RollbackSourceCallback rollbackMethod)
closeStream
protected void closeStream(MuleMessage message)
logException
protected void logException(Throwable t)
- Used to log the error passed into this Exception Listener
- Parameters:
t
- the exception thrown
logFatal
protected void logFatal(MuleEvent event,
Throwable t)
- Logs a fatal error message to the logging system. This should be used mostly
if an error occurs in the exception listener itself. This implementation logs
the the message itself to the logs if it is not null
- Parameters:
message
- The MuleMessage currently being processedt
- the fatal exception to log
isInitialised
public boolean isInitialised()
fireNotification
protected void fireNotification(ServerNotification notification)
- Fires a server notification to all registered
ExceptionNotificationListener
eventManager.
- Parameters:
notification
- the notification to fire.
getCommitTxFilter
public WildcardFilter getCommitTxFilter()
setCommitTxFilter
public void setCommitTxFilter(WildcardFilter commitTxFilter)
isEnableNotifications
public boolean isEnableNotifications()
setEnableNotifications
public void setEnableNotifications(boolean enableNotifications)
getRollbackTxFilter
public WildcardFilter getRollbackTxFilter()
setRollbackTxFilter
public void setRollbackTxFilter(WildcardFilter rollbackTxFilter)
getOwnedMessageProcessors
protected List<MessageProcessor> getOwnedMessageProcessors()
- Specified by:
getOwnedMessageProcessors
in class AbstractMessageProcessorOwner
Copyright © 2003-2011 MuleSoft, Inc.. All Rights Reserved.