Newer
Older
democall3 / src / server / jms / JmsConnection.java
geoma48p on 20 Jul 2015 1 KB Started transition to JMS.
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;
	}
	
}