diff options
| author | Robert Gemmell <robbie@apache.org> | 2010-04-09 14:16:08 +0000 |
|---|---|---|
| committer | Robert Gemmell <robbie@apache.org> | 2010-04-09 14:16:08 +0000 |
| commit | 1209b7fc315cd3c84bbf959b7ffeac5eb01fa41c (patch) | |
| tree | 214cc772b0b90ada2306b238fa0bf4d75669bf06 /qpid/java/common/src | |
| parent | e5c466f5310f619f32af50a15909b1d081afd828 (diff) | |
| download | qpid-python-1209b7fc315cd3c84bbf959b7ffeac5eb01fa41c.tar.gz | |
QPID-2379: add Connection.close() method implementation
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@932428 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/common/src')
| -rw-r--r-- | qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java b/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java index 2ca5d28f42..1f559f690f 100644 --- a/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java +++ b/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java @@ -532,13 +532,23 @@ public class Connection extends ConnectionInvoker public void close() { + close(ConnectionCloseCode.NORMAL, null); + } + + public void mgmtClose() + { + close(ConnectionCloseCode.CONNECTION_FORCED, "The connection was closed using the broker's management interface."); + } + + public void close(ConnectionCloseCode replyCode, String replyText, Option ... _options) + { synchronized (lock) { switch (state) { case OPEN: state = CLOSING; - connectionClose(ConnectionCloseCode.NORMAL, null); + connectionClose(replyCode, replyText, _options); Waiter w = new Waiter(lock, timeout); while (w.hasTime() && state == CLOSING && error == null) { @@ -547,14 +557,14 @@ public class Connection extends ConnectionInvoker if (error != null) { - close(); + close(replyCode, replyText, _options); throw new ConnectionException(error); } switch (state) { case CLOSING: - close(); + close(replyCode, replyText, _options); throw new ConnectionException("close() timed out"); case CLOSED: break; |
