package server.jms; import java.util.Collection; import java.util.Enumeration; import java.util.TreeSet; import java.util.logging.Level; import java.util.logging.Logger; import javax.jms.Connection; import javax.jms.JMSException; import javax.jms.QueueBrowser; import javax.jms.Session; import javax.jms.TextMessage; import org.apache.activemq.ActiveMQConnectionFactory; /** * * @author Mark */ public class JmsConnection { private Connection connection; private Session session; public JmsConnection() { try { connection = new ActiveMQConnectionFactory().createConnection(); connection.start(); session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); } catch (JMSException ex) { Logger.getLogger(JmsConnection.class.getName()).log(Level.SEVERE, null, ex); } } public Collection<String> peekAll(String queueName) { Collection<String> messages = new TreeSet<String>(); try { QueueBrowser serverBrowser = session.createBrowser(session.createQueue(queueName)); Enumeration enumeration = serverBrowser.getEnumeration(); while(enumeration.hasMoreElements()) { String server = ((TextMessage)enumeration.nextElement()).getText(); messages.add(server); } } catch (JMSException ex) { Logger.getLogger(JmsConnection.class.getName()).log(Level.SEVERE, null, ex); } return messages; } }