Class ActiveMQQueueReceiver
- java.lang.Object
-
- org.apache.activemq.ActiveMQMessageConsumer
-
- org.apache.activemq.ActiveMQQueueReceiver
-
- All Implemented Interfaces:
AutoCloseable,javax.jms.MessageConsumer,javax.jms.QueueReceiver,ActiveMQDispatcher,StatsCapable,MessageAvailableConsumer
public class ActiveMQQueueReceiver extends ActiveMQMessageConsumer implements javax.jms.QueueReceiver
A client uses aQueueReceiverobject 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 theQueueReceivers.If a
QueueReceiverspecifies a message selector, the messages that are not selected remain on the queue. By definition, a message selector allows aQueueReceiverto 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. OnlyQueueReceivers without a message selector will read messages in message producer order.Creating a
MessageConsumerprovides the same features as creating aQueueReceiver. AMessageConsumerobject is recommended for creating new code. TheQueueReceiveris 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
-
-
Field Summary
-
Fields inherited from class org.apache.activemq.ActiveMQMessageConsumer
deliveredMessages, info, session, unconsumedMessages
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedActiveMQQueueReceiver(ActiveMQSession theSession, ConsumerId consumerId, ActiveMQDestination destination, String selector, int prefetch, int maximumPendingMessageCount, boolean asyncDispatch)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description javax.jms.QueuegetQueue()Gets theQueueassociated with this queue receiver.-
Methods inherited from class org.apache.activemq.ActiveMQMessageConsumer
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
-
-
-
-
Constructor Detail
-
ActiveMQQueueReceiver
protected ActiveMQQueueReceiver(ActiveMQSession theSession, ConsumerId consumerId, ActiveMQDestination destination, String selector, int prefetch, int maximumPendingMessageCount, boolean asyncDispatch) throws javax.jms.JMSException
- Parameters:
theSession-consumerId-destination-selector-prefetch-maximumPendingMessageCount-asyncDispatch-- Throws:
javax.jms.JMSException
-
-
Method Detail
-
getQueue
public javax.jms.Queue getQueue() throws javax.jms.JMSExceptionGets theQueueassociated with this queue receiver.- Specified by:
getQueuein interfacejavax.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.
-
-