org.mule.transport.jms
Class JmsMessageDispatcher
java.lang.Object
org.mule.transport.AbstractConnectable
org.mule.transport.AbstractMessageDispatcher
org.mule.transport.jms.JmsMessageDispatcher
- All Implemented Interfaces:
- Disposable, Initialisable, Lifecycle, LifecycleStateEnabled, Startable, Stoppable, MessageProcessor, Connectable, MessageDispatcher
public class JmsMessageDispatcher
- extends AbstractMessageDispatcher
JmsMessageDispatcher
is responsible for dispatching messages to JMS
destinations. All JMS semantics apply and settings such as replyTo and QoS
properties are read from the event properties or defaults are used (according to
the JMS specification)
Method Summary |
protected void |
applyOutboundTransformers(MuleEvent event)
|
protected MuleMessage |
createMessageWithJmsMessagePayload(javax.jms.Message jmsMessage)
|
protected javax.jms.MessageConsumer |
createReplyToConsumer(javax.jms.Message currentMessage,
MuleEvent event,
javax.jms.Session session,
javax.jms.Destination replyTo,
boolean topic)
|
protected void |
doConnect()
|
protected void |
doDisconnect()
|
protected void |
doDispatch(MuleEvent event)
|
protected void |
doDispose()
|
protected MuleMessage |
doSend(MuleEvent event)
|
protected javax.jms.Destination |
getReplyToDestination(javax.jms.Message message,
javax.jms.Session session,
MuleEvent event,
boolean remoteSync,
boolean topic)
|
protected void |
handleMultiTx(javax.jms.Session session)
|
protected boolean |
isDisableTemporaryDestinations()
|
protected boolean |
isHandleReplyTo(javax.jms.Message msg,
MuleEvent event)
Some JMS implementations do not support ReplyTo or require some further fiddling of the message |
protected void |
preTransformMessage(MuleMessage message)
This method is called before the current message is transformed. |
protected void |
processMessage(javax.jms.Message msg,
MuleEvent event)
This method is called once the JMS message is created. |
Methods inherited from class org.mule.transport.AbstractConnectable |
activate, callDoStartWhenItIsConnected, connect, connectAndThenStart, createMuleMessage, createMuleMessage, createMuleMessage, createMuleMessageFactory, createNullMuleMessage, disconnect, dispose, disposeAndLogException, doInitialise, doStart, doStop, getConnectEventId, getConnectionDescription, getConnector, getLifecycleState, initialise, initializeMessageFactory, initializeRetryPolicy, isConnected, isConnecting, isDoStartMustFollowDoConnect, isDoThreading, isStarted, passivate, setEndpoint, start, stop, toString, validate, validateConnection |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.mule.api.lifecycle.Startable |
start |
Methods inherited from interface org.mule.api.lifecycle.Stoppable |
stop |
JmsMessageDispatcher
public JmsMessageDispatcher(OutboundEndpoint endpoint)
doDispatch
protected void doDispatch(MuleEvent event)
throws java.lang.Exception
- Specified by:
doDispatch
in class AbstractMessageDispatcher
- Throws:
java.lang.Exception
doConnect
protected void doConnect()
throws java.lang.Exception
- Overrides:
doConnect
in class AbstractConnectable
- Throws:
java.lang.Exception
doDisconnect
protected void doDisconnect()
throws java.lang.Exception
- Overrides:
doDisconnect
in class AbstractConnectable
- Throws:
java.lang.Exception
isDisableTemporaryDestinations
protected boolean isDisableTemporaryDestinations()
createMessageWithJmsMessagePayload
protected MuleMessage createMessageWithJmsMessagePayload(javax.jms.Message jmsMessage)
throws java.lang.Exception
- Throws:
java.lang.Exception
preTransformMessage
protected void preTransformMessage(MuleMessage message)
throws java.lang.Exception
- This method is called before the current message is transformed. It can be used to do any message body or
header processing before the transformer is called.
- Parameters:
message
- the current MuleMessage Being processed
- Throws:
java.lang.Exception
handleMultiTx
protected void handleMultiTx(javax.jms.Session session)
throws java.lang.Exception
- Throws:
java.lang.Exception
doSend
protected MuleMessage doSend(MuleEvent event)
throws java.lang.Exception
- Specified by:
doSend
in class AbstractMessageDispatcher
- Throws:
java.lang.Exception
doDispose
protected void doDispose()
- Overrides:
doDispose
in class AbstractConnectable
processMessage
protected void processMessage(javax.jms.Message msg,
MuleEvent event)
throws javax.jms.JMSException
- This method is called once the JMS message is created. It allows subclasses to alter the
message if necessary.
- Parameters:
msg
- The JMS message that will be sentevent
- the current event
- Throws:
javax.jms.JMSException
- if the JmsMessage cannot be written to, this should not happen because
the JMSMessage passed in will always be newly created
isHandleReplyTo
protected boolean isHandleReplyTo(javax.jms.Message msg,
MuleEvent event)
throws javax.jms.JMSException
- Some JMS implementations do not support ReplyTo or require some further fiddling of the message
- Parameters:
msg
- The JMS message that will be sentevent
- the current event
- Returns:
- true if this request should honour any JMSReplyTo settings on the message
- Throws:
javax.jms.JMSException
- if the JmsMessage cannot be written to, this should not happen because the JMSMessage passed
in will always be newly created
createReplyToConsumer
protected javax.jms.MessageConsumer createReplyToConsumer(javax.jms.Message currentMessage,
MuleEvent event,
javax.jms.Session session,
javax.jms.Destination replyTo,
boolean topic)
throws javax.jms.JMSException
- Throws:
javax.jms.JMSException
getReplyToDestination
protected javax.jms.Destination getReplyToDestination(javax.jms.Message message,
javax.jms.Session session,
MuleEvent event,
boolean remoteSync,
boolean topic)
throws javax.jms.JMSException,
EndpointException,
InitialisationException
- Throws:
javax.jms.JMSException
EndpointException
InitialisationException
applyOutboundTransformers
protected void applyOutboundTransformers(MuleEvent event)
throws MuleException
- Overrides:
applyOutboundTransformers
in class AbstractMessageDispatcher
- Throws:
MuleException
Copyright © 2003-2010 MuleSoft, Inc.. All Rights Reserved.