summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Greig <rgreig@apache.org>2007-02-07 23:30:22 +0000
committerRobert Greig <rgreig@apache.org>2007-02-07 23:30:22 +0000
commit62c172a8178793fa44f590ce5b3d072302c7a450 (patch)
treeb39f8f2cd8f9334f8d80a3aee547013bc827c9b1
parent74efb78118ccbac87face808290e2ff1e1d40f1a (diff)
downloadqpid-python-62c172a8178793fa44f590ce5b3d072302c7a450.tar.gz
Added a system property qpid.accept.broker.version to allow the client to accept whatever version the broker offers on connection negotiation. Useful when testing different broker implementations that may not be in sync with Qpid versioning.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@504736 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionStartMethodHandler.java25
1 files changed, 17 insertions, 8 deletions
diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionStartMethodHandler.java b/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionStartMethodHandler.java
index 66fa9de92c..1dd9df0088 100644
--- a/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionStartMethodHandler.java
+++ b/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionStartMethodHandler.java
@@ -63,7 +63,7 @@ public class ConnectionStartMethodHandler implements StateAwareMethodListener
byte major = (byte) body.versionMajor;
byte minor = (byte) body.versionMinor;
- if(checkVersionOK(major, minor))
+ if (checkVersionOK(major, minor))
{
protocolSession.setProtocolVersion(major, minor);
@@ -169,16 +169,25 @@ public class ConnectionStartMethodHandler implements StateAwareMethodListener
private boolean checkVersionOK(byte versionMajor, byte versionMinor)
{
- byte[][] supportedVersions = ProtocolVersionList.pv;
- boolean supported = false;
- int i = supportedVersions.length;
- while(i-- != 0 && !supported)
+ // this system property allows the client to accept whatever version the broker
+ // offers. Useful only when doing testing.
+ if (Boolean.getBoolean("qpid.accept.broker.version"))
{
- supported = (supportedVersions[i][ProtocolVersionList.PROTOCOL_MAJOR] == versionMajor)
- && (supportedVersions[i][ProtocolVersionList.PROTOCOL_MINOR] == versionMinor);
+ return true;
}
+ else
+ {
+ byte[][] supportedVersions = ProtocolVersionList.pv;
+ boolean supported = false;
+ int i = supportedVersions.length;
+ while(i-- != 0 && !supported)
+ {
+ supported = (supportedVersions[i][ProtocolVersionList.PROTOCOL_MAJOR] == versionMajor)
+ && (supportedVersions[i][ProtocolVersionList.PROTOCOL_MINOR] == versionMinor);
+ }
- return supported;
+ return supported;
+ }
}
private String getFullSystemInfo()