public class ActiveMQQueueReceiver extends ActiveMQMessageConsumer implements javax.jms.QueueReceiver
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.
Session.createConsumer(javax.jms.Destination, String)
,
Session.createConsumer(javax.jms.Destination)
,
QueueSession.createReceiver(Queue, String)
,
QueueSession.createReceiver(Queue)
,
MessageConsumer
deliveredMessages, info, session, unconsumedMessages
Modifier | Constructor and Description |
---|---|
protected |
ActiveMQQueueReceiver(ActiveMQSession theSession,
ConsumerId consumerId,
ActiveMQDestination destination,
String selector,
int prefetch,
int maximumPendingMessageCount,
boolean asyncDispatch) |
Modifier and Type | Method and Description |
---|---|
javax.jms.Queue |
getQueue()
Gets the
Queue associated with this queue receiver. |
acknowledge, checkClosed, checkMessageListener, close, commit, dispatch, dispose, getAvailableListener, getConsumerId, getConsumerName, getConsumerStats, getDestination, getFailureError, getLastDeliveredSequenceId, getMessageListener, getMessageSelector, getMessageSize, getOptimizedAckScheduledAckInterval, getPrefetchNumber, getRedeliveryPolicy, getStats, getTransformer, hasMessageListener, isBrowser, isConsumerExpiryCheckEnabled, isDurableSubscriber, isInUse, isNoLocal, iterate, receive, receive, receiveNoWait, rollback, sendPullCommand, setAvailableListener, setConsumerExpiryCheckEnabled, setFailureError, setMessageListener, setOptimizeAcknowledge, setOptimizedAckScheduledAckInterval, setPrefetchSize, setRedeliveryPolicy, setTransformer, start, stop, toString
protected ActiveMQQueueReceiver(ActiveMQSession theSession, ConsumerId consumerId, ActiveMQDestination destination, String selector, int prefetch, int maximumPendingMessageCount, boolean asyncDispatch) throws javax.jms.JMSException
theSession
- consumerId
- destination
- selector
- prefetch
- maximumPendingMessageCount
- asyncDispatch
- javax.jms.JMSException
public javax.jms.Queue getQueue() throws javax.jms.JMSException
Queue
associated with this queue receiver.getQueue
in interface javax.jms.QueueReceiver
Queue
javax.jms.JMSException
- if the JMS provider fails to get the queue for this
queue receiver due to some internal error.Copyright © 2005–2019 The Apache Software Foundation. All rights reserved.