com.j_spaces.jms
Class GSQueueReceiverImpl

java.lang.Object
  extended by com.j_spaces.jms.GSMessageConsumerImpl
      extended by com.j_spaces.jms.GSQueueReceiverImpl
All Implemented Interfaces:
MessageConsumer, QueueReceiver, TopicSubscriber

public class GSQueueReceiverImpl
extends GSMessageConsumerImpl

GigaSpaces implementation of the javax.jms.QueueReceiver interface. A client uses a QueueReceiver object to receive messages that have been delivered to a queue.

Although it is possible to have multiple QueueReceivers for the same queue, the JMS API does not define how messages are distributed between the QueueReceivers. The GigaSpaces API does not support multiple QueueReceivers for the same queue.

If a QueueReceiver specifies a message selector, the messages that are not selected remain on the queue. By definition, a message selector allows a QueueReceiver to skip messages. This means that when the skipped messages are eventually read, the total ordering of the reads does not retain the partial order defined by each message producer. Only QueueReceivers without a message selector will read messages in message producer order.

Creating a MessageConsumer provides the same features as creating a QueueReceiver. A MessageConsumer object is recommended for creating new code. The QueueReceiver is provided to support existing code.

See Also:
Session.createConsumer(Destination, String), Session.createConsumer(Destination), QueueSession.createReceiver(Queue, String), QueueSession.createReceiver(Queue), MessageConsumer

Field Summary
 
Fields inherited from class com.j_spaces.jms.GSMessageConsumerImpl
m_durableSubscriptionName
 
Constructor Summary
GSQueueReceiverImpl(GSSessionImpl sess, GSQueueImpl queue, String consumerKey, String selector, com.j_spaces.jdbc.ParserManager pManager)
           
 
Method Summary
 
Methods inherited from class com.j_spaces.jms.GSMessageConsumerImpl
close, getConsumerID, getDestination, getMessageListener, getMessageSelector, getName, getNoLocal, getQueue, getTopic, isClosed, isDurableSubscriber, receive, receive, receiveNoWait, setMessageListener, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GSQueueReceiverImpl

public GSQueueReceiverImpl(GSSessionImpl sess,
                           GSQueueImpl queue,
                           String consumerKey,
                           String selector,
                           com.j_spaces.jdbc.ParserManager pManager)
                    throws JMSException
Parameters:
sess -
queue -
consumerKey -
selector -
pManager - ParserManager used for the selector support
Throws:
JMSException