1 package at.ac.tuwien.sbc.valesriegler.waiter.jms.messageListeners;
3 import javax.jms.Message;
4 import javax.jms.MessageListener;
6 import org.slf4j.Logger;
7 import org.slf4j.LoggerFactory;
9 import at.ac.tuwien.sbc.valesriegler.waiter.Waiter;
11 public class WantToOrder implements MessageListener {
12 private static final Logger log = LoggerFactory.getLogger(WantToOrder.class);
13 private final Waiter waiter;
15 public WantToOrder(Waiter waiter) {
20 public void onMessage(Message m) {
23 // if (m instanceof ObjectMessage) {
24 // ObjectMessage pizzaMessage = (ObjectMessage) m;
25 // Object data = pizzaMessage.getObject();
27 // if (data instanceof Group) {
28 // Group group = (Group) data;
29 log.debug("Received: " + m);
31 // // generate random delay
32 // Thread.sleep((long) (Math.random() * 10000));
34 // ActiveMQConnectionFactory connectionFactory = new
35 // ActiveMQConnectionFactory("tcp://localhost:61616");
36 // Connection connection = connectionFactory.createConnection();
37 // connection.start();
38 // Session session = connection.createSession(false,
39 // Session.AUTO_ACKNOWLEDGE);
41 // MessageProducer prodOP =
42 // session.createProducer(session.createQueue("OrderedPizzas"));
43 // prodOP.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
45 // // Create the queue for the cooks.
46 // Order o = group.askForOrder(waiter);
47 // for (PizzaType p : o.getOrdered()) {
48 // ObjectMessage message = session.createObjectMessage(p);
49 // prodOP.send(message);
52 // // Also put the order in the Pending order queue for the waiter to
54 // MessageProducer prodPending =
55 // session.createProducer(session.createQueue("PendingOrders"));
56 // prodPending.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
57 // ObjectMessage message = session.createObjectMessage(o);
58 // prodPending.send(message);
61 // connection.close();
63 // log.warn("Received unknown Object: " + data);
66 // log.warn("Received unknown Message: " + m);
68 // } catch (JMSException e) {
69 // log.error("EXCEPTION!", e);
70 // } catch (InterruptedException e) {
71 // log.error("EXCEPTION!", e);