You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ra...@apache.org on 2011/02/09 01:02:22 UTC
svn commit: r1068696 -
/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java
Author: rajith
Date: Wed Feb 9 00:02:21 2011
New Revision: 1068696
URL: http://svn.apache.org/viewvc?rev=1068696&view=rev
Log:
QPID-3042
The createSession method in Connection.java now waits until the connection state == OPEN before it actually sends the session-attach on the wire.
Modified:
qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java
Modified: qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java?rev=1068696&r1=1068695&r2=1068696&view=diff
==============================================================================
--- qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java (original)
+++ qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java Wed Feb 9 00:02:21 2011
@@ -313,6 +313,17 @@ public class Connection extends Connecti
{
synchronized (lock)
{
+ Waiter w = new Waiter(lock, timeout);
+ while (w.hasTime() && state != OPEN && error == null)
+ {
+ w.await();
+ }
+
+ if (state != OPEN)
+ {
+ throw new ConnectionException("Timed out waiting for connection to be ready. Current state is :" + state);
+ }
+
Session ssn = _sessionFactory.newSession(this, name, expiry);
sessions.put(name, ssn);
map(ssn);
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org