From 26df8693db78522d877eef1621ff59311b8834ac Mon Sep 17 00:00:00 2001
From: Jan Vales <jan@jvales.net>
Date: Mon, 6 May 2013 01:27:40 +0200
Subject: [PATCH] the whole pizzeria workflow. EXCEPT cooking the pizzas.
---
queues | 7 +-
.../sbc/valesriegler/DEBUG_CreateTable.java | 2 +-
.../valesriegler/cook/actions/PizzaInfo.java | 5 ++
.../messageListeners/CookRequestedPizza.java | 5 ++
.../tuwien/sbc/valesriegler/group/Group.java | 26 ++++---
.../group/actions/OrderRequest.java | 5 ++
.../group/actions/OrderResponse.java | 5 ++
.../group/actions/PayRequest.java | 17 +++++
.../group/actions/PayResponse.java | 24 +++++++
.../valesriegler/group/actions/TableFree.java | 17 +++++
.../group/actions/TableRequest.java | 5 ++
.../group/actions/TableResponse.java | 5 ++
.../group/jms/JMSGroupConnector.java | 48 +++++++++++--
.../sbc/valesriegler/types/GroupData.java | 10 +++
.../tuwien/sbc/valesriegler/types/Pizza.java | 2 +-
.../sbc/valesriegler/waiter/Waiter.java | 6 ++
.../jms/messageListeners/WantToPay.java | 67 +++++++++++++++++++
17 files changed, 237 insertions(+), 19 deletions(-)
create mode 100644 src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/PayRequest.java
create mode 100644 src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/PayResponse.java
create mode 100644 src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableFree.java
create mode 100644 src/main/java/at/ac/tuwien/sbc/valesriegler/waiter/jms/messageListeners/WantToPay.java
diff --git a/queues b/queues
index 3f463b9..511d112 100644
--- a/queues
+++ b/queues
@@ -23,7 +23,12 @@ Liste aller Messagequeues:
OrderedPizzas
Pizzen, die von Köchen gekocht werden sollen.
-
+
+ WantToPay
+ Sobald eine Gruppe fertig gegessen hat, will sie zahlen.
+
+ WantToLeave
+ Alle, die gehen wollen, bzw gegangen sind. Nichts liest aus dieser Queue.
----------------------
Wartende Gruppen
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/DEBUG_CreateTable.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/DEBUG_CreateTable.java
index 6e0feae..bfb941b 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/DEBUG_CreateTable.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/DEBUG_CreateTable.java
@@ -39,7 +39,7 @@ public class DEBUG_CreateTable {
tableprod.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
// Create Tables
- for (int i = 0; i < 3; i++) {
+ for (int i = 0; i < 2; i++) {
tableprod.send(session.createObjectMessage(new Table(i)));
}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/cook/actions/PizzaInfo.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/cook/actions/PizzaInfo.java
index 6248827..d8a5284 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/cook/actions/PizzaInfo.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/cook/actions/PizzaInfo.java
@@ -29,4 +29,9 @@ public class PizzaInfo extends AbstractAction implements Serializable {
return cookId;
}
+ @Override
+ public String toString() {
+ return "PizzaInfo [pizzaId=" + pizzaId + ", status=" + status + ", cookId=" + cookId + "]";
+ }
+
}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/cook/jms/messageListeners/CookRequestedPizza.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/cook/jms/messageListeners/CookRequestedPizza.java
index a689b61..a6babf1 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/cook/jms/messageListeners/CookRequestedPizza.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/cook/jms/messageListeners/CookRequestedPizza.java
@@ -71,4 +71,9 @@ public class CookRequestedPizza implements MessageListener {
log.error("EXCEPTION!", e);
}
}
+
+ @Override
+ public String toString() {
+ return "CookRequestedPizza [cook=" + cook + "]";
+ }
}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/Group.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/Group.java
index 2642063..94adccc 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/Group.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/Group.java
@@ -4,6 +4,8 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import at.ac.tuwien.sbc.valesriegler.group.actions.OrderRequest;
+import at.ac.tuwien.sbc.valesriegler.group.actions.PayRequest;
+import at.ac.tuwien.sbc.valesriegler.group.actions.TableFree;
import at.ac.tuwien.sbc.valesriegler.group.actions.TableRequest;
import at.ac.tuwien.sbc.valesriegler.types.GroupData;
import at.ac.tuwien.sbc.valesriegler.types.GroupState;
@@ -46,17 +48,12 @@ public class Group implements Runnable {
break; // do nothing.
case ORDERED:
break; // do nothing.
- case EATING:// just wait some more and request bill.
- // MessageProducer wantToPay =
- // session.createProducer(session.createQueue("WantToPay"));
- // wantToPay.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- // wantToPay.send(session.createObjectMessage(this));
+ case EATING: // request bill.
+ GroupAgent.getInstance().getGroupcomm().send(new PayRequest(groupData));
break;
case PAY:// leave table
- // MessageProducer wantToLeave =
- // session.createProducer(session.createQueue("LeftPizzaria"));
- // wantToLeave.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- // wantToLeave.send(session.createObjectMessage(this));
+ GroupAgent.getInstance().getGroupcomm().send(new TableFree(groupData));
+ groupData.setState(GroupState.GONE);
break;
case GONE:
break; // do nothing.
@@ -95,6 +92,7 @@ public class Group implements Runnable {
// Waiter telling group he/she forwarded the order.
public void orderReceived(int waiter) {
groupData.setState(GroupState.ORDERED);
+ groupData.setState(GroupState.EATING); // TODO: skip pizza creation step
groupData.setOrderWaiter(waiter);
new Thread(this).start();
log.debug("orderReceived(): " + this);
@@ -104,8 +102,16 @@ public class Group implements Runnable {
public void deliverPizzas(Order order, int waiter) {
groupData.setState(GroupState.EATING);
groupData.setOrder(order);
- groupData.setPizzaWaiter(waiter);
+ groupData.setServingWaiter(waiter);
new Thread(this).start();
log.debug("bringOrderedPizzas(): " + this);
}
+
+ // pay for the pizzas and leave
+ public void payForPizzas(int waiter) {
+ groupData.setState(GroupState.PAY);
+ groupData.setPayingWaiter(waiter);
+ new Thread(this).start();
+ log.debug("payForPizzas(): " + this);
+ }
}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/OrderRequest.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/OrderRequest.java
index c5f9f21..532c604 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/OrderRequest.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/OrderRequest.java
@@ -9,4 +9,9 @@ public class OrderRequest extends AbstractAction implements Serializable {
super(groupdata);
}
+ @Override
+ public String toString() {
+ return "OrderRequest []";
+ }
+
}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/OrderResponse.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/OrderResponse.java
index 137c6f5..0a828af 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/OrderResponse.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/OrderResponse.java
@@ -16,4 +16,9 @@ public class OrderResponse extends AbstractAction implements Serializable {
return waiterId;
}
+ @Override
+ public String toString() {
+ return "OrderResponse [waiterId=" + waiterId + "]";
+ }
+
}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/PayRequest.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/PayRequest.java
new file mode 100644
index 0000000..978db73
--- /dev/null
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/PayRequest.java
@@ -0,0 +1,17 @@
+package at.ac.tuwien.sbc.valesriegler.group.actions;
+
+import java.io.Serializable;
+
+import at.ac.tuwien.sbc.valesriegler.types.GroupData;
+
+public class PayRequest extends AbstractAction implements Serializable {
+ public PayRequest(GroupData groupdata) {
+ super(groupdata);
+ }
+
+ @Override
+ public String toString() {
+ return "PayRequest []";
+ }
+
+}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/PayResponse.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/PayResponse.java
new file mode 100644
index 0000000..40e4534
--- /dev/null
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/PayResponse.java
@@ -0,0 +1,24 @@
+package at.ac.tuwien.sbc.valesriegler.group.actions;
+
+import java.io.Serializable;
+
+import at.ac.tuwien.sbc.valesriegler.types.GroupData;
+
+public class PayResponse extends AbstractAction implements Serializable {
+ private final int waiterId;
+
+ public PayResponse(GroupData groupdata, int waiterId) {
+ super(groupdata);
+ this.waiterId = waiterId;
+ }
+
+ public int getWaiterId() {
+ return waiterId;
+ }
+
+ @Override
+ public String toString() {
+ return "PayResponse [waiterId=" + waiterId + "]";
+ }
+
+}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableFree.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableFree.java
new file mode 100644
index 0000000..3e3944e
--- /dev/null
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableFree.java
@@ -0,0 +1,17 @@
+package at.ac.tuwien.sbc.valesriegler.group.actions;
+
+import java.io.Serializable;
+
+import at.ac.tuwien.sbc.valesriegler.types.GroupData;
+
+public class TableFree extends AbstractAction implements Serializable {
+ public TableFree(GroupData groupdata) {
+ super(groupdata);
+ }
+
+ @Override
+ public String toString() {
+ return "TableFree []";
+ }
+
+}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableRequest.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableRequest.java
index 10ac6a7..03195c6 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableRequest.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableRequest.java
@@ -9,4 +9,9 @@ public class TableRequest extends AbstractAction implements Serializable {
super(groupdata);
}
+ @Override
+ public String toString() {
+ return "TableRequest []";
+ }
+
}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableResponse.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableResponse.java
index e7a73a0..c665274 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableResponse.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/actions/TableResponse.java
@@ -23,4 +23,9 @@ public class TableResponse extends AbstractAction implements Serializable {
return waiterId;
}
+ @Override
+ public String toString() {
+ return "TableResponse [table=" + table + ", waiterId=" + waiterId + "]";
+ }
+
}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/jms/JMSGroupConnector.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/jms/JMSGroupConnector.java
index ab6c479..17f359e 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/group/jms/JMSGroupConnector.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/group/jms/JMSGroupConnector.java
@@ -20,6 +20,9 @@ import at.ac.tuwien.sbc.valesriegler.group.GroupAgent;
import at.ac.tuwien.sbc.valesriegler.group.actions.AbstractAction;
import at.ac.tuwien.sbc.valesriegler.group.actions.OrderRequest;
import at.ac.tuwien.sbc.valesriegler.group.actions.OrderResponse;
+import at.ac.tuwien.sbc.valesriegler.group.actions.PayRequest;
+import at.ac.tuwien.sbc.valesriegler.group.actions.PayResponse;
+import at.ac.tuwien.sbc.valesriegler.group.actions.TableFree;
import at.ac.tuwien.sbc.valesriegler.group.actions.TableRequest;
import at.ac.tuwien.sbc.valesriegler.group.actions.TableResponse;
@@ -67,6 +70,12 @@ public class JMSGroupConnector extends AbstractGroupConnector implements Message
Group g = GroupAgent.getInstance().getGroupModel().getGroupByID(orderresponse.getGroupdata().getId());
g.orderReceived(orderresponse.getWaiterId());
return;
+ } else if (obj instanceof PayResponse) {
+ PayResponse payresponse = (PayResponse) obj;
+ log.debug("Received: " + payresponse);
+ Group g = GroupAgent.getInstance().getGroupModel().getGroupByID(payresponse.getGroupdata().getId());
+ g.payForPizzas(payresponse.getWaiterId());
+ return;
}
}
@@ -85,22 +94,49 @@ public class JMSGroupConnector extends AbstractGroupConnector implements Message
MessageProducer wantToSitAtTable = session.createProducer(session.createQueue("WantToSitAtTable"));
wantToSitAtTable.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
wantToSitAtTable.send(session.createObjectMessage(request));
- session.close();
- session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
MessageProducer informPizzariaGui = session.createProducer(session.createQueue("PizzeriaConnector"));
informPizzariaGui.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
informPizzariaGui.send(session.createObjectMessage(request));
session.close();
return;
+
} else if (request instanceof OrderRequest) {
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
- MessageProducer wantToSitAtTable = session.createProducer(session.createQueue("WantToOrder"));
- wantToSitAtTable.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- wantToSitAtTable.send(session.createObjectMessage(request));
+ MessageProducer wantToOrder = session.createProducer(session.createQueue("WantToOrder"));
+ wantToOrder.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ wantToOrder.send(session.createObjectMessage(request));
+
+ MessageProducer informPizzariaGui = session.createProducer(session.createQueue("PizzeriaConnector"));
+ informPizzariaGui.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ informPizzariaGui.send(session.createObjectMessage(request));
session.close();
+ return;
+
+ } else if (request instanceof PayRequest) {
+ Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ MessageProducer wantToPay = session.createProducer(session.createQueue("WantToPay"));
+ wantToPay.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ wantToPay.send(session.createObjectMessage(request));
+
+ MessageProducer informPizzariaGui = session.createProducer(session.createQueue("PizzeriaConnector"));
+ informPizzariaGui.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ informPizzariaGui.send(session.createObjectMessage(request));
+ session.close();
+ return;
+
+ } else if (request instanceof TableFree) {
+ Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ MessageProducer wantToSitAtTable = session.createProducer(session.createQueue("TablesFree"));
+ wantToSitAtTable.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ wantToSitAtTable.send(session.createObjectMessage(request.getGroupdata().getTable()));
+
+ request.getGroupdata().setTable(null);
+
+ MessageProducer wantToLeave = session.createProducer(session.createQueue("WantToLeave"));
+ wantToLeave.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ wantToLeave.send(session.createObjectMessage(request));
- session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
MessageProducer informPizzariaGui = session.createProducer(session.createQueue("PizzeriaConnector"));
informPizzariaGui.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
informPizzariaGui.send(session.createObjectMessage(request));
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/types/GroupData.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/types/GroupData.java
index 3bb874b..e8082e4 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/types/GroupData.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/types/GroupData.java
@@ -22,7 +22,9 @@ public class GroupData implements Serializable {
private int size;
private Table table;
+
private int tableWaiter;
+
private Order order;
private int orderWaiter;
private int servingWaiter;
@@ -47,6 +49,10 @@ public class GroupData implements Serializable {
return orderWaiter;
}
+ public int getPayingWaiter() {
+ return payingWaiter;
+ }
+
@Deprecated
public List<PizzaType> getPizzas() {
return pizzas;
@@ -86,6 +92,10 @@ public class GroupData implements Serializable {
this.orderWaiter = orderWaiter;
}
+ public void setPayingWaiter(int payingWaiter) {
+ this.payingWaiter = payingWaiter;
+ }
+
@Deprecated
public void setPizzas(List<PizzaType> pizzas) {
this.pizzas = pizzas;
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/types/Pizza.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/types/Pizza.java
index a7b8ad1..feb448d 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/types/Pizza.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/types/Pizza.java
@@ -25,7 +25,7 @@ public class Pizza implements Serializable {
@Override
public String toString() {
- return "Pizza [type=" + type + ", id=" + id + ", cookId=" + cookId + ", deliveryAgent=" + deliveryAgent + "]";
+ return "Pizza [id=" + id + ", type=" + type + ", cookId=" + cookId + ", deliveryAgent=" + deliveryAgent + "]";
}
}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/waiter/Waiter.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/waiter/Waiter.java
index 90788cb..95b961e 100644
--- a/src/main/java/at/ac/tuwien/sbc/valesriegler/waiter/Waiter.java
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/waiter/Waiter.java
@@ -11,6 +11,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import at.ac.tuwien.sbc.valesriegler.waiter.jms.messageListeners.WantToOrder;
+import at.ac.tuwien.sbc.valesriegler.waiter.jms.messageListeners.WantToPay;
import at.ac.tuwien.sbc.valesriegler.waiter.jms.messageListeners.WantToSitAtTable;
//TODO: needs a WaiterAgent and abstraction to support mzs + jms!
@@ -41,6 +42,11 @@ public class Waiter implements Serializable {
Session sessWantToOrder = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
MessageConsumer consWantToOrder = sessWantToOrder.createConsumer(sessWantToOrder.createQueue("WantToOrder"));
consWantToOrder.setMessageListener(new WantToOrder(this));
+
+ Session sessWantToPay = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ MessageConsumer consWantToPay = sessWantToPay.createConsumer(sessWantToPay.createQueue("WantToPay"));
+ consWantToPay.setMessageListener(new WantToPay(this));
+
} catch (Exception e) {
log.error("Caught: ", e);
}
diff --git a/src/main/java/at/ac/tuwien/sbc/valesriegler/waiter/jms/messageListeners/WantToPay.java b/src/main/java/at/ac/tuwien/sbc/valesriegler/waiter/jms/messageListeners/WantToPay.java
new file mode 100644
index 0000000..e263b0a
--- /dev/null
+++ b/src/main/java/at/ac/tuwien/sbc/valesriegler/waiter/jms/messageListeners/WantToPay.java
@@ -0,0 +1,67 @@
+package at.ac.tuwien.sbc.valesriegler.waiter.jms.messageListeners;
+
+import javax.jms.Connection;
+import javax.jms.DeliveryMode;
+import javax.jms.JMSException;
+import javax.jms.Message;
+import javax.jms.MessageListener;
+import javax.jms.MessageProducer;
+import javax.jms.ObjectMessage;
+import javax.jms.Session;
+
+import org.apache.activemq.ActiveMQConnectionFactory;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import at.ac.tuwien.sbc.valesriegler.group.actions.PayRequest;
+import at.ac.tuwien.sbc.valesriegler.group.actions.PayResponse;
+import at.ac.tuwien.sbc.valesriegler.waiter.Waiter;
+
+public class WantToPay implements MessageListener {
+ private static final Logger log = LoggerFactory.getLogger(WantToPay.class);
+ private final Waiter waiter;
+
+ public WantToPay(Waiter waiter) {
+ this.waiter = waiter;
+ }
+
+ @Override
+ public void onMessage(Message msg) {
+ try {
+ msg.acknowledge();
+ if (msg instanceof ObjectMessage) {
+ ObjectMessage objMsg = (ObjectMessage) msg;
+ Object obj = objMsg.getObject();
+
+ if (obj instanceof PayRequest) {
+ PayRequest payrequest = (PayRequest) obj;
+ log.debug("Received: " + payrequest);
+
+ // generate random delay
+ Thread.sleep((long) (Math.random() * 10000));
+
+ ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://localhost:61616");
+ Connection connection = connectionFactory.createConnection();
+ connection.start();
+ Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+
+ MessageProducer informGroup = session.createProducer(session.createQueue("GroupConnector"));
+ informGroup.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
+ PayResponse pr = new PayResponse(payrequest.getGroupdata(), waiter.getId());
+ informGroup.send(session.createObjectMessage(pr));
+
+ session.close();
+ connection.close();
+ } else {
+ log.warn("Received unknown Object: " + obj);
+ }
+ } else {
+ log.warn("Received unknown Message: " + msg);
+ }
+ } catch (JMSException e) {
+ log.error("EXCEPTION!", e);
+ } catch (InterruptedException e) {
+ log.error("EXCEPTION!", e);
+ }
+ }
+}
--
2.47.3