Sun GlassFish(tm) Message Queue v4.4

## javax.jms
Class TopicRequestor

    java.lang.Object
      javax.jms.TopicRequestor

    public class TopicRequestor

extends Object

The `TopicRequestor` helper class simplifies making service requests.

The `TopicRequestor` constructor is given a non-transacted `TopicSession` and a destination `Topic`. It creates a `TemporaryTopic` for the responses and provides a `request` method that sends the request message and waits for its reply.

This is a basic request/reply abstraction that should be sufficient for most uses. JMS providers and clients are free to create more sophisticated versions.

See Also:
  `QueueRequestor`

Constructor Summary
`TopicRequestor(TopicSession session, Topic topic)` Constructor for the `TopicRequestor` class.

Method Summary
`void` `close()` Closes the `TopicRequestor` and its session.
`Message` `request(Message message)` Sends a request and waits for a reply.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### TopicRequestor

    public TopicRequestor(TopicSession session,
                          Topic topic)
                   throws JMSException

  Constructor for the `TopicRequestor` 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 `TopicSession` the topic belongs to
    `topic` - the topic to perform the request/reply call on
  Throws:
    `JMSException` - if the JMS provider fails to create the `TopicRequestor` due to some internal error.
    `InvalidDestinationException` - if an invalid topic is specified.

Method Detail

### request

    public Message request(Message message)
                    throws JMSException

  Sends a request and waits for a reply. The temporary topic is used for the `JMSReplyTo` destination; the first reply is returned, and any following replies are discarded.

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

### close

    public void close()
               throws JMSException

  Closes the `TopicRequestor` and its session.

  Since a provider may allocate some resources on behalf of a `TopicRequestor` 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 `TopicSession` object passed to the `TopicRequestor` constructor.

  Throws:
    `JMSException` - if the JMS provider fails to close the `TopicRequestor` due to some internal error.

Sun GlassFish(tm) Message Queue v4.4

Copyright 2009 Sun Microsystems, Inc. 4150 Network Circle,
Santa Clara, California, 95054, U.S.A. All Rights Reserved.