Repository: qpid-broker-j Updated Branches: refs/heads/master 1857f0b0a -> 35bc1cd00
QPID-7731: Address review comments from Keith Wall Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/be26c8b9 Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/be26c8b9 Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/be26c8b9 Branch: refs/heads/master Commit: be26c8b9801f5e71adc0881e3374b8590fafb636 Parents: 1857f0b Author: Alex Rudyy <oru...@apache.org> Authored: Thu May 25 16:53:32 2017 +0100 Committer: Alex Rudyy <oru...@apache.org> Committed: Thu May 25 23:00:10 2017 +0100 ---------------------------------------------------------------------- .../apache/qpid/server/model/port/HttpPort.java | 25 ++++++++++++-------- .../qpid/server/model/port/PortManager.java | 4 ++-- .../management/plugin/HttpManagement.java | 19 ++++++++++----- .../TlsOrPlainConnectionFactory.java | 10 ++++++++ .../transport/websocket/WebSocketProvider.java | 11 +++++++-- 5 files changed, 49 insertions(+), 20 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/be26c8b9/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPort.java ---------------------------------------------------------------------- diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPort.java b/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPort.java index fc2b5e0..6b3783b 100644 --- a/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPort.java +++ b/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPort.java @@ -42,17 +42,20 @@ public interface HttpPort<X extends HttpPort<X>> extends ClientAuthCapablePort<X String PORT_HTTP_NUMBER_OF_SELECTORS = "qpid.port.http.threadPool.numberOfSelectors"; @SuppressWarnings("unused") - @ManagedContextDefault(name = PORT_HTTP_NUMBER_OF_SELECTORS) + @ManagedContextDefault(name = PORT_HTTP_NUMBER_OF_SELECTORS, + description = "Desired number of selectors, if negative the number of selector is determined by Jetty") long DEFAULT_PORT_HTTP_NUMBER_OF_SELECTORS = -1; String PORT_HTTP_NUMBER_OF_ACCEPTORS = "qpid.port.http.threadPool.numberOfAcceptors"; @SuppressWarnings("unused") - @ManagedContextDefault(name = PORT_HTTP_NUMBER_OF_ACCEPTORS) + @ManagedContextDefault(name = PORT_HTTP_NUMBER_OF_ACCEPTORS, + description = "Desired number of acceptors. If negative the number of acceptors is determined by Jetty." + + " If zero, the selector threads are used as acceptors.") long DEFAULT_PORT_HTTP_NUMBER_OF_ACCEPTORS = -1; String PORT_HTTP_ACCEPT_BACKLOG = "qpid.port.http.acceptBacklog"; @SuppressWarnings("unused") - @ManagedContextDefault(name = PORT_HTTP_ACCEPT_BACKLOG) + @ManagedContextDefault(name = PORT_HTTP_ACCEPT_BACKLOG, description = "The size of the pending connection backlog") int DEFAULT_PORT_HTTP_ACCEPT_BACKLOG = 1024; @ManagedAttribute(defaultValue = "*") @@ -105,20 +108,22 @@ public interface HttpPort<X extends HttpPort<X>> extends ClientAuthCapablePort<X + "matches the HTTP Host in the request") boolean isManageBrokerOnNoAliasMatch(); - @DerivedAttribute(description = "Desired number of acceptor threads. You can set it to negative value" - + " in order to delegate its evaluation to the http server.") + @DerivedAttribute(description = "Desired number of acceptors. See context variable '" + + PORT_HTTP_NUMBER_OF_ACCEPTORS + + "'") int getDesiredNumberOfAcceptors(); - @DerivedAttribute(description = "Desired number of selector threads. You can set it to negative value" - + " in order to delegate its evaluation to the http server.") + @DerivedAttribute(description = "Desired number of selectors. See context variable '" + + PORT_HTTP_NUMBER_OF_ACCEPTORS + + "'") int getDesiredNumberOfSelectors(); - @DerivedAttribute (description = "Size of accepts backlog") + @DerivedAttribute(description = "Size of accept backlog") int getAcceptBacklogSize(); - @DerivedAttribute (description = "Actual number of acceptor threads.") + @DerivedAttribute(description = "Actual number of acceptors.") int getNumberOfAcceptors(); - @DerivedAttribute (description = "Actual number of selector threads.") + @DerivedAttribute(description = "Actual number of selectors.") int getNumberOfSelectors(); } http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/be26c8b9/broker-core/src/main/java/org/apache/qpid/server/model/port/PortManager.java ---------------------------------------------------------------------- diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/port/PortManager.java b/broker-core/src/main/java/org/apache/qpid/server/model/port/PortManager.java index 5bbfa8f..ed58270 100644 --- a/broker-core/src/main/java/org/apache/qpid/server/model/port/PortManager.java +++ b/broker-core/src/main/java/org/apache/qpid/server/model/port/PortManager.java @@ -28,7 +28,7 @@ public interface PortManager int getBoundPort(HttpPort httpPort); - int getNumberOfAcceptors(HttpPortImpl httpPort); + int getNumberOfAcceptors(HttpPort httpPort); - int getNumberOfSelectors(HttpPortImpl httpPort); + int getNumberOfSelectors(HttpPort httpPort); } http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/be26c8b9/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java ---------------------------------------------------------------------- diff --git a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java index 9d12603..ea1a76b 100644 --- a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java +++ b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java @@ -107,10 +107,10 @@ import org.apache.qpid.server.model.Transport; import org.apache.qpid.server.model.TrustStore; import org.apache.qpid.server.model.adapter.AbstractPluginAdapter; import org.apache.qpid.server.model.port.HttpPort; -import org.apache.qpid.server.model.port.HttpPortImpl; import org.apache.qpid.server.model.port.PortManager; import org.apache.qpid.server.transport.PortBindFailureException; import org.apache.qpid.server.transport.network.security.ssl.SSLUtil; +import org.apache.qpid.server.util.DaemonThreadFactory; import org.apache.qpid.server.util.ServerScopedRuntimeException; @ManagedObject( category = false, type = HttpManagement.PLUGIN_TYPE ) @@ -279,7 +279,7 @@ public class HttpManagement extends AbstractPluginAdapter<HttpManagement> implem _logger.debug("Starting up web server on {}", ports); _allowPortActivation = true; - _jettyServerExecutor = Executors.newSingleThreadExecutor((Runnable r) -> new Thread(r, "Jetty-Server-Thread")); + _jettyServerExecutor = Executors.newSingleThreadExecutor(new DaemonThreadFactory("Jetty-Server-Thread")); Server server = new Server(new ExecutorThreadPool(_jettyServerExecutor)); int lastPort = -1; for (HttpPort<?> port : ports) @@ -410,7 +410,7 @@ public class HttpManagement extends AbstractPluginAdapter<HttpManagement> implem } @Override - public int getNumberOfAcceptors(HttpPortImpl httpPort) + public int getNumberOfAcceptors(HttpPort httpPort) { ServerConnector c = _portConnectorMap.get(httpPort); if (c != null) @@ -424,7 +424,7 @@ public class HttpManagement extends AbstractPluginAdapter<HttpManagement> implem } @Override - public int getNumberOfSelectors(HttpPortImpl httpPort) + public int getNumberOfSelectors(HttpPort httpPort) { ServerConnector c = _portConnectorMap.get(httpPort); if (c != null) @@ -521,13 +521,20 @@ public class HttpManagement extends AbstractPluginAdapter<HttpManagement> implem @Override public void handshakeFailed(final Event event, final Throwable failure) { + SSLEngine sslEngine = event.getSSLEngine(); if (_logger.isDebugEnabled()) { - _logger.info("TLS handshake failed", failure); + _logger.info("TLS handshake failed: host='{}', port={}", + sslEngine.getPeerHost(), + sslEngine.getPeerPort(), + failure); } else { - _logger.info("TLS handshake failed: " + failure); + _logger.info("TLS handshake failed: host='{}', port={}: {}", + sslEngine.getPeerHost(), + sslEngine.getPeerPort(), + String.valueOf(failure)); } } }); http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/be26c8b9/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/portunification/TlsOrPlainConnectionFactory.java ---------------------------------------------------------------------- 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 860076f..19685a2 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 @@ -32,12 +32,14 @@ import org.eclipse.jetty.io.AbstractConnection; import org.eclipse.jetty.io.Connection; import org.eclipse.jetty.io.EndPoint; import org.eclipse.jetty.io.ssl.SslConnection; +import org.eclipse.jetty.io.ssl.SslHandshakeListener; import org.eclipse.jetty.server.AbstractConnectionFactory; import org.eclipse.jetty.server.ConnectionFactory; import org.eclipse.jetty.server.Connector; import org.eclipse.jetty.util.BufferUtil; import org.eclipse.jetty.util.Callback; import org.eclipse.jetty.util.annotation.Name; +import org.eclipse.jetty.util.component.ContainerLifeCycle; import org.eclipse.jetty.util.log.Log; import org.eclipse.jetty.util.log.Logger; import org.eclipse.jetty.util.ssl.SslContextFactory; @@ -282,6 +284,14 @@ public class TlsOrPlainConnectionFactory extends AbstractConnectionFactory sslConnection.setRenegotiationAllowed(_sslContextFactory.isRenegotiationAllowed()); _actualConnection = sslConnection; + if (_connector instanceof ContainerLifeCycle) + { + ContainerLifeCycle container = (ContainerLifeCycle)_connector; + container.getBeans(SslHandshakeListener.class).forEach(sslConnection::addHandshakeListener); + } + getBeans(SslHandshakeListener.class).forEach(sslConnection::addHandshakeListener); + + ConnectionFactory next = _connector.getConnectionFactory(_nextProtocol); final EndPoint decryptedEndPoint = sslConnection.getDecryptedEndPoint(); http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/be26c8b9/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java ---------------------------------------------------------------------- diff --git a/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java b/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java index 2e5aba1..1240716 100644 --- a/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java +++ b/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java @@ -163,13 +163,20 @@ class WebSocketProvider implements AcceptingTransport @Override public void handshakeFailed(final Event event, final Throwable failure) { + SSLEngine sslEngine = event.getSSLEngine(); if (LOGGER.isDebugEnabled()) { - LOGGER.info("TLS handshake failed", failure); + LOGGER.info("TLS handshake failed: host='{}', port={}", + sslEngine.getPeerHost(), + sslEngine.getPeerPort(), + failure); } else { - LOGGER.info("TLS handshake failed: " + failure); + LOGGER.info("TLS handshake failed: host='{}', port={}: {}", + sslEngine.getPeerHost(), + sslEngine.getPeerPort(), + String.valueOf(failure)); } } }); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org