diff options
Diffstat (limited to 'java/client/src/main')
| -rw-r--r-- | java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java | 1 | ||||
| -rw-r--r-- | java/client/src/main/java/org/apache/qpidity/nclient/Client.java | 11 |
2 files changed, 11 insertions, 1 deletions
diff --git a/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java b/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java index 1bf1c5bc7f..e3c12a3f50 100644 --- a/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java +++ b/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java @@ -111,6 +111,7 @@ public class AMQConnectionDelegate_0_10 implements AMQConnectionDelegate, Closed } _qpidConnection.connect(brokerDetail.getHost(), brokerDetail.getPort(), _conn.getVirtualHost(), _conn.getUsername(), _conn.getPassword()); + _qpidConnection.setClosedListener(this); } catch (QpidException e) { diff --git a/java/client/src/main/java/org/apache/qpidity/nclient/Client.java b/java/client/src/main/java/org/apache/qpidity/nclient/Client.java index 08ad27fd54..1bb661c3ef 100644 --- a/java/client/src/main/java/org/apache/qpidity/nclient/Client.java +++ b/java/client/src/main/java/org/apache/qpidity/nclient/Client.java @@ -56,7 +56,14 @@ public class Client implements org.apache.qpidity.nclient.Connection public void exception(Throwable t) { - // XXX: need to propogate exception + if (_closedListner != null) + { + _closedListner.onClosed(ErrorCode.CONNECTION_ERROR,ErrorCode.CONNECTION_ERROR.getDesc()); + } + else + { + throw new RuntimeException("Connection closed",t); + } } @Override public void connectionClose(Channel context, ConnectionClose connectionClose) @@ -185,7 +192,9 @@ public class Client implements org.apache.qpidity.nclient.Connection public void setClosedListener(ClosedListener closedListner) { + _closedListner = closedListner; + System.out.println("setting connection listener " + _closedListner); } } |
