public abstract class AbstractMessagingTemplate<D> extends AbstractMessageReceivingTemplate<D> implements MessageRequestReplyOperations<D>
AbstractMessageReceivingTemplate
that adds support for
request-reply style operations as defined by MessageRequestReplyOperations
.CONVERSION_HINT_HEADER, logger
Constructor and Description |
---|
AbstractMessagingTemplate() |
Modifier and Type | Method and Description |
---|---|
<T> T |
convertSendAndReceive(D destination,
java.lang.Object request,
java.lang.Class<T> targetClass)
Convert the given request Object to serialized form, possibly using a
MessageConverter , send
it as a Message to the given destination, receive the reply and convert
its body of the specified target class. |
<T> T |
convertSendAndReceive(D destination,
java.lang.Object request,
java.lang.Class<T> targetClass,
MessagePostProcessor postProcessor)
Convert the given request Object to serialized form, possibly using a
MessageConverter ,
apply the given post processor and send the resulting Message to the
given destination, receive the reply and convert its body of the given
target class. |
<T> T |
convertSendAndReceive(D destination,
java.lang.Object request,
java.util.Map<java.lang.String,java.lang.Object> headers,
java.lang.Class<T> targetClass)
Convert the given request Object to serialized form, possibly using a
MessageConverter , send
it as a Message with the given headers, to the specified destination,
receive the reply and convert its body of the specified target class. |
<T> T |
convertSendAndReceive(D destination,
java.lang.Object request,
java.util.Map<java.lang.String,java.lang.Object> headers,
java.lang.Class<T> targetClass,
MessagePostProcessor postProcessor)
Convert the given request Object to serialized form, possibly using a
MessageConverter ,
wrap it as a message with the given headers, apply the given post processor
and send the resulting Message to the specified destination, receive
the reply and convert its body of the given target class. |
<T> T |
convertSendAndReceive(java.lang.Object request,
java.lang.Class<T> targetClass)
Convert the given request Object to serialized form, possibly using a
MessageConverter , send
it as a Message to a default destination, receive the reply and convert
its body of the specified target class. |
<T> T |
convertSendAndReceive(java.lang.Object request,
java.lang.Class<T> targetClass,
MessagePostProcessor postProcessor)
Convert the given request Object to serialized form, possibly using a
MessageConverter ,
apply the given post processor and send the resulting Message to a
default destination, receive the reply and convert its body of the given
target class. |
protected abstract Message<?> |
doSendAndReceive(D destination,
Message<?> requestMessage) |
Message<?> |
sendAndReceive(D destination,
Message<?> requestMessage)
Send a request message and receive the reply from the given destination.
|
Message<?> |
sendAndReceive(Message<?> requestMessage)
Send a request message and receive the reply from a default destination.
|
doConvert, doReceive, receive, receive, receiveAndConvert, receiveAndConvert
convertAndSend, convertAndSend, convertAndSend, convertAndSend, convertAndSend, convertAndSend, doConvert, doSend, getDefaultDestination, getMessageConverter, getRequiredDefaultDestination, processHeadersToSend, send, send, setDefaultDestination, setMessageConverter
public Message<?> sendAndReceive(Message<?> requestMessage)
MessageRequestReplyOperations
sendAndReceive
in interface MessageRequestReplyOperations<D>
requestMessage
- the message to sendnull
if the message could not be received,
for example due to a timeoutpublic Message<?> sendAndReceive(D destination, Message<?> requestMessage)
MessageRequestReplyOperations
sendAndReceive
in interface MessageRequestReplyOperations<D>
destination
- the target destinationrequestMessage
- the message to sendnull
if the message could not be received,
for example due to a timeoutprotected abstract Message<?> doSendAndReceive(D destination, Message<?> requestMessage)
public <T> T convertSendAndReceive(java.lang.Object request, java.lang.Class<T> targetClass)
MessageRequestReplyOperations
MessageConverter
, send
it as a Message
to a default destination, receive the reply and convert
its body of the specified target class.convertSendAndReceive
in interface MessageRequestReplyOperations<D>
request
- payload for the request message to sendtargetClass
- the target type to convert the payload of the reply tonull
if the message
could not be received, for example due to a timeoutpublic <T> T convertSendAndReceive(D destination, java.lang.Object request, java.lang.Class<T> targetClass)
MessageRequestReplyOperations
MessageConverter
, send
it as a Message
to the given destination, receive the reply and convert
its body of the specified target class.convertSendAndReceive
in interface MessageRequestReplyOperations<D>
destination
- the target destinationrequest
- payload for the request message to sendtargetClass
- the target type to convert the payload of the reply tonull
if the message
could not be received, for example due to a timeoutpublic <T> T convertSendAndReceive(D destination, java.lang.Object request, java.util.Map<java.lang.String,java.lang.Object> headers, java.lang.Class<T> targetClass)
MessageRequestReplyOperations
MessageConverter
, send
it as a Message
with the given headers, to the specified destination,
receive the reply and convert its body of the specified target class.convertSendAndReceive
in interface MessageRequestReplyOperations<D>
destination
- the target destinationrequest
- payload for the request message to sendheaders
- headers for the request message to sendtargetClass
- the target type to convert the payload of the reply tonull
if the message
could not be received, for example due to a timeoutpublic <T> T convertSendAndReceive(java.lang.Object request, java.lang.Class<T> targetClass, MessagePostProcessor postProcessor)
MessageRequestReplyOperations
MessageConverter
,
apply the given post processor and send the resulting Message
to a
default destination, receive the reply and convert its body of the given
target class.convertSendAndReceive
in interface MessageRequestReplyOperations<D>
request
- payload for the request message to sendtargetClass
- the target type to convert the payload of the reply topostProcessor
- post process to apply to the request messagenull
if the message
could not be received, for example due to a timeoutpublic <T> T convertSendAndReceive(D destination, java.lang.Object request, java.lang.Class<T> targetClass, MessagePostProcessor postProcessor)
MessageRequestReplyOperations
MessageConverter
,
apply the given post processor and send the resulting Message
to the
given destination, receive the reply and convert its body of the given
target class.convertSendAndReceive
in interface MessageRequestReplyOperations<D>
destination
- the target destinationrequest
- payload for the request message to sendtargetClass
- the target type to convert the payload of the reply topostProcessor
- post process to apply to the request messagenull
if the message
could not be received, for example due to a timeoutpublic <T> T convertSendAndReceive(D destination, java.lang.Object request, java.util.Map<java.lang.String,java.lang.Object> headers, java.lang.Class<T> targetClass, MessagePostProcessor postProcessor)
MessageRequestReplyOperations
MessageConverter
,
wrap it as a message with the given headers, apply the given post processor
and send the resulting Message
to the specified destination, receive
the reply and convert its body of the given target class.convertSendAndReceive
in interface MessageRequestReplyOperations<D>
destination
- the target destinationrequest
- payload for the request message to sendtargetClass
- the target type to convert the payload of the reply topostProcessor
- post process to apply to the request messagenull
if the message
could not be received, for example due to a timeout