diff options
| author | Robert Godfrey <rgodfrey@apache.org> | 2014-05-02 07:33:30 +0000 |
|---|---|---|
| committer | Robert Godfrey <rgodfrey@apache.org> | 2014-05-02 07:33:30 +0000 |
| commit | 0cb887d4930b1b50691174401cdad8b22848144f (patch) | |
| tree | a0a209475eeaf5441787d6126805eee124414ed6 /qpid/java | |
| parent | fa01188c2f8e445a2c8194727ee3e3f048710973 (diff) | |
| download | qpid-python-0cb887d4930b1b50691174401cdad8b22848144f.tar.gz | |
QPID-5673 : merge to 0.28 branch
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/0.28@1591819 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java')
2 files changed, 14 insertions, 7 deletions
diff --git a/qpid/java/amqp-1-0-common/src/main/java/org/apache/qpid/amqp_1_0/transport/ConnectionEndpoint.java b/qpid/java/amqp-1-0-common/src/main/java/org/apache/qpid/amqp_1_0/transport/ConnectionEndpoint.java index 92ddad1c67..7eafba7f31 100644 --- a/qpid/java/amqp-1-0-common/src/main/java/org/apache/qpid/amqp_1_0/transport/ConnectionEndpoint.java +++ b/qpid/java/amqp-1-0-common/src/main/java/org/apache/qpid/amqp_1_0/transport/ConnectionEndpoint.java @@ -398,6 +398,8 @@ public class ConnectionEndpoint implements DescribedTypeConstructorRegistry.Sour switch (_state) { case UNOPENED: + sendOpen((short)0,0); + sendClose(close); _state = ConnectionState.CLOSED; break; case AWAITING_OPEN: diff --git a/qpid/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Connection_1_0.java b/qpid/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Connection_1_0.java index 00c78581e1..d5e5e84626 100644 --- a/qpid/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Connection_1_0.java +++ b/qpid/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Connection_1_0.java @@ -133,7 +133,6 @@ public class Connection_1_0 implements ConnectionEventListener, AMQConnectionMod host = (String)_broker.getAttribute(Broker.DEFAULT_VIRTUAL_HOST); } _vhost = _broker.getVirtualHostRegistry().getVirtualHost(host); - _vhost.getConnectionRegistry().registerConnection(this); if(_vhost == null) { @@ -142,11 +141,14 @@ public class Connection_1_0 implements ConnectionEventListener, AMQConnectionMod err.setDescription("Unknown hostname " + _conn.getLocalHostname()); _conn.close(err); } - Subject authSubject = _subjectCreator.createSubjectWithGroups(_conn.getUser()); - _subject.getPrincipals().addAll(authSubject.getPrincipals()); - _subject.getPublicCredentials().addAll(authSubject.getPublicCredentials()); - _subject.getPrivateCredentials().addAll(authSubject.getPrivateCredentials()); - + else + { + _vhost.getConnectionRegistry().registerConnection(this); + Subject authSubject = _subjectCreator.createSubjectWithGroups(_conn.getUser()); + _subject.getPrincipals().addAll(authSubject.getPrincipals()); + _subject.getPublicCredentials().addAll(authSubject.getPublicCredentials()); + _subject.getPrivateCredentials().addAll(authSubject.getPrivateCredentials()); + } } public void remoteSessionCreation(SessionEndpoint endpoint) @@ -217,7 +219,10 @@ public class Connection_1_0 implements ConnectionEventListener, AMQConnectionMod { _closeTasks.clear(); } - _vhost.getConnectionRegistry().deregisterConnection(this); + if(_vhost != null) + { + _vhost.getConnectionRegistry().deregisterConnection(this); + } } |
