Package org.apache.activemq
Class ActiveMQQueueBrowser
- java.lang.Object
-
- org.apache.activemq.ActiveMQQueueBrowser
-
- All Implemented Interfaces:
Enumeration
,QueueBrowser
public class ActiveMQQueueBrowser extends Object implements QueueBrowser, Enumeration
A client uses aQueueBrowser
object to look at messages on a queue without removing them.The
getEnumeration
method returns ajava.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 aSession
or aQueueSession
.
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ActiveMQQueueBrowser(ActiveMQSession session, ConsumerId consumerId, ActiveMQDestination destination, String selector, boolean dispatchAsync)
Constructor for an ActiveMQQueueBrowser - used internally
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Enumeration
getEnumeration()
Gets an enumeration for browsing the current queue messages in the order they would be received.String
getMessageSelector()
Queue
getQueue()
Gets the queue associated with this queue browser.boolean
hasMoreElements()
Object
nextElement()
protected void
notifyMessageAvailable()
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
-
Methods inherited from interface java.util.Enumeration
asIterator
-
-
-
-
Constructor Detail
-
ActiveMQQueueBrowser
protected ActiveMQQueueBrowser(ActiveMQSession session, ConsumerId consumerId, ActiveMQDestination destination, String selector, boolean dispatchAsync) throws JMSException
Constructor for an ActiveMQQueueBrowser - used internally- Throws:
JMSException
-
-
Method Detail
-
getEnumeration
public Enumeration getEnumeration() throws JMSException
Gets an enumeration for browsing the current queue messages in the order they would be received.- Specified by:
getEnumeration
in interfaceQueueBrowser
- Returns:
- an enumeration for browsing the messages
- Throws:
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 interfaceEnumeration
- Returns:
- true if more messages to process
-
nextElement
public Object nextElement()
- Specified by:
nextElement
in interfaceEnumeration
- Returns:
- the next message
-
close
public void close() throws JMSException
- Specified by:
close
in interfaceQueueBrowser
- Throws:
JMSException
-
getQueue
public Queue getQueue() throws JMSException
Gets the queue associated with this queue browser.- Specified by:
getQueue
in interfaceQueueBrowser
- Returns:
- the queue
- Throws:
JMSException
- if the JMS provider fails to get the queue associated with this browser due to some internal error.
-
getMessageSelector
public String getMessageSelector() throws JMSException
- Specified by:
getMessageSelector
in interfaceQueueBrowser
- Throws:
JMSException
-
waitForMessage
protected void waitForMessage()
Wait on a semaphore for a fixed amount of time for a message to come in.- Throws:
JMSException
-
notifyMessageAvailable
protected void notifyMessageAvailable()
-
-