|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.mule.construct.AbstractFlowConstruct
public abstract class AbstractFlowConstruct
Abstract implementation of FlowConstruct
that:
MuleContext
. MessageSource
as the
source of messages. MessageProcessor
s to process
messages. MessageSource
and MessageProcessor
s in the correct order depending
on the lifecycle phase. ExceptionListener
to be set. AbstractFlowConstuct
should implement
and
validateConstruct()
to construct the processing chain required and
validate the resulting construct. Validation may include validation of the type of
attributes of the MessageSource
.
Implementations may also implement doInitialise()
, doStart()
,
doStop()
and doDispose()
if they need to perform any action on
lifecycle transitions.
Field Summary | |
---|---|
protected MessagingExceptionHandler |
exceptionListener
|
protected FlowConstructLifecycleManager |
lifecycleManager
|
protected Log |
logger
|
protected MessageInfoMapping |
messageInfoMapping
|
protected MessageProcessor |
messageProcessorChain
|
protected MessageSource |
messageSource
|
protected MuleContext |
muleContext
|
protected java.lang.String |
name
|
protected FlowConstructStatistics |
statistics
|
Fields inherited from interface org.mule.api.lifecycle.Initialisable |
---|
PHASE_NAME |
Fields inherited from interface org.mule.api.lifecycle.Startable |
---|
PHASE_NAME |
Fields inherited from interface org.mule.api.lifecycle.Stoppable |
---|
PHASE_NAME |
Fields inherited from interface org.mule.api.lifecycle.Disposable |
---|
PHASE_NAME |
Constructor Summary | |
---|---|
AbstractFlowConstruct(java.lang.String name,
MuleContext muleContext)
|
Method Summary | |
---|---|
protected abstract void |
configureMessageProcessors(InterceptingChainMessageProcessorBuilder builder)
Used to configure the processing chain for this FlowConstuct MessageProcessor s to the chain using the builder provided. |
protected void |
createMessageProcessor()
Creates a MessageProcessor that will process messages from the
configured MessageSource . |
void |
dispose()
A lifecycle method where implementor should free up any resources. |
protected void |
doDispose()
|
protected void |
doInitialise()
|
protected void |
doStart()
|
protected void |
doStop()
|
MessagingExceptionHandler |
getExceptionListener()
|
LifecycleState |
getLifecycleState()
|
MessageInfoMapping |
getMessageInfoMapping()
|
MessageSource |
getMessageSource()
|
MuleContext |
getMuleContext()
|
java.lang.String |
getName()
|
FlowConstructStatistics |
getStatistics()
|
void |
initialise()
Method used to perform any initialisation work. |
boolean |
isStarted()
|
boolean |
isStopped()
|
boolean |
isStopping()
|
MuleEvent |
process(MuleEvent event)
Invokes the MessageProcessor. |
void |
setExceptionListener(MessagingExceptionHandler exceptionListener)
|
void |
setMessageInfoMapping(MessageInfoMapping messageInfoMapping)
|
void |
setMessageSource(MessageSource messageSource)
|
void |
start()
|
void |
stop()
|
java.lang.String |
toString()
|
protected void |
validateConstruct()
Validates configured flow construct |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected transient Log logger
protected java.lang.String name
protected MessageSource messageSource
protected MessageProcessor messageProcessorChain
protected MessagingExceptionHandler exceptionListener
protected final FlowConstructLifecycleManager lifecycleManager
protected final MuleContext muleContext
protected final FlowConstructStatistics statistics
protected MessageInfoMapping messageInfoMapping
Constructor Detail |
---|
public AbstractFlowConstruct(java.lang.String name, MuleContext muleContext)
Method Detail |
---|
public final void initialise() throws InitialisationException
Initialisable
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.
initialise
in interface Initialisable
InitialisationException
- if a fatal error occurs causing the Mule instance to shutdown
RecoverableException
- if an error occurs that can be recovered frompublic final void start() throws MuleException
MuleException
public final void stop() throws MuleException
MuleException
public final void dispose()
Disposable
dispose
in interface Disposable
public boolean isStarted()
public boolean isStopped()
public boolean isStopping()
protected void createMessageProcessor() throws MuleException
MessageProcessor
that will process messages from the
configured MessageSource
.
The default implementation of this methods uses a
InterceptingChainMessageProcessorBuilder
and allows a chain of
MessageProcessor
s to be configured using the
configureMessageProcessors(InterceptingChainMessageProcessorBuilder)
method but if you wish to use another MessageProcessorBuilder
or just
a single MessageProcessor
then this method can be overridden and
return a single MessageProcessor
instead.
MuleException
protected abstract void configureMessageProcessors(InterceptingChainMessageProcessorBuilder builder) throws MuleException
FlowConstuct
MessageProcessor
s to the chain using the builder provided.
To use a different builder of to construct a composite
MessageProcessor
manually override createMessageProcessor()
instead.
builder
- instance of InterceptingChainMessageProcessorBuilder
MuleException
public java.lang.String getName()
getName
in interface FlowConstruct
public MessagingExceptionHandler getExceptionListener()
getExceptionListener
in interface FlowConstruct
public void setExceptionListener(MessagingExceptionHandler exceptionListener)
public LifecycleState getLifecycleState()
getLifecycleState
in interface LifecycleStateEnabled
public MuleContext getMuleContext()
getMuleContext
in interface FlowConstruct
public MessageSource getMessageSource()
public void setMessageSource(MessageSource messageSource)
public FlowConstructStatistics getStatistics()
getStatistics
in interface FlowConstruct
public MessageInfoMapping getMessageInfoMapping()
getMessageInfoMapping
in interface FlowConstruct
MessageInfoMapping
used to control how
Important message information is pulled from the current message.public void setMessageInfoMapping(MessageInfoMapping messageInfoMapping)
protected void doInitialise() throws InitialisationException
InitialisationException
protected void doStart() throws MuleException
MuleException
protected void doStop() throws MuleException
MuleException
protected void doDispose()
protected void validateConstruct() throws FlowConstructInvalidException
FlowConstructInvalidException
- if the flow construct does not pass
validationpublic java.lang.String toString()
toString
in class java.lang.Object
public MuleEvent process(MuleEvent event) throws MuleException
MessageProcessor
process
in interface MessageProcessor
event
- MuleEvent to be processed
MuleException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |