You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kw...@apache.org on 2017/07/20 06:36:01 UTC
qpid-broker-j git commit: QPID-7789: [Java Broker] [Management
Console] Allow saslExchangeExpiry timeout to be overidden.
Repository: qpid-broker-j
Updated Branches:
refs/heads/master f2bce8185 -> a039459c1
QPID-7789: [Java Broker] [Management Console] Allow saslExchangeExpiry timeout to be overidden.
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/a039459c
Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/a039459c
Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/a039459c
Branch: refs/heads/master
Commit: a039459c1ccd67ebf45842afe543bd64e52c3af1
Parents: f2bce81
Author: Keith Wall <ke...@gmail.com>
Authored: Thu Jul 20 07:32:51 2017 +0100
Committer: Keith Wall <ke...@gmail.com>
Committed: Thu Jul 20 07:34:06 2017 +0100
----------------------------------------------------------------------
.../management/plugin/HttpManagement.java | 10 +++++++-
.../plugin/HttpManagementConfiguration.java | 25 +++++++++++++-------
.../plugin/servlet/rest/RestServlet.java | 4 ++--
.../plugin/servlet/rest/SaslServlet.java | 4 ++--
.../rest/RestUserPreferenceHandlerTest.java | 4 ++--
5 files changed, 32 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/a039459c/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 4b50431..5876276 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
@@ -176,6 +176,7 @@ public class HttpManagement extends AbstractPluginAdapter<HttpManagement> implem
private Map<HttpPort<?>, ServerConnector> _portConnectorMap = new HashMap<>();
private volatile boolean _serveUncompressedDojo;
+ private volatile Long _saslExchangeExpiry;
private volatile ExecutorService _jettyServerExecutor;
@ManagedObjectFactoryConstructor
@@ -188,7 +189,8 @@ public class HttpManagement extends AbstractPluginAdapter<HttpManagement> implem
protected void onOpen()
{
super.onOpen();
- _serveUncompressedDojo = Boolean.TRUE.equals(getContextValue(Boolean.class, "qpid.httpManagement.serveUncompressedDojo"));
+ _serveUncompressedDojo = Boolean.TRUE.equals(getContextValue(Boolean.class, "qpid.httpManagement.serveUncompressedDojo"));
+ _saslExchangeExpiry = getContextValue(Long.class, SASL_EXCHANGE_EXPIRY_CONTEXT_NAME);
}
@StateTransition(currentState = {State.UNINITIALIZED,State.ERRORED}, desiredState = State.ACTIVE)
@@ -835,6 +837,12 @@ public class HttpManagement extends AbstractPluginAdapter<HttpManagement> implem
}
}
+ @Override
+ public long getSaslExchangeExpiry()
+ {
+ return _saslExchangeExpiry;
+ }
+
private static class QBBTrackingThreadPool extends QueuedThreadPool
{
private final Map<Thread, QpidByteBuffer> _cachedBufferMap = new ConcurrentHashMap<>();
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/a039459c/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementConfiguration.java
----------------------------------------------------------------------
diff --git a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementConfiguration.java b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementConfiguration.java
index a2c4bb2..25cd9f4 100644
--- a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementConfiguration.java
+++ b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementConfiguration.java
@@ -25,6 +25,7 @@ import java.util.Set;
import javax.servlet.http.HttpServletRequest;
import org.apache.qpid.server.model.AuthenticationProvider;
+import org.apache.qpid.server.model.DerivedAttribute;
import org.apache.qpid.server.model.ManagedAttribute;
import org.apache.qpid.server.model.ManagedContextDefault;
import org.apache.qpid.server.model.Plugin;
@@ -46,35 +47,43 @@ public interface HttpManagementConfiguration<X extends HttpManagementConfigurati
boolean isHttpBasicAuthenticationEnabled();
@ManagedAttribute( defaultValue = "600", description = "The maximum time interval, in seconds, that Web Management will keep the session open between client accesses.")
- public int getSessionTimeout();
+ int getSessionTimeout();
@ManagedAttribute( defaultValue = "" )
- public String getCorsAllowOrigins();
+ String getCorsAllowOrigins();
@ManagedAttribute( defaultValue = "[\"HEAD\",\"GET\",\"POST\"]", validValues = {"org.apache.qpid.server.management.plugin.HttpManagement#getAllAvailableCorsMethodCombinations()"} )
- public Set<String> getCorsAllowMethods();
+ Set<String> getCorsAllowMethods();
@ManagedAttribute( defaultValue = "Content-Type,Accept,Origin,X-Requested-With,X-Range" )
- public String getCorsAllowHeaders();
+ String getCorsAllowHeaders();
@ManagedAttribute( defaultValue = "true" )
- public boolean getCorsAllowCredentials();
+ boolean getCorsAllowCredentials();
String HTTP_MANAGEMENT_COMPRESS_RESPONSES = "httpManagement.compressResponses";
@ManagedContextDefault(name = HTTP_MANAGEMENT_COMPRESS_RESPONSES)
boolean DEFAULT_COMPRESS_RESPONSES = true;
@ManagedAttribute( defaultValue = "${"+HTTP_MANAGEMENT_COMPRESS_RESPONSES+"}" )
- public boolean isCompressResponses();
+ boolean isCompressResponses();
+
+ @DerivedAttribute(description = "Length of time permitted for the SASL authentication exchange.")
+ long getSaslExchangeExpiry();
String MAX_HTTP_FILE_UPLOAD_SIZE_CONTEXT_NAME = "maxHttpFileUploadSize";
@ManagedContextDefault( name = MAX_HTTP_FILE_UPLOAD_SIZE_CONTEXT_NAME)
- static final long DEFAULT_MAX_UPLOAD_SIZE = 100 * 1024;
+ long DEFAULT_MAX_UPLOAD_SIZE = 100 * 1024;
String PREFERENCE_OPERTAION_TIMEOUT_CONTEXT_NAME = "qpid.httpManagement.preferenceOperationTimeout";
@SuppressWarnings("unused")
@ManagedContextDefault( name = PREFERENCE_OPERTAION_TIMEOUT_CONTEXT_NAME)
- long DEFAULT_PREFERENCE_OPERTAION_TIMEOUT = 10000L;
+ long DEFAULT_PREFERENCE_OPERATION_TIMEOUT = 10000L;
+
+ String SASL_EXCHANGE_EXPIRY_CONTEXT_NAME = "qpid.httpManagement.saslExchangeExpiry";
+ @SuppressWarnings("unused")
+ @ManagedContextDefault( name = SASL_EXCHANGE_EXPIRY_CONTEXT_NAME)
+ long DEFAULT_SASL_EXCHANGE_EXPIRY = 3000L;
AuthenticationProvider getAuthenticationProvider(HttpServletRequest request);
Port<?> getPort(HttpServletRequest request);
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/a039459c/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java
----------------------------------------------------------------------
diff --git a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java
index 792aec4..5e25894 100644
--- a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java
+++ b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java
@@ -16,7 +16,7 @@
*/
package org.apache.qpid.server.management.plugin.servlet.rest;
-import static org.apache.qpid.server.management.plugin.HttpManagementConfiguration.DEFAULT_PREFERENCE_OPERTAION_TIMEOUT;
+import static org.apache.qpid.server.management.plugin.HttpManagementConfiguration.DEFAULT_PREFERENCE_OPERATION_TIMEOUT;
import static org.apache.qpid.server.management.plugin.HttpManagementConfiguration.PREFERENCE_OPERTAION_TIMEOUT_CONTEXT_NAME;
import static org.apache.qpid.server.management.plugin.HttpManagementUtil.ensureFilenameIsRfc2183;
@@ -117,7 +117,7 @@ public class RestServlet extends AbstractServlet
Handler.register();
Long preferenceOperationTimeout = getManagementConfiguration().getContextValue(Long.class, PREFERENCE_OPERTAION_TIMEOUT_CONTEXT_NAME);
_userPreferenceHandler = new RestUserPreferenceHandler(preferenceOperationTimeout == null
- ? DEFAULT_PREFERENCE_OPERTAION_TIMEOUT
+ ? DEFAULT_PREFERENCE_OPERATION_TIMEOUT
: preferenceOperationTimeout);
}
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/a039459c/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/SaslServlet.java
----------------------------------------------------------------------
diff --git a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/SaslServlet.java b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/SaslServlet.java
index 98736d7..080b291 100644
--- a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/SaslServlet.java
+++ b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/SaslServlet.java
@@ -66,7 +66,6 @@ public class SaslServlet extends AbstractServlet
private static final String ATTR_ID = "SaslServlet.ID";
private static final String ATTR_SASL_NEGOTIATOR = "SaslServlet.SaslNegotiator";
private static final String ATTR_EXPIRY = "SaslServlet.Expiry";
- private static final long SASL_EXCHANGE_EXPIRY = 3000L;
public SaslServlet()
{
@@ -275,8 +274,9 @@ public class SaslServlet extends AbstractServlet
String id = String.valueOf(rand.nextLong());
HttpManagementUtil.setSessionAttribute(ATTR_ID, id, session, request);
HttpManagementUtil.setSessionAttribute(ATTR_SASL_NEGOTIATOR, saslNegotiator, session, request);
+ long saslExchangeExpiry = getManagementConfiguration().getSaslExchangeExpiry();
HttpManagementUtil.setSessionAttribute(ATTR_EXPIRY,
- System.currentTimeMillis() + SASL_EXCHANGE_EXPIRY,
+ System.currentTimeMillis() + saslExchangeExpiry,
session, request);
outputObject.put("id", id);
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/a039459c/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/RestUserPreferenceHandlerTest.java
----------------------------------------------------------------------
diff --git a/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/RestUserPreferenceHandlerTest.java b/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/RestUserPreferenceHandlerTest.java
index 467fe64..cb82a4a 100644
--- a/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/RestUserPreferenceHandlerTest.java
+++ b/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/RestUserPreferenceHandlerTest.java
@@ -18,7 +18,7 @@
*/
package org.apache.qpid.server.management.plugin.servlet.rest;
-import static org.apache.qpid.server.management.plugin.HttpManagementConfiguration.DEFAULT_PREFERENCE_OPERTAION_TIMEOUT;
+import static org.apache.qpid.server.management.plugin.HttpManagementConfiguration.DEFAULT_PREFERENCE_OPERATION_TIMEOUT;
import static org.apache.qpid.server.model.preferences.PreferenceTestHelper.awaitPreferenceFuture;
import static org.apache.qpid.server.model.preferences.PreferenceTestHelper.createPreferenceAttributes;
import static org.mockito.Mockito.mock;
@@ -61,7 +61,7 @@ public class RestUserPreferenceHandlerTest extends QpidTestCase
private static final String MYUSER = "myuser";
private static final String MYUSER_SERIALIZATION = TestPrincipalUtils.getTestPrincipalSerialization(MYUSER);
- private RestUserPreferenceHandler _handler = new RestUserPreferenceHandler(DEFAULT_PREFERENCE_OPERTAION_TIMEOUT);
+ private RestUserPreferenceHandler _handler = new RestUserPreferenceHandler(DEFAULT_PREFERENCE_OPERATION_TIMEOUT);
private ConfiguredObject<?> _configuredObject;
private UserPreferences _userPreferences;
private Subject _subject;
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org