diff options
| author | Robert Godfrey <rgodfrey@apache.org> | 2014-10-31 20:17:17 +0000 |
|---|---|---|
| committer | Robert Godfrey <rgodfrey@apache.org> | 2014-10-31 20:17:17 +0000 |
| commit | f871676f6fc480bda7abc5f6ff4891529af5945b (patch) | |
| tree | 6c25e7762a973ba2b84d341d6aa54dbc5f60cef2 /qpid/java/client | |
| parent | 9c27d3ada9dd3d2e2ddd21f62c9697816cb72563 (diff) | |
| download | qpid-python-f871676f6fc480bda7abc5f6ff4891529af5945b.tar.gz | |
QPID-6206 : [Java Client] create new AMQDecoder for every reconnection attempt
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1635855 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/client')
| -rw-r--r-- | qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java | 3 | ||||
| -rw-r--r-- | qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java | 8 |
2 files changed, 9 insertions, 2 deletions
diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java index bcf0721aab..33c55ce922 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java @@ -143,7 +143,8 @@ public class AMQConnectionDelegate_8_0 implements AMQConnectionDelegate _conn.getProtocolHandler().setNetworkConnection(network, securityLayer.sender(network.getSender())); StateWaiter waiter = _conn.getProtocolHandler().createWaiter(openOrClosedStates); - _conn.getProtocolHandler().getProtocolSession().init(settings); + _conn.getProtocolHandler().init(settings); + // this blocks until the connection has been set up or when an error // has prevented the connection being set up diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java b/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java index 4886eabb90..c61469559a 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java @@ -66,6 +66,7 @@ import org.apache.qpid.protocol.AMQMethodEvent; import org.apache.qpid.protocol.AMQMethodListener; import org.apache.qpid.protocol.ProtocolEngine; import org.apache.qpid.thread.Threading; +import org.apache.qpid.transport.ConnectionSettings; import org.apache.qpid.transport.Sender; import org.apache.qpid.transport.TransportException; import org.apache.qpid.transport.network.NetworkConnection; @@ -194,7 +195,6 @@ public class AMQProtocolHandler implements ProtocolEngine _connection = con; _protocolSession = new AMQProtocolSession(this, _connection); _stateManager = new AMQStateManager(_protocolSession); - _decoder = new ClientDecoder(_protocolSession.getMethodProcessor()); _failoverHandler = new FailoverHandler(this); } @@ -958,4 +958,10 @@ public class AMQProtocolHandler implements ProtocolEngine { _decoder.setMaxFrameSize(frameMax == 0l || frameMax > (long) Integer.MAX_VALUE ? Integer.MAX_VALUE : (int) frameMax); } + + public void init(final ConnectionSettings settings) + { + _decoder = new ClientDecoder(_protocolSession.getMethodProcessor()); + _protocolSession.init(settings); + } } |
