org.apache.activemq
Class ActiveMQQueueReceiver
java.lang.Object
org.apache.activemq.ActiveMQMessageConsumer
org.apache.activemq.ActiveMQQueueReceiver
- All Implemented Interfaces:
- javax.jms.MessageConsumer, javax.jms.QueueReceiver, ActiveMQDispatcher, StatsCapable, MessageAvailableConsumer
public class ActiveMQQueueReceiver
- extends ActiveMQMessageConsumer
- implements javax.jms.QueueReceiver
A client uses a QueueReceiver
object to receive messages that
have been delivered to a queue.
Although it is possible to have multiple QueueReceiver
s for
the same queue, the JMS API does not define how messages are distributed
between the QueueReceiver
s.
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
QueueReceiver
s 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(javax.jms.Destination, String)
,
Session.createConsumer(javax.jms.Destination)
,
QueueSession.createReceiver(Queue, String)
,
QueueSession.createReceiver(Queue)
,
MessageConsumer
Method Summary |
javax.jms.Queue |
getQueue()
Gets the Queue associated with this queue receiver. |
Methods inherited from class org.apache.activemq.ActiveMQMessageConsumer |
acknowledge, checkClosed, checkMessageListener, close, commit, dispatch, dispose, getAvailableListener, getConsumerId, getConsumerName, getConsumerStats, getDestination, getMessageListener, getMessageSelector, getMessageSize, getPrefetchNumber, getRedeliveryPolicy, getStats, isBrowser, isDurableSubscriber, isInUse, isNoLocal, iterate, receive, receive, receiveNoWait, rollback, sendPullCommand, setAvailableListener, setMessageListener, setOptimizeAcknowledge, setPrefetchSize, setRedeliveryPolicy, start, stop, toString |
Methods inherited from interface javax.jms.MessageConsumer |
close, getMessageListener, getMessageSelector, receive, receive, receiveNoWait, setMessageListener |
ActiveMQQueueReceiver
protected ActiveMQQueueReceiver(ActiveMQSession theSession,
ConsumerId consumerId,
ActiveMQDestination destination,
String selector,
int prefetch,
int maximumPendingMessageCount,
boolean asyncDispatch)
throws javax.jms.JMSException
- Parameters:
theSession
- value
- destination
- messageSelector
- prefetch
- asyncDispatch
-
- Throws:
javax.jms.JMSException
getQueue
public javax.jms.Queue getQueue()
throws javax.jms.JMSException
- Gets the
Queue
associated with this queue receiver.
- Specified by:
getQueue
in interface javax.jms.QueueReceiver
- Returns:
- this receiver's
Queue
- Throws:
javax.jms.JMSException
- if the JMS provider fails to get the queue for this queue
receiver due to some internal error.
Copyright © 2011 Apache Software Foundation. All Rights Reserved.