org.apache.activemq
Class ActiveMQQueueBrowser

java.lang.Object
  extended by org.apache.activemq.ActiveMQQueueBrowser
All Implemented Interfaces:
java.util.Enumeration, javax.jms.QueueBrowser

public class ActiveMQQueueBrowser
extends java.lang.Object
implements javax.jms.QueueBrowser, java.util.Enumeration

A client uses a QueueBrowser object to look at messages on a queue without removing them.

The getEnumeration method returns a java.util.Enumeration that is used to scan the queue's messages. It may be an enumeration of the entire content of a queue, or it may contain only the messages matching a message selector.

Messages may be arriving and expiring while the scan is done. The JMS API does not require the content of an enumeration to be a static snapshot of queue content. Whether these changes are visible or not depends on the JMS provider.

A QueueBrowser can be created from either a Session or a QueueSession.

See Also:
Session.createBrowser(javax.jms.Queue), QueueSession.createBrowser(javax.jms.Queue), QueueBrowser, QueueReceiver

Constructor Summary
protected ActiveMQQueueBrowser(ActiveMQSession session, ConsumerId consumerId, ActiveMQDestination destination, java.lang.String selector, boolean dispatchAsync)
          Constructor for an ActiveMQQueueBrowser - used internally
 
Method Summary
 void close()
           
 java.util.Enumeration getEnumeration()
          Gets an enumeration for browsing the current queue messages in the order they would be received.
 java.lang.String getMessageSelector()
           
 javax.jms.Queue getQueue()
          Gets the queue associated with this queue browser.
 boolean hasMoreElements()
           
 java.lang.Object nextElement()
           
protected  void notifyMessageAvailable()
           
 java.lang.String toString()
           
protected  void waitForMessage()
          Wait on a semaphore for a fixed amount of time for a message to come in.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ActiveMQQueueBrowser

protected ActiveMQQueueBrowser(ActiveMQSession session,
                               ConsumerId consumerId,
                               ActiveMQDestination destination,
                               java.lang.String selector,
                               boolean dispatchAsync)
                        throws javax.jms.JMSException
Constructor for an ActiveMQQueueBrowser - used internally

Parameters:
theSession -
dest -
selector -
Throws:
javax.jms.JMSException
Method Detail

getEnumeration

public java.util.Enumeration getEnumeration()
                                     throws javax.jms.JMSException
Gets an enumeration for browsing the current queue messages in the order they would be received.

Specified by:
getEnumeration in interface javax.jms.QueueBrowser
Returns:
an enumeration for browsing the messages
Throws:
javax.jms.JMSException - if the JMS provider fails to get the enumeration for this browser due to some internal error.

hasMoreElements

public boolean hasMoreElements()
Specified by:
hasMoreElements in interface java.util.Enumeration
Returns:
true if more messages to process

nextElement

public java.lang.Object nextElement()
Specified by:
nextElement in interface java.util.Enumeration
Returns:
the next message

close

public void close()
           throws javax.jms.JMSException
Specified by:
close in interface javax.jms.QueueBrowser
Throws:
javax.jms.JMSException

getQueue

public javax.jms.Queue getQueue()
                         throws javax.jms.JMSException
Gets the queue associated with this queue browser.

Specified by:
getQueue in interface javax.jms.QueueBrowser
Returns:
the queue
Throws:
javax.jms.JMSException - if the JMS provider fails to get the queue associated with this browser due to some internal error.

getMessageSelector

public java.lang.String getMessageSelector()
                                    throws javax.jms.JMSException
Specified by:
getMessageSelector in interface javax.jms.QueueBrowser
Throws:
javax.jms.JMSException

waitForMessage

protected void waitForMessage()
Wait on a semaphore for a fixed amount of time for a message to come in.

Throws:
javax.jms.JMSException

notifyMessageAvailable

protected void notifyMessageAvailable()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Copyright © 2005-2016. All Rights Reserved.