You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ri...@apache.org on 2010/01/20 20:21:17 UTC
svn commit: r901341 - in /qpid/trunk/qpid/java: ./
client/src/main/java/org/apache/qpid/client/
client/src/main/java/org/apache/qpid/client/protocol/ test-profiles/
Author: ritchiem
Date: Wed Jan 20 19:21:16 2010
New Revision: 901341
URL: http://svn.apache.org/viewvc?rev=901341&view=rev
Log:
QPID-2349 : Fixed Protocol Version negotiation. The Negotiated protocol version was not given to the ProtocolSession.
Once this is done the correct delegate is enabled on connection.
Modified:
qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java
qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java
qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java
qpid/trunk/qpid/java/module.xml
qpid/trunk/qpid/java/test-profiles/Excludes
qpid/trunk/qpid/java/test-profiles/java.testprofile
Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java?rev=901341&r1=901340&r2=901341&view=diff
==============================================================================
--- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java (original)
+++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java Wed Jan 20 19:21:16 2010
@@ -516,6 +516,8 @@
_protocolHandler = new AMQProtocolHandler(this);
+ _logger.info("Connecting with ProtocolHandler Version:"+_protocolHandler.getProtocolVersion());
+
// We are not currently connected
_connected = false;
@@ -552,6 +554,8 @@
}
}
+ _logger.info("Connected with ProtocolHandler Version:"+_protocolHandler.getProtocolVersion());
+
if (_logger.isDebugEnabled())
{
_logger.debug("Are we connected:" + _connected);
@@ -619,13 +623,18 @@
{
try
{
- Class c = Class.forName(String.format
+ String delegateClassName = String.format
("org.apache.qpid.client.AMQConnectionDelegate_%s_%s",
- pe.getMajorVersion(), pe.getMinorVersion()));
+ pe.getMajorVersion(), pe.getMinorVersion());
+ _logger.info("Looking up delegate '" + delegateClassName + "' Based on PE:" + pe);
+ Class c = Class.forName(delegateClassName);
Class partypes[] = new Class[1];
partypes[0] = AMQConnection.class;
_delegate = (AMQConnectionDelegate) c.getConstructor(partypes).newInstance(this);
_sessions.setMaxChannelID(_delegate.getMaxChannelID());
+ //Update our session to use this new protocol version
+ _protocolHandler.getProtocolSession().setProtocolVersion(_delegate.getProtocolVersion());
+
}
catch (ClassNotFoundException e)
{
Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java?rev=901341&r1=901340&r2=901341&view=diff
==============================================================================
--- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java (original)
+++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java Wed Jan 20 19:21:16 2010
@@ -470,6 +470,7 @@
// connection.
ProtocolInitiation protocolInit = (ProtocolInitiation) message;
_suggestedProtocolVersion = protocolInit.checkVersion();
+ _logger.info("Broker suggested using protocol version:" + _suggestedProtocolVersion);
// get round a bug in old versions of qpid whereby the connection is not closed
_stateManager.changeState(AMQState.CONNECTION_CLOSED);
Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java?rev=901341&r1=901340&r2=901341&view=diff
==============================================================================
--- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java (original)
+++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java Wed Jan 20 19:21:16 2010
@@ -104,6 +104,7 @@
{
_protocolHandler = protocolHandler;
_protocolVersion = connection.getProtocolVersion();
+ _logger.info("Using ProtocolVersion for Session:" + _protocolVersion);
_methodDispatcher = ClientMethodDispatcherImpl.newMethodDispatcher(ProtocolVersion.getLatestSupportedVersion(),
this);
_connection = connection;
@@ -400,6 +401,7 @@
public void setProtocolVersion(final ProtocolVersion pv)
{
+ _logger.info("Setting ProtocolVersion to :" + pv);
_protocolVersion = pv;
_methodRegistry = MethodRegistry.getMethodRegistry(pv);
_methodDispatcher = ClientMethodDispatcherImpl.newMethodDispatcher(pv, this);
Modified: qpid/trunk/qpid/java/module.xml
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/module.xml?rev=901341&r1=901340&r2=901341&view=diff
==============================================================================
--- qpid/trunk/qpid/java/module.xml (original)
+++ qpid/trunk/qpid/java/module.xml Wed Jan 20 19:21:16 2010
@@ -278,6 +278,7 @@
<sysproperty key="broker.stopped" value="${broker.stopped}" />
<sysproperty key="broker.config" value="${broker.config}" />
<sysproperty key="test.output" value="${module.results}"/>
+ <sysproperty key="qpid.amqp.version" value="${qpid.amqp.version}"/>
<syspropertyset>
<propertyref prefix="test"/>
Modified: qpid/trunk/qpid/java/test-profiles/Excludes
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/test-profiles/Excludes?rev=901341&r1=901340&r2=901341&view=diff
==============================================================================
--- qpid/trunk/qpid/java/test-profiles/Excludes (original)
+++ qpid/trunk/qpid/java/test-profiles/Excludes Wed Jan 20 19:21:16 2010
@@ -29,8 +29,3 @@
org.apache.qpid.test.unit.ack.AcknowledgeAfterFailoverOnMessageTest#*
org.apache.qpid.test.unit.ack.AcknowledgeAfterFailoverTest#*
-// The following tests exibit random failures and are temporarily excluded.
-// QPID-2224 Random Test failures - The test needs to be fixed.
-org.apache.qpid.transport.network.mina.MINANetworkDriverTest#*
-// QPID-2225 Random Test failures against the in-vm broker.
-org.apache.qpid.test.unit.ack.FailoverBeforeConsumingRecover#*
Modified: qpid/trunk/qpid/java/test-profiles/java.testprofile
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/test-profiles/java.testprofile?rev=901341&r1=901340&r2=901341&view=diff
==============================================================================
--- qpid/trunk/qpid/java/test-profiles/java.testprofile (original)
+++ qpid/trunk/qpid/java/test-profiles/java.testprofile Wed Jan 20 19:21:16 2010
@@ -3,5 +3,8 @@
broker.clean=${test.profiles}/clean-dir ${build.data} ${project.root}/build/work/derbyDB
broker.ready=BRK-1004
broker.stopped=Exception
-qpid.amqp.version=0-9
+#
+# Do not enable. Allow client to attempt 0-10 and negotiate downwards
+#
+#qpid.amqp.version=0-91
profile.excludes=JavaTransientExcludes JavaStandaloneExcludes 08StandaloneExcludes
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org