You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2020/09/09 23:51:57 UTC

[qpid-broker-j] 03/03: QPID-8448: Make sure that actual connection is closed

This is an automated email from the ASF dual-hosted git repository.

orudyy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/qpid-broker-j.git

commit 5c2274f8d1d45f442b82d91ca1a247cfe9f76688
Author: Dedeepya T <de...@yahoo.co.in>
AuthorDate: Wed Sep 9 00:49:56 2020 +0100

    QPID-8448: Make sure that actual connection is closed
    
    This closes #59
---
 .../TlsOrPlainConnectionFactory.java               | 31 +++++++++++++++++-----
 1 file changed, 24 insertions(+), 7 deletions(-)

diff --git a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/portunification/TlsOrPlainConnectionFactory.java b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/portunification/TlsOrPlainConnectionFactory.java
index 5c094fb..c3d0ac7 100644
--- a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/portunification/TlsOrPlainConnectionFactory.java
+++ b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/portunification/TlsOrPlainConnectionFactory.java
@@ -127,13 +127,11 @@ public class TlsOrPlainConnectionFactory extends AbstractConnectionFactory
         @Override
         public void addListener(Listener listener)
         {
-            if (_actualConnection == null)
+            _listeners.add(listener);
+            AbstractConnection actualConnection = _actualConnection;
+            if (actualConnection != null)
             {
-                _listeners.add(listener);
-            }
-            else
-            {
-                _actualConnection.addListener(listener);
+                actualConnection.addListener(listener);
             }
         }
 
@@ -141,6 +139,11 @@ public class TlsOrPlainConnectionFactory extends AbstractConnectionFactory
         public void removeListener(Listener listener)
         {
             _listeners.remove(listener);
+            AbstractConnection actualConnection = _actualConnection;
+            if (actualConnection != null)
+            {
+                actualConnection.removeListener(listener);
+            }
         }
 
         @Override
@@ -157,6 +160,11 @@ public class TlsOrPlainConnectionFactory extends AbstractConnectionFactory
                 listener.onOpened(this);
             }
 
+            final AbstractConnection actualConnection = _actualConnection;
+            if (actualConnection != null)
+            {
+                actualConnection.onOpen();
+            }
         }
 
         @Override
@@ -167,6 +175,12 @@ public class TlsOrPlainConnectionFactory extends AbstractConnectionFactory
                 LOG.debug("onClose {}", this);
             }
 
+            final AbstractConnection actualConnection = _actualConnection;
+            if (actualConnection != null)
+            {
+                actualConnection.onClose();
+            }
+
             for (Listener listener : _listeners)
             {
                 listener.onClosed(this);
@@ -350,7 +364,10 @@ public class TlsOrPlainConnectionFactory extends AbstractConnectionFactory
 
         private SslConnection newSslConnection(final Connector connector, final EndPoint endPoint, final SSLEngine engine)
         {
-            return new SslConnection(connector.getByteBufferPool(), connector.getExecutor(), endPoint, engine);
+            final SslConnection sslConnection =
+                    new SslConnection(connector.getByteBufferPool(), connector.getExecutor(), endPoint, engine);
+            TlsOrPlainConnectionFactory.this.configure(sslConnection, _connector, _endPoint);
+            return sslConnection;
         }
 
 


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