org.mule.routing.inbound
Class CorrelationEventResequencer
java.lang.Object
org.mule.routing.AbstractRouter
org.mule.routing.inbound.SelectiveConsumer
org.mule.routing.inbound.AbstractEventAggregator
org.mule.routing.inbound.CorrelationEventResequencer
- All Implemented Interfaces:
- MuleContextAware, Disposable, Initialisable, InboundRouter, Router
public class CorrelationEventResequencer
- extends AbstractEventAggregator
CorrelationEventResequencer
is used to resequence events according
to their dispatch sequence in the correlation group. When the MessageSplitter
router splits an event it assigns a correlation sequence to the individual message
parts so that another router such as the CorrelationEventResequencer can
receive the parts and reorder or merge them.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
eventComparator
protected Comparator eventComparator
CorrelationEventResequencer
public CorrelationEventResequencer()
initialise
public void initialise()
throws InitialisationException
- Description copied from interface:
Initialisable
- Method used to perform any initialisation work. If a fatal error occurs during
initialisation an
InitialisationException
should be thrown,
causing the Mule instance to shutdown. If the error is recoverable, say by
retrying to connect, a RecoverableException
should be thrown.
There is no guarantee that by throwing a Recoverable exception that the Mule
instance will not shut down.
- Specified by:
initialise
in interface Initialisable
- Overrides:
initialise
in class AbstractEventAggregator
- Throws:
InitialisationException
- if a fatal error occurs causing the Mule instance to shutdown
RecoverableException
- if an error occurs that can be recovered from
getEventComparator
public Comparator getEventComparator()
setEventComparator
public void setEventComparator(Comparator eventComparator)
getCorrelatorCallback
protected EventCorrelatorCallback getCorrelatorCallback()
- Specified by:
getCorrelatorCallback
in class AbstractEventAggregator
process
public MuleEvent[] process(MuleEvent event)
throws MessagingException
- Description copied from interface:
InboundRouter
- A received MuleEvent is passed to this method for processing. The router can
control processing by either 1. passing back a null to indicate that the
router has either discarded the event of the event has been stored for further
processing. A reaosn for storing the event might be that other events in it's
correlation group are expected to be received. 2. Pass back an array of one or
more events to be processed by the service. Often 1 event is returned, i.e.
in the case of event aggregation. The router may return an array of events if
a set of events have been resequenced or multiple events have been generated
from a single event.
- Specified by:
process
in interface InboundRouter
- Overrides:
process
in class AbstractEventAggregator
- Parameters:
event
- the event received by the inbound endpoint before it is passed to
the service
- Returns:
- null to indicate the event has been stored/destroyed or an array of
events to be processed by the service
- Throws:
MessagingException
- if an error occurs during processing of the event
Copyright © 2003-2009 MuleSource, Inc.. All Rights Reserved.