1 package at.ac.tuwien.sbc.valesriegler.cook;
3 import javax.jms.Connection;
4 import javax.jms.JMSException;
5 import javax.jms.MessageConsumer;
6 import javax.jms.Session;
8 import org.apache.activemq.ActiveMQConnectionFactory;
9 import org.slf4j.Logger;
10 import org.slf4j.LoggerFactory;
12 import at.ac.tuwien.sbc.valesriegler.common.HasId;
13 import at.ac.tuwien.sbc.valesriegler.cook.jms.messageListeners.CookRequestedPizza;
16 * (JMS)Cook is far too primitive to require any abstraction. It would take more
17 * time to it, than to code it twice.
22 public class JMSCook implements HasId {
23 private static final Logger log = LoggerFactory.getLogger(JMSCook.class);
24 private static int nextID = 0;
27 public static void main(String[] args) throws Exception {
28 new JMSCook(++nextID);
31 public JMSCook(int id) {
33 log.info("I AM A JMSCook WITH ID {}", this.id);
36 // Connecting to the Broker and to the output queue
37 ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://localhost:61616");
38 Connection connection = connectionFactory.createConnection();
41 Session sessWantToSit = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
42 MessageConsumer consWantToSit = sessWantToSit.createConsumer(sessWantToSit.createQueue("OrderedPizzas"));
43 consWantToSit.setMessageListener(new CookRequestedPizza(this));
44 } catch (JMSException e) {
45 log.error("EXCEPTION!", e);