diff options
| author | Keith Wall <kwall@apache.org> | 2015-04-10 09:57:39 +0000 |
|---|---|---|
| committer | Keith Wall <kwall@apache.org> | 2015-04-10 09:57:39 +0000 |
| commit | 60c56cbf7bf8afd5dc577480853e7214cb60b3e2 (patch) | |
| tree | 472e786d636fd51ae12ea0061596ec7e0b64d811 /qpid/java/broker-plugins/management-http | |
| parent | b187311574bbf087f376256d237173b38a84fdbc (diff) | |
| download | qpid-python-60c56cbf7bf8afd5dc577480853e7214cb60b3e2.tar.gz | |
QPID-6485: [Java Broker] Remove superfluous find/get methods from the Broker configured object
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1672602 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/broker-plugins/management-http')
2 files changed, 19 insertions, 2 deletions
diff --git a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java index 4639236d60..f9293a33b0 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java +++ b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java @@ -22,6 +22,7 @@ package org.apache.qpid.server.management.plugin; import java.io.IOException; import java.io.Writer; +import java.net.InetSocketAddress; import java.net.SocketAddress; import java.security.GeneralSecurityException; import java.util.ArrayList; @@ -556,7 +557,18 @@ public class HttpManagement extends AbstractPluginAdapter<HttpManagement> implem @Override public AuthenticationProvider getAuthenticationProvider(SocketAddress localAddress) { - return getBroker().getAuthenticationProvider(localAddress); + InetSocketAddress inetSocketAddress = (InetSocketAddress)localAddress; + AuthenticationProvider provider = null; + Collection<Port<?>> ports = getBroker().getPorts(); + for (Port<?> p : ports) + { + if (p instanceof HttpPort && inetSocketAddress.getPort() == p.getPort()) + { + provider = ((HttpPort<?>) p).getAuthenticationProvider(); + break; + } + } + return provider; } @Override diff --git a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementTest.java b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementTest.java index aa3ebe055d..d1b923048b 100644 --- a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementTest.java +++ b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementTest.java @@ -25,6 +25,7 @@ import static org.mockito.Mockito.when; import java.net.InetSocketAddress; import java.net.SocketAddress; +import java.util.Collections; import java.util.HashMap; import java.util.Map; import java.util.UUID; @@ -39,6 +40,7 @@ import org.apache.qpid.server.model.ConfiguredObject; import org.apache.qpid.server.model.ConfiguredObjectFactory; import org.apache.qpid.server.model.ConfiguredObjectFactoryImpl; import org.apache.qpid.server.model.State; +import org.apache.qpid.server.model.port.HttpPort; import org.apache.qpid.test.utils.QpidTestCase; public class HttpManagementTest extends QpidTestCase @@ -115,7 +117,10 @@ public class HttpManagementTest extends QpidTestCase { SocketAddress localAddress = InetSocketAddress.createUnresolved("localhost", 8080); AuthenticationProvider brokerAuthenticationProvider = mock(AuthenticationProvider.class); - when(_broker.getAuthenticationProvider(localAddress)).thenReturn(brokerAuthenticationProvider); + HttpPort port = mock(HttpPort.class); + when(port.getPort()).thenReturn(8080); + when(port.getAuthenticationProvider()).thenReturn(brokerAuthenticationProvider); + when(_broker.getPorts()).thenReturn(Collections.singletonList(port)); AuthenticationProvider authenticationProvider = _management.getAuthenticationProvider(localAddress); assertEquals("Unexpected subject creator", brokerAuthenticationProvider, authenticationProvider); } |
