You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kw...@apache.org on 2017/01/27 12:52:40 UTC

svn commit: r1780552 - /qpid/java/trunk/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0Impl.java

Author: kwall
Date: Fri Jan 27 12:52:40 2017
New Revision: 1780552

URL: http://svn.apache.org/viewvc?rev=1780552&view=rev
Log:
QPID-7531: [AMQP1.0] If there are no free channels, don't register the session

Modified:
    qpid/java/trunk/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0Impl.java

Modified: qpid/java/trunk/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0Impl.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0Impl.java?rev=1780552&r1=1780551&r2=1780552&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0Impl.java (original)
+++ qpid/java/trunk/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0Impl.java Fri Jan 27 12:52:40 2017
@@ -590,27 +590,28 @@ public class AMQPConnection_1_0Impl exte
                 sendingChannelId = getFirstFreeChannel();
                 if (sendingChannelId == -1)
                 {
-
                     closeConnection(ConnectionError.FRAMING_ERROR,
                                     "BEGIN received on channel "
                                     + receivingChannelId
                                     + ". There are no free channels for the broker to respond on.");
-
                 }
-                Session_1_0 session = new Session_1_0(this, begin, sendingChannelId, receivingChannelId);
-                session.create();
+                else
+                {
+                    Session_1_0 session = new Session_1_0(this, begin, sendingChannelId, receivingChannelId);
+                    session.create();
 
-                _receivingSessions[receivingChannelId] = session;
-                _sendingSessions[sendingChannelId] = session;
+                    _receivingSessions[receivingChannelId] = session;
+                    _sendingSessions[sendingChannelId] = session;
 
-                Begin beginToSend = new Begin();
-                beginToSend.setRemoteChannel(UnsignedShort.valueOf(receivingChannelId));
-                beginToSend.setNextOutgoingId(session.getNextOutgoingId());
-                beginToSend.setOutgoingWindow(session.getOutgoingWindowSize());
-                beginToSend.setIncomingWindow(session.getIncomingWindowSize());
-                sendFrame(sendingChannelId, beginToSend);
+                    Begin beginToSend = new Begin();
+                    beginToSend.setRemoteChannel(UnsignedShort.valueOf(receivingChannelId));
+                    beginToSend.setNextOutgoingId(session.getNextOutgoingId());
+                    beginToSend.setOutgoingWindow(session.getOutgoingWindowSize());
+                    beginToSend.setIncomingWindow(session.getIncomingWindowSize());
+                    sendFrame(sendingChannelId, beginToSend);
 
-                _sessions.add(session);
+                    _sessions.add(session);
+                }
             }
             else
             {



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org