|
Spring Integration | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.springframework.integration.context.IntegrationObjectSupport org.springframework.integration.handler.AbstractMessageHandler org.springframework.integration.handler.AbstractReplyProducingMessageHandler org.springframework.integration.jms.JmsOutboundGateway
public class JmsOutboundGateway
An outbound Messaging Gateway for request/reply JMS.
Field Summary |
---|
Fields inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler |
---|
DEFAULT_SEND_TIMEOUT |
Fields inherited from class org.springframework.integration.handler.AbstractMessageHandler |
---|
logger |
Fields inherited from interface org.springframework.core.Ordered |
---|
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE |
Constructor Summary | |
---|---|
JmsOutboundGateway()
|
Method Summary | |
---|---|
protected javax.jms.Connection |
createConnection()
Create a new JMS Connection for this JMS gateway, ideally a javax.jms.QueueConnection . |
protected javax.jms.Session |
createSession(javax.jms.Connection connection)
Create a new JMS Session for this JMS gateway, ideally a javax.jms.QueueSession . |
String |
getComponentType()
Subclasses may implement this method to provide component type information. |
protected Object |
handleRequestMessage(Message<?> message)
Subclasses must implement this method to handle the request Message. |
void |
onInit()
Subclasses may implement this for initialization logic. |
void |
setConnectionFactory(javax.jms.ConnectionFactory connectionFactory)
Set the JMS ConnectionFactory that this gateway should use. |
void |
setDeliveryMode(int deliveryMode)
Specify the JMS DeliveryMode to use when sending request Messages. |
void |
setDestinationResolver(DestinationResolver destinationResolver)
Provide the DestinationResolver to use when resolving either a
'requestDestinationName' or 'replyDestinationName' value. |
void |
setExplicitQosEnabled(boolean explicitQosEnabled)
Specify whether explicit QoS settings are enabled (deliveryMode, priority, and timeToLive). |
void |
setExtractReplyPayload(boolean extractReplyPayload)
This property will take effect if no custom MessageConverter
has been provided to the setMessageConverter(MessageConverter)
method. |
void |
setExtractRequestPayload(boolean extractRequestPayload)
This property will take effect if no custom MessageConverter
has been provided to the setMessageConverter(MessageConverter)
method. |
void |
setHeaderMapper(JmsHeaderMapper headerMapper)
Provide a JmsHeaderMapper implementation for mapping the
Spring Integration Message Headers to/from JMS Message properties. |
void |
setMessageConverter(MessageConverter messageConverter)
Provide a MessageConverter strategy to use for converting the
Spring Integration request Message into a JMS Message and for converting
the JMS reply Messages back into Spring Integration Messages. |
void |
setPriority(int priority)
Specify the JMS priority to use when sending request Messages. |
void |
setPubSubDomain(boolean pubSubDomain)
Specify whether the request destination is a Topic. |
void |
setReceiveTimeout(long receiveTimeout)
Set the max timeout value for the MessageConsumer's receive call when waiting for a reply. |
void |
setReplyChannel(MessageChannel replyChannel)
Specify the Spring Integration reply channel. |
void |
setReplyDestination(javax.jms.Destination replyDestination)
Set the JMS Destination from which reply Messages should be received. |
void |
setReplyDestinationName(String replyDestinationName)
Set the name of the JMS Destination from which reply Messages should be received. |
void |
setRequestDestination(javax.jms.Destination requestDestination)
Set the JMS Destination to which request Messages should be sent. |
void |
setRequestDestinationName(String requestDestinationName)
Set the name of the JMS Destination to which request Messages should be sent. |
void |
setTimeToLive(long timeToLive)
Specify the timeToLive for each sent Message. |
Methods inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler |
---|
getMessagingTemplate, handleMessageInternal, setChannelResolver, setOutputChannel, setRequiresReply, setSendTimeout, shouldCopyRequestHeaders |
Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler |
---|
getOrder, handleMessage, setOrder, setShouldTrack |
Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport |
---|
afterPropertiesSet, getBeanFactory, getComponentName, getConversionService, getRequiredMetadataPersister, getTaskScheduler, setBeanFactory, setBeanName, setComponentName, setConversionService, setTaskScheduler, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.springframework.integration.context.NamedComponent |
---|
getComponentName |
Constructor Detail |
---|
public JmsOutboundGateway()
Method Detail |
---|
public String getComponentType()
IntegrationObjectSupport
getComponentType
in interface NamedComponent
getComponentType
in class AbstractMessageHandler
public void setConnectionFactory(javax.jms.ConnectionFactory connectionFactory)
public void setRequestDestination(javax.jms.Destination requestDestination)
public void setRequestDestinationName(String requestDestinationName)
public void setReplyDestination(javax.jms.Destination replyDestination)
TemporaryQueue
per invocation.
public void setReplyDestinationName(String replyDestinationName)
TemporaryQueue
per invocation.
public void setDestinationResolver(DestinationResolver destinationResolver)
DestinationResolver
to use when resolving either a
'requestDestinationName' or 'replyDestinationName' value. The default
is an instance of DynamicDestinationResolver
.
public void setPubSubDomain(boolean pubSubDomain)
pubSubDomain
- true if the request destination is a Topicpublic void setReceiveTimeout(long receiveTimeout)
public void setDeliveryMode(int deliveryMode)
public void setPriority(int priority)
public void setTimeToLive(long timeToLive)
public void setExplicitQosEnabled(boolean explicitQosEnabled)
public void setMessageConverter(MessageConverter messageConverter)
MessageConverter
strategy to use for converting the
Spring Integration request Message into a JMS Message and for converting
the JMS reply Messages back into Spring Integration Messages.
The default is a DefaultMessageConverter
that delegates to
a SimpleMessageConverter
.
public void setHeaderMapper(JmsHeaderMapper headerMapper)
JmsHeaderMapper
implementation for mapping the
Spring Integration Message Headers to/from JMS Message properties.
This property will be ignored if a MessageConverter
is
provided to the setMessageConverter(MessageConverter)
method.
However, you may provide your own implementation of the delegating
DefaultMessageConverter
implementation.
public void setExtractRequestPayload(boolean extractRequestPayload)
MessageConverter
has been provided to the setMessageConverter(MessageConverter)
method. In that case, a DefaultMessageConverter
will be
used by default, and this value will be passed along to that converter's
'extractIntegrationMessagePayload' property.
DefaultMessageConverter#setExtractIntegrationMessagePayload(boolean)
public void setExtractReplyPayload(boolean extractReplyPayload)
MessageConverter
has been provided to the setMessageConverter(MessageConverter)
method. In that case, a DefaultMessageConverter
will be
used by default, and this value will be passed along to that converter's
'extractJmsMessageBody' property.
DefaultMessageConverter#setExtractJmsMessageBody(boolean)
public void setReplyChannel(MessageChannel replyChannel)
public final void onInit()
IntegrationObjectSupport
onInit
in class AbstractReplyProducingMessageHandler
protected Object handleRequestMessage(Message<?> message)
AbstractReplyProducingMessageHandler
handleRequestMessage
in class AbstractReplyProducingMessageHandler
protected javax.jms.Connection createConnection() throws javax.jms.JMSException
javax.jms.QueueConnection
.
The default implementation uses the
javax.jms.QueueConnectionFactory
API if available,
falling back to a standard JMS 1.1 ConnectionFactory otherwise.
This is necessary for working with generic JMS 1.1 connection pools
(such as ActiveMQ's org.apache.activemq.pool.PooledConnectionFactory
).
javax.jms.JMSException
protected javax.jms.Session createSession(javax.jms.Connection connection) throws javax.jms.JMSException
javax.jms.QueueSession
.
The default implementation uses the
javax.jms.QueueConnection
API if available,
falling back to a standard JMS 1.1 Connection otherwise.
This is necessary for working with generic JMS 1.1 connection pools
(such as ActiveMQ's org.apache.activemq.pool.PooledConnectionFactory
).
javax.jms.JMSException
|
Spring Integration | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |