Class QueueRequestor
QueueRequestor
helper class simplifies making service requests.
The QueueRequestor
constructor is given a non-transacted QueueSession
and a destination
Queue
. It creates a TemporaryQueue
for the responses and provides a request
method that sends
the request message and waits for its reply.
This is a very basic request/reply abstraction which assumes the session is non-transacted with a delivery mode of either AUTO_ACKNOWLEDGE or DUPS_OK_ACKNOWLEDGE. It is expected that most applications will create less basic implementations.
- Since:
- JMS 1.0
- See Also:
-
Constructor Summary
ConstructorDescriptionQueueRequestor
(QueueSession session, Queue queue) Constructor for theQueueRequestor
class. -
Method Summary
-
Constructor Details
-
QueueRequestor
Constructor for theQueueRequestor
class.This implementation assumes the session parameter to be non-transacted, with a delivery mode of either
AUTO_ACKNOWLEDGE
orDUPS_OK_ACKNOWLEDGE
.- Parameters:
session
- theQueueSession
the queue belongs toqueue
- the queue to perform the request/reply call on- Throws:
JMSException
- if the Jakarta Messaging provider fails to create theQueueRequestor
due to some internal error.InvalidDestinationException
- if an invalid queue is specified.
-
-
Method Details
-
request
Sends a request and waits for a reply. The temporary queue is used for theJMSReplyTo
destination, and only one reply per request is expected.- Parameters:
message
- the message to send- Returns:
- the reply message
- Throws:
JMSException
- if the Jakarta Messaging provider fails to complete the request due to some internal error.
-
close
Closes theQueueRequestor
and its session.Since a provider may allocate some resources on behalf of a
QueueRequestor
outside the Java virtual machine, clients should close them when they are not needed. Relying on garbage collection to eventually reclaim these resources may not be timely enough.Note that this method closes the
QueueSession
object passed to theQueueRequestor
constructor.- Throws:
JMSException
- if the Jakarta Messaging provider fails to close theQueueRequestor
due to some internal error.
-