org.openeai.jms.consumer
Class PointToPointConsumer.RequestTransaction

java.lang.Object
  extended by org.openeai.jms.consumer.PointToPointConsumer.RequestTransaction
All Implemented Interfaces:
java.lang.Runnable
Enclosing class:
PointToPointConsumer

protected class PointToPointConsumer.RequestTransaction
extends java.lang.Object
implements java.lang.Runnable

This is the class that is used to execute the RequestCommand associated to a message consumed by the Consumer. When a message is delivered to the Destination onwhich the consumer is connected and there is an expected reply, it will instantiate this class passing a message number and the actual message it consumed and add this classes run method to the ThreadPool (if the ThreadPool is in use). If the ThreadPool is not in use, the consumer will simply call this classes run method and will block until that command's execution is complete.

By adding this "job" to the ThreadPool, the consumer does not wait for the command to complete execution before consuming another message. Therefore, you can affect how many "jobs" may be in progress by configuring the ThreadPool associated to this Consumer.

Version:
3.0 - 28 January 2003
Author:
Tod Jackson (tod@openeai.org)
See Also:
ThreadPoolConfig, ThreadPool, PubSubConsumer.MyTopicListener.onMessage(Message), PointToPointConsumer.MyQueueListener.onMessage(Message), MessageConsumer.MessageTransaction

Constructor Summary
PointToPointConsumer.RequestTransaction(int msgNumber, javax.jms.Message inMsg, javax.jms.QueueSender replier, javax.jms.Queue outQueue)
           
 
Method Summary
 void run()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PointToPointConsumer.RequestTransaction

public PointToPointConsumer.RequestTransaction(int msgNumber,
                                               javax.jms.Message inMsg,
                                               javax.jms.QueueSender replier,
                                               javax.jms.Queue outQueue)
Method Detail

run

public void run()
Specified by:
run in interface java.lang.Runnable


Copyright © 2002,2003 OpenEAI Software Foundation