diff options
| author | Robert Godfrey <rgodfrey@apache.org> | 2009-11-26 16:14:19 +0000 |
|---|---|---|
| committer | Robert Godfrey <rgodfrey@apache.org> | 2009-11-26 16:14:19 +0000 |
| commit | d37f3ad0906b4ff7742e2853204da4ef333eb1f9 (patch) | |
| tree | 9bd8e9e21e4fa0a710822cb31f8e866b49399f00 /qpid/java/common/src | |
| parent | 24bae74ca6972d0b127e9e576de43c6be9cf138d (diff) | |
| download | qpid-python-d37f3ad0906b4ff7742e2853204da4ef333eb1f9.tar.gz | |
Fixes for 0-9-1 support
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@884619 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/common/src')
| -rw-r--r-- | qpid/java/common/src/main/java/org/apache/qpid/AMQConnectionException.java | 2 | ||||
| -rw-r--r-- | qpid/java/common/src/main/java/org/apache/qpid/framing/ProtocolInitiation.java | 19 |
2 files changed, 13 insertions, 8 deletions
diff --git a/qpid/java/common/src/main/java/org/apache/qpid/AMQConnectionException.java b/qpid/java/common/src/main/java/org/apache/qpid/AMQConnectionException.java index afd415b1eb..8ef6facef1 100644 --- a/qpid/java/common/src/main/java/org/apache/qpid/AMQConnectionException.java +++ b/qpid/java/common/src/main/java/org/apache/qpid/AMQConnectionException.java @@ -60,7 +60,7 @@ public class AMQConnectionException extends AMQException public AMQFrame getCloseFrame(int channel) { MethodRegistry reg = MethodRegistry.getMethodRegistry(new ProtocolVersion(major,minor)); - return new AMQFrame(channel, + return new AMQFrame(0, reg.createConnectionCloseBody(getErrorCode().getCode(), new AMQShortString(getMessage()), _classId, diff --git a/qpid/java/common/src/main/java/org/apache/qpid/framing/ProtocolInitiation.java b/qpid/java/common/src/main/java/org/apache/qpid/framing/ProtocolInitiation.java index d503ed7ea3..ac21fe4243 100644 --- a/qpid/java/common/src/main/java/org/apache/qpid/framing/ProtocolInitiation.java +++ b/qpid/java/common/src/main/java/org/apache/qpid/framing/ProtocolInitiation.java @@ -54,7 +54,8 @@ public class ProtocolInitiation extends AMQDataBlock implements EncodableAMQData public ProtocolInitiation(ProtocolVersion pv) { - this(AMQP_HEADER, CURRENT_PROTOCOL_CLASS, + this(AMQP_HEADER, + pv.equals(ProtocolVersion.v0_91) ? 0 : CURRENT_PROTOCOL_CLASS, pv.equals(ProtocolVersion.v0_91) ? 0 : TCP_PROTOCOL_INSTANCE, pv.equals(ProtocolVersion.v0_91) ? 9 : pv.getMajorVersion(), pv.equals(ProtocolVersion.v0_91) ? 1 : pv.getMinorVersion()); @@ -159,11 +160,6 @@ public class ProtocolInitiation extends AMQDataBlock implements EncodableAMQData } } } - if (_protocolClass != CURRENT_PROTOCOL_CLASS) - { - throw new AMQProtocolClassException("Protocol class " + CURRENT_PROTOCOL_CLASS + " was expected; received " + - _protocolClass, null); - } ProtocolVersion pv; @@ -171,7 +167,16 @@ public class ProtocolInitiation extends AMQDataBlock implements EncodableAMQData if(_protocolInstance == 0 && _protocolMajor == 9 && _protocolMinor == 1) { pv = ProtocolVersion.v0_91; - + if (_protocolClass != 0) + { + throw new AMQProtocolClassException("Protocol class " + 0 + " was expected; received " + + _protocolClass, null); + } + } + else if (_protocolClass != CURRENT_PROTOCOL_CLASS) + { + throw new AMQProtocolClassException("Protocol class " + CURRENT_PROTOCOL_CLASS + " was expected; received " + + _protocolClass, null); } else if (_protocolInstance != TCP_PROTOCOL_INSTANCE) { |
