Package org.springframework.amqp.core
Interface AmqpTemplate
-
- All Known Subinterfaces:
RabbitOperations
- All Known Implementing Classes:
BatchingRabbitTemplate,RabbitTemplate,TestRabbitTemplate
public interface AmqpTemplateSpecifies a basic set of AMQP operations. Provides synchronous send and receive methods. TheconvertAndSend(Object)andreceiveAndConvert()methods allow let you send and receive POJO objects. Implementations are expected to delegate to an instance ofMessageConverterto perform conversion to and from AMQP byte[] payload type.- Author:
- Mark Pollack, Mark Fisher, Artem Bilan, Ernest Sadykov, Gary Russell
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidconvertAndSend(java.lang.Object message)Convert a Java object to an AmqpMessageand send it to a default exchange with a default routing key.voidconvertAndSend(java.lang.Object message, MessagePostProcessor messagePostProcessor)Convert a Java object to an AmqpMessageand send it to a default exchange with a default routing key.voidconvertAndSend(java.lang.String routingKey, java.lang.Object message)Convert a Java object to an AmqpMessageand send it to a default exchange with a specific routing key.voidconvertAndSend(java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor)Convert a Java object to an AmqpMessageand send it to a default exchange with a specific routing key.voidconvertAndSend(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message)Convert a Java object to an AmqpMessageand send it to a specific exchange with a specific routing key.voidconvertAndSend(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor)Convert a Java object to an AmqpMessageand send it to a specific exchange with a specific routing key.java.lang.ObjectconvertSendAndReceive(java.lang.Object message)Basic RPC pattern with conversion.java.lang.ObjectconvertSendAndReceive(java.lang.Object message, MessagePostProcessor messagePostProcessor)Basic RPC pattern with conversion.java.lang.ObjectconvertSendAndReceive(java.lang.String routingKey, java.lang.Object message)Basic RPC pattern with conversion.java.lang.ObjectconvertSendAndReceive(java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor)Basic RPC pattern with conversion.java.lang.ObjectconvertSendAndReceive(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message)Basic RPC pattern with conversion.java.lang.ObjectconvertSendAndReceive(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor)Basic RPC pattern with conversion.<T> TconvertSendAndReceiveAsType(java.lang.Object message, MessagePostProcessor messagePostProcessor, ParameterizedTypeReference<T> responseType)Basic RPC pattern with conversion.<T> TconvertSendAndReceiveAsType(java.lang.Object message, ParameterizedTypeReference<T> responseType)Basic RPC pattern with conversion.<T> TconvertSendAndReceiveAsType(java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor, ParameterizedTypeReference<T> responseType)Basic RPC pattern with conversion.<T> TconvertSendAndReceiveAsType(java.lang.String routingKey, java.lang.Object message, ParameterizedTypeReference<T> responseType)Basic RPC pattern with conversion.<T> TconvertSendAndReceiveAsType(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor, ParameterizedTypeReference<T> responseType)Basic RPC pattern with conversion.<T> TconvertSendAndReceiveAsType(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message, ParameterizedTypeReference<T> responseType)Basic RPC pattern with conversion.Messagereceive()Receive a message if there is one from a default queue.Messagereceive(long timeoutMillis)Receive a message from a default queue, waiting up to the specified wait time if necessary for a message to become available.Messagereceive(java.lang.String queueName)Receive a message if there is one from a specific queue.Messagereceive(java.lang.String queueName, long timeoutMillis)Receive a message from a specific queue, waiting up to the specified wait time if necessary for a message to become available.java.lang.ObjectreceiveAndConvert()Receive a message if there is one from a default queue and convert it to a Java object.java.lang.ObjectreceiveAndConvert(long timeoutMillis)Receive a message if there is one from a default queue and convert it to a Java object.<T> TreceiveAndConvert(long timeoutMillis, ParameterizedTypeReference<T> type)Receive a message if there is one from a default queue and convert it to a Java object.java.lang.ObjectreceiveAndConvert(java.lang.String queueName)Receive a message if there is one from a specific queue and convert it to a Java object.java.lang.ObjectreceiveAndConvert(java.lang.String queueName, long timeoutMillis)Receive a message if there is one from a specific queue and convert it to a Java object.<T> TreceiveAndConvert(java.lang.String queueName, long timeoutMillis, ParameterizedTypeReference<T> type)Receive a message if there is one from a specific queue and convert it to a Java object.<T> TreceiveAndConvert(java.lang.String queueName, ParameterizedTypeReference<T> type)Receive a message if there is one from a specific queue and convert it to a Java object.<T> TreceiveAndConvert(ParameterizedTypeReference<T> type)Receive a message if there is one from a default queue and convert it to a Java object.<R,S>
booleanreceiveAndReply(java.lang.String queueName, ReceiveAndReplyCallback<R,S> callback)Receive a message if there is one from provided queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to thereplyToAddressfromMessagePropertiesor to default exchange and default routingKey.<R,S>
booleanreceiveAndReply(java.lang.String queueName, ReceiveAndReplyCallback<R,S> callback, java.lang.String replyExchange, java.lang.String replyRoutingKey)Receive a message if there is one from provided queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to the providedexchangeandroutingKey.<R,S>
booleanreceiveAndReply(java.lang.String queueName, ReceiveAndReplyCallback<R,S> callback, ReplyToAddressCallback<S> replyToAddressCallback)Receive a message if there is one from provided queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to thereplyToAddressfrom result ofReplyToAddressCallback.<R,S>
booleanreceiveAndReply(ReceiveAndReplyCallback<R,S> callback)Receive a message if there is one from a default queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to thereplyToAddressfromMessagePropertiesor to default exchange and default routingKey.<R,S>
booleanreceiveAndReply(ReceiveAndReplyCallback<R,S> callback, java.lang.String replyExchange, java.lang.String replyRoutingKey)Receive a message if there is one from default queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to the providedexchangeandroutingKey.<R,S>
booleanreceiveAndReply(ReceiveAndReplyCallback<R,S> callback, ReplyToAddressCallback<S> replyToAddressCallback)Receive a message if there is one from a default queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to thereplyToAddressfrom result ofReplyToAddressCallback.voidsend(java.lang.String exchange, java.lang.String routingKey, Message message)Send a message to a specific exchange with a specific routing key.voidsend(java.lang.String routingKey, Message message)Send a message to a default exchange with a specific routing key.voidsend(Message message)Send a message to a default exchange with a default routing key.MessagesendAndReceive(java.lang.String exchange, java.lang.String routingKey, Message message)Basic RPC pattern.MessagesendAndReceive(java.lang.String routingKey, Message message)Basic RPC pattern.MessagesendAndReceive(Message message)Basic RPC pattern.
-
-
-
Method Detail
-
send
void send(Message message) throws AmqpException
Send a message to a default exchange with a default routing key.- Parameters:
message- a message to send- Throws:
AmqpException- if there is a problem
-
send
void send(java.lang.String routingKey, Message message) throws AmqpExceptionSend a message to a default exchange with a specific routing key.- Parameters:
routingKey- the routing keymessage- a message to send- Throws:
AmqpException- if there is a problem
-
send
void send(java.lang.String exchange, java.lang.String routingKey, Message message) throws AmqpExceptionSend a message to a specific exchange with a specific routing key.- Parameters:
exchange- the name of the exchangeroutingKey- the routing keymessage- a message to send- Throws:
AmqpException- if there is a problem
-
convertAndSend
void convertAndSend(java.lang.Object message) throws AmqpExceptionConvert a Java object to an AmqpMessageand send it to a default exchange with a default routing key.- Parameters:
message- a message to send- Throws:
AmqpException- if there is a problem
-
convertAndSend
void convertAndSend(java.lang.String routingKey, java.lang.Object message) throws AmqpExceptionConvert a Java object to an AmqpMessageand send it to a default exchange with a specific routing key.- Parameters:
routingKey- the routing keymessage- a message to send- Throws:
AmqpException- if there is a problem
-
convertAndSend
void convertAndSend(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message) throws AmqpExceptionConvert a Java object to an AmqpMessageand send it to a specific exchange with a specific routing key.- Parameters:
exchange- the name of the exchangeroutingKey- the routing keymessage- a message to send- Throws:
AmqpException- if there is a problem
-
convertAndSend
void convertAndSend(java.lang.Object message, MessagePostProcessor messagePostProcessor) throws AmqpExceptionConvert a Java object to an AmqpMessageand send it to a default exchange with a default routing key.- Parameters:
message- a message to sendmessagePostProcessor- a processor to apply to the message before it is sent- Throws:
AmqpException- if there is a problem
-
convertAndSend
void convertAndSend(java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor) throws AmqpExceptionConvert a Java object to an AmqpMessageand send it to a default exchange with a specific routing key.- Parameters:
routingKey- the routing keymessage- a message to sendmessagePostProcessor- a processor to apply to the message before it is sent- Throws:
AmqpException- if there is a problem
-
convertAndSend
void convertAndSend(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor) throws AmqpExceptionConvert a Java object to an AmqpMessageand send it to a specific exchange with a specific routing key.- Parameters:
exchange- the name of the exchangeroutingKey- the routing keymessage- a message to sendmessagePostProcessor- a processor to apply to the message before it is sent- Throws:
AmqpException- if there is a problem
-
receive
@Nullable Message receive() throws AmqpException
Receive a message if there is one from a default queue. Returns immediately, possibly with a null value.- Returns:
- a message or null if there is none waiting
- Throws:
AmqpException- if there is a problem
-
receive
@Nullable Message receive(java.lang.String queueName) throws AmqpException
Receive a message if there is one from a specific queue. Returns immediately, possibly with a null value.- Parameters:
queueName- the name of the queue to poll- Returns:
- a message or null if there is none waiting
- Throws:
AmqpException- if there is a problem
-
receive
@Nullable Message receive(long timeoutMillis) throws AmqpException
Receive a message from a default queue, waiting up to the specified wait time if necessary for a message to become available.- Parameters:
timeoutMillis- how long to wait before giving up. Zero value means the method will returnnullimmediately if there is no message available. Negative value makes method wait for a message indefinitely.- Returns:
- a message or null if the time expires
- Throws:
AmqpException- if there is a problem- Since:
- 1.6
-
receive
@Nullable Message receive(java.lang.String queueName, long timeoutMillis) throws AmqpException
Receive a message from a specific queue, waiting up to the specified wait time if necessary for a message to become available.- Parameters:
queueName- the queue to receive fromtimeoutMillis- how long to wait before giving up. Zero value means the method will returnnullimmediately if there is no message available. Negative value makes method wait for a message indefinitely.- Returns:
- a message or null if the time expires
- Throws:
AmqpException- if there is a problem- Since:
- 1.6
-
receiveAndConvert
@Nullable java.lang.Object receiveAndConvert() throws AmqpException
Receive a message if there is one from a default queue and convert it to a Java object. Returns immediately, possibly with a null value.- Returns:
- a message or null if there is none waiting
- Throws:
AmqpException- if there is a problem
-
receiveAndConvert
@Nullable java.lang.Object receiveAndConvert(java.lang.String queueName) throws AmqpException
Receive a message if there is one from a specific queue and convert it to a Java object. Returns immediately, possibly with a null value.- Parameters:
queueName- the name of the queue to poll- Returns:
- a message or null if there is none waiting
- Throws:
AmqpException- if there is a problem
-
receiveAndConvert
@Nullable java.lang.Object receiveAndConvert(long timeoutMillis) throws AmqpException
Receive a message if there is one from a default queue and convert it to a Java object. Wait up to the specified wait time if necessary for a message to become available.- Parameters:
timeoutMillis- how long to wait before giving up. Zero value means the method will returnnullimmediately if there is no message available. Negative value makes method wait for a message indefinitely.- Returns:
- a message or null if the time expires
- Throws:
AmqpException- if there is a problem- Since:
- 1.6
-
receiveAndConvert
@Nullable java.lang.Object receiveAndConvert(java.lang.String queueName, long timeoutMillis) throws AmqpException
Receive a message if there is one from a specific queue and convert it to a Java object. Wait up to the specified wait time if necessary for a message to become available.- Parameters:
queueName- the name of the queue to polltimeoutMillis- how long to wait before giving up. Zero value means the method will returnnullimmediately if there is no message available. Negative value makes method wait for a message indefinitely.- Returns:
- a message or null if the time expires
- Throws:
AmqpException- if there is a problem- Since:
- 1.6
-
receiveAndConvert
@Nullable <T> T receiveAndConvert(ParameterizedTypeReference<T> type) throws AmqpException
Receive a message if there is one from a default queue and convert it to a Java object. Returns immediately, possibly with a null value. Requires aSmartMessageConverter.- Type Parameters:
T- the type.- Parameters:
type- the type to convert to.- Returns:
- a message or null if there is none waiting.
- Throws:
AmqpException- if there is a problem.- Since:
- 2.0
-
receiveAndConvert
@Nullable <T> T receiveAndConvert(java.lang.String queueName, ParameterizedTypeReference<T> type) throws AmqpException
Receive a message if there is one from a specific queue and convert it to a Java object. Returns immediately, possibly with a null value. Requires aSmartMessageConverter.- Type Parameters:
T- the type.- Parameters:
queueName- the name of the queue to polltype- the type to convert to.- Returns:
- a message or null if there is none waiting
- Throws:
AmqpException- if there is a problem- Since:
- 2.0
-
receiveAndConvert
@Nullable <T> T receiveAndConvert(long timeoutMillis, ParameterizedTypeReference<T> type) throws AmqpException
Receive a message if there is one from a default queue and convert it to a Java object. Wait up to the specified wait time if necessary for a message to become available. Requires aSmartMessageConverter.- Type Parameters:
T- the type.- Parameters:
timeoutMillis- how long to wait before giving up. Zero value means the method will returnnullimmediately if there is no message available. Negative value makes method wait for a message indefinitely.type- the type to convert to.- Returns:
- a message or null if the time expires
- Throws:
AmqpException- if there is a problem- Since:
- 2.0
-
receiveAndConvert
@Nullable <T> T receiveAndConvert(java.lang.String queueName, long timeoutMillis, ParameterizedTypeReference<T> type) throws AmqpException
Receive a message if there is one from a specific queue and convert it to a Java object. Wait up to the specified wait time if necessary for a message to become available. Requires aSmartMessageConverter.- Type Parameters:
T- the type.- Parameters:
queueName- the name of the queue to polltimeoutMillis- how long to wait before giving up. Zero value means the method will returnnullimmediately if there is no message available. Negative value makes method wait for a message indefinitely.type- the type to convert to.- Returns:
- a message or null if the time expires
- Throws:
AmqpException- if there is a problem- Since:
- 2.0
-
receiveAndReply
<R,S> boolean receiveAndReply(ReceiveAndReplyCallback<R,S> callback) throws AmqpException
Receive a message if there is one from a default queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to thereplyToAddressfromMessagePropertiesor to default exchange and default routingKey.- Type Parameters:
R- The type of the request after conversion from theMessage.S- The type of the response.- Parameters:
callback- a user-providedReceiveAndReplyCallbackimplementation to process received message and return a reply message.- Returns:
true, if message was received- Throws:
AmqpException- if there is a problem
-
receiveAndReply
<R,S> boolean receiveAndReply(java.lang.String queueName, ReceiveAndReplyCallback<R,S> callback) throws AmqpExceptionReceive a message if there is one from provided queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to thereplyToAddressfromMessagePropertiesor to default exchange and default routingKey.- Type Parameters:
R- The type of the request after conversion from theMessage.S- The type of the response.- Parameters:
queueName- the queue name to receive a message.callback- a user-providedReceiveAndReplyCallbackimplementation to process received message and return a reply message.- Returns:
true, if message was received.- Throws:
AmqpException- if there is a problem.
-
receiveAndReply
<R,S> boolean receiveAndReply(ReceiveAndReplyCallback<R,S> callback, java.lang.String replyExchange, java.lang.String replyRoutingKey) throws AmqpException
Receive a message if there is one from default queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to the providedexchangeandroutingKey.- Type Parameters:
R- The type of the request after conversion from theMessage.S- The type of the response.- Parameters:
callback- a user-providedReceiveAndReplyCallbackimplementation to process received message and return a reply message.replyExchange- the exchange name to send reply message.replyRoutingKey- the routing key to send reply message.- Returns:
true, if message was received.- Throws:
AmqpException- if there is a problem.
-
receiveAndReply
<R,S> boolean receiveAndReply(java.lang.String queueName, ReceiveAndReplyCallback<R,S> callback, java.lang.String replyExchange, java.lang.String replyRoutingKey) throws AmqpExceptionReceive a message if there is one from provided queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to the providedexchangeandroutingKey.- Type Parameters:
R- The type of the request after conversion from theMessage.S- The type of the response.- Parameters:
queueName- the queue name to receive a message.callback- a user-providedReceiveAndReplyCallbackimplementation to process received message and return a reply message.replyExchange- the exchange name to send reply message.replyRoutingKey- the routing key to send reply message.- Returns:
true, if message was received- Throws:
AmqpException- if there is a problem
-
receiveAndReply
<R,S> boolean receiveAndReply(ReceiveAndReplyCallback<R,S> callback, ReplyToAddressCallback<S> replyToAddressCallback) throws AmqpException
Receive a message if there is one from a default queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to thereplyToAddressfrom result ofReplyToAddressCallback.- Type Parameters:
R- The type of the request after conversion from theMessage.S- The type of the response.- Parameters:
callback- a user-providedReceiveAndReplyCallbackimplementation to process received message and return a reply message.replyToAddressCallback- the callback to determine replyTo address at runtime.- Returns:
true, if message was received.- Throws:
AmqpException- if there is a problem.
-
receiveAndReply
<R,S> boolean receiveAndReply(java.lang.String queueName, ReceiveAndReplyCallback<R,S> callback, ReplyToAddressCallback<S> replyToAddressCallback) throws AmqpExceptionReceive a message if there is one from provided queue, invoke providedReceiveAndReplyCallbackand send reply message, if thecallbackreturns one, to thereplyToAddressfrom result ofReplyToAddressCallback.- Type Parameters:
R- The type of the request after conversion from theMessage.S- The type of the response.- Parameters:
queueName- the queue name to receive a message.callback- a user-providedReceiveAndReplyCallbackimplementation to process received message and return a reply message.replyToAddressCallback- the callback to determine replyTo address at runtime.- Returns:
true, if message was received- Throws:
AmqpException- if there is a problem
-
sendAndReceive
@Nullable Message sendAndReceive(Message message) throws AmqpException
Basic RPC pattern. Send a message to a default exchange with a default routing key and attempt to receive a response. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout.- Parameters:
message- a message to send- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem
-
sendAndReceive
@Nullable Message sendAndReceive(java.lang.String routingKey, Message message) throws AmqpException
Basic RPC pattern. Send a message to a default exchange with a specific routing key and attempt to receive a response. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout.- Parameters:
routingKey- the routing keymessage- a message to send- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem
-
sendAndReceive
@Nullable Message sendAndReceive(java.lang.String exchange, java.lang.String routingKey, Message message) throws AmqpException
Basic RPC pattern. Send a message to a specific exchange with a specific routing key and attempt to receive a response. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout.- Parameters:
exchange- the name of the exchangeroutingKey- the routing keymessage- a message to send- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem
-
convertSendAndReceive
@Nullable java.lang.Object convertSendAndReceive(java.lang.Object message) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a default exchange with a default routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout.- Parameters:
message- a message to send- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem
-
convertSendAndReceive
@Nullable java.lang.Object convertSendAndReceive(java.lang.String routingKey, java.lang.Object message) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a default exchange with a specific routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout.- Parameters:
routingKey- the routing keymessage- a message to send- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem
-
convertSendAndReceive
@Nullable java.lang.Object convertSendAndReceive(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a specific exchange with a specific routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout.- Parameters:
exchange- the name of the exchangeroutingKey- the routing keymessage- a message to send- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem
-
convertSendAndReceive
@Nullable java.lang.Object convertSendAndReceive(java.lang.Object message, MessagePostProcessor messagePostProcessor) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a default exchange with a default routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout.- Parameters:
message- a message to sendmessagePostProcessor- a processor to apply to the message before it is sent- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem
-
convertSendAndReceive
@Nullable java.lang.Object convertSendAndReceive(java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a default exchange with a specific routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout.- Parameters:
routingKey- the routing keymessage- a message to sendmessagePostProcessor- a processor to apply to the message before it is sent- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem
-
convertSendAndReceive
@Nullable java.lang.Object convertSendAndReceive(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a specific exchange with a specific routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout.- Parameters:
exchange- the name of the exchangeroutingKey- the routing keymessage- a message to sendmessagePostProcessor- a processor to apply to the message before it is sent- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem
-
convertSendAndReceiveAsType
@Nullable <T> T convertSendAndReceiveAsType(java.lang.Object message, ParameterizedTypeReference<T> responseType) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a default exchange with a default routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout. Requires aSmartMessageConverter.- Type Parameters:
T- the type.- Parameters:
message- a message to send.responseType- the type to convert the reply to.- Returns:
- the response if there is one.
- Throws:
AmqpException- if there is a problem.- Since:
- 2.0
-
convertSendAndReceiveAsType
@Nullable <T> T convertSendAndReceiveAsType(java.lang.String routingKey, java.lang.Object message, ParameterizedTypeReference<T> responseType) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a default exchange with a specific routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout. Requires aSmartMessageConverter.- Type Parameters:
T- the type.- Parameters:
routingKey- the routing keymessage- a message to sendresponseType- the type to convert the reply to.- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem- Since:
- 2.0
-
convertSendAndReceiveAsType
@Nullable <T> T convertSendAndReceiveAsType(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message, ParameterizedTypeReference<T> responseType) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a specific exchange with a specific routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout. Requires aSmartMessageConverter.- Type Parameters:
T- the type.- Parameters:
exchange- the name of the exchangeroutingKey- the routing keymessage- a message to sendresponseType- the type to convert the reply to.- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem- Since:
- 2.0
-
convertSendAndReceiveAsType
@Nullable <T> T convertSendAndReceiveAsType(java.lang.Object message, MessagePostProcessor messagePostProcessor, ParameterizedTypeReference<T> responseType) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a default exchange with a default routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout. Requires aSmartMessageConverter.- Type Parameters:
T- the type.- Parameters:
message- a message to sendmessagePostProcessor- a processor to apply to the message before it is sentresponseType- the type to convert the reply to.- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem- Since:
- 2.0
-
convertSendAndReceiveAsType
@Nullable <T> T convertSendAndReceiveAsType(java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor, ParameterizedTypeReference<T> responseType) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a default exchange with a specific routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout. Requires aSmartMessageConverter.- Type Parameters:
T- the type.- Parameters:
routingKey- the routing keymessage- a message to sendmessagePostProcessor- a processor to apply to the message before it is sentresponseType- the type to convert the reply to.- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem- Since:
- 2.0
-
convertSendAndReceiveAsType
@Nullable <T> T convertSendAndReceiveAsType(java.lang.String exchange, java.lang.String routingKey, java.lang.Object message, MessagePostProcessor messagePostProcessor, ParameterizedTypeReference<T> responseType) throws AmqpException
Basic RPC pattern with conversion. Send a Java object converted to a message to a specific exchange with a specific routing key and attempt to receive a response, converting that to a Java object. Implementations will normally set the reply-to header to an exclusive queue and wait up for some time limited by a timeout. Requires aSmartMessageConverter.- Type Parameters:
T- the type.- Parameters:
exchange- the name of the exchangeroutingKey- the routing keymessage- a message to sendmessagePostProcessor- a processor to apply to the message before it is sentresponseType- the type to convert the reply to.- Returns:
- the response if there is one
- Throws:
AmqpException- if there is a problem- Since:
- 2.0
-
-