package fr.mch.mdo.applets;
import java.util.HashMap;
import java.util.Map;
import javax.jms.Connection;
import javax.jms.JMSException;
import javax.jms.Queue;
import org.hornetq.api.core.TransportConfiguration;
import org.hornetq.api.jms.HornetQJMSClient;
import org.hornetq.api.jms.JMSFactoryType;
import org.hornetq.core.remoting.impl.netty.NettyConnectorFactory;
import org.hornetq.core.remoting.impl.netty.TransportConstants;
import org.hornetq.jms.client.HornetQConnectionFactory;
public class JmsClientPrinterQueue
{
private Connection connection;
private Queue queue;
public JmsClientPrinterQueue() {
Map<String, Object> connectionParams = new HashMap<String, Object>();
connectionParams.put(TransportConstants.PORT_PROP_NAME, "5445");
connectionParams.put(TransportConstants.HOST_PROP_NAME, "localhost");
TransportConfiguration transportConfiguration = new TransportConfiguration(NettyConnectorFactory.class.getName(), connectionParams);
//
HornetQConnectionFactory connectionFactory = HornetQJMSClient.createConnectionFactoryWithoutHA(JMSFactoryType.CF, transportConfiguration);
try {
connection = connectionFactory.createConnection("printer", "printer");
} catch (JMSException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// Step 9. create the JMS management queue.
// It is a "special" queue and it is not looked up from JNDI but
// constructed directly
// see hornetq-jms.xml configuration file in server side
queue = HornetQJMSClient.createQueue("printerQueue");
}
/**
* @param connection the connection to set
*/
public void setConnection(Connection connection) {
this.connection = connection;
}
/**
* @return the connection
*/
public Connection getConnection() {
return connection;
}
/**
* @param queue the queue to set
*/
public void setQueue(Queue queue) {
this.queue = queue;
}
/**
* @return the queue
*/
public Queue getQueue() {
return queue;
}
}