Arquillian Example Domain 1.0.0.CR1

com.acme.util.jms
Class QueueRequestor

java.lang.Object
  extended by com.acme.util.jms.QueueRequestor

public class QueueRequestor
extends Object


Constructor Summary
QueueRequestor(javax.jms.QueueSession session, javax.jms.Queue queue)
          Constructor for the QueueRequestor class.
 
Method Summary
 void close()
          Closes the QueueRequestor and its session.
 javax.jms.Message request(javax.jms.Message message)
          Sends a request and waits for a reply.
 javax.jms.Message request(javax.jms.Message message, int wait)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

QueueRequestor

public QueueRequestor(javax.jms.QueueSession session,
                      javax.jms.Queue queue)
               throws javax.jms.JMSException
Constructor for the QueueRequestor class.

This implementation assumes the session parameter to be non-transacted, with a delivery mode of either AUTO_ACKNOWLEDGE or DUPS_OK_ACKNOWLEDGE.

Parameters:
session - the QueueSession the queue belongs to
queue - the queue to perform the request/reply call on
Throws:
javax.jms.JMSException - if the JMS provider fails to create the QueueRequestor due to some internal error.
javax.jms.InvalidDestinationException - if an invalid queue is specified.
Method Detail

request

public javax.jms.Message request(javax.jms.Message message)
                          throws javax.jms.JMSException
Sends a request and waits for a reply. The temporary queue is used for the JMSReplyTo destination, and only one reply per request is expected.

Parameters:
message - the message to send
Returns:
the reply message
Throws:
javax.jms.JMSException - if the JMS provider fails to complete the request due to some internal error.

request

public javax.jms.Message request(javax.jms.Message message,
                                 int wait)
                          throws javax.jms.JMSException
Throws:
javax.jms.JMSException

close

public void close()
           throws javax.jms.JMSException
Closes the QueueRequestor 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 the QueueRequestor constructor.

Throws:
javax.jms.JMSException - if the JMS provider fails to close the QueueRequestor due to some internal error.

Arquillian Example Domain 1.0.0.CR1

Copyright © 2011 JBoss, a division of Red Hat, Inc.. All Rights Reserved.