From 2a7c8b3061fda47cc53ef997c339599dd2285395 Mon Sep 17 00:00:00 2001 From: Robert Godfrey Date: Mon, 25 Aug 2014 14:48:20 +0000 Subject: Merging from trunk r1616861:1617235 in the Java tree git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/0.30@1620330 13f79535-47bb-0310-9956-ffa450edef68 --- .../client/handler/ClientMethodDispatcherImpl.java | 10 +++++++--- .../client/handler/ConnectionTuneMethodHandler.java | 2 ++ .../qpid/client/protocol/AMQProtocolHandler.java | 13 +++++++++---- .../qpid/client/protocol/AMQProtocolSession.java | 20 +++++++++++++------- .../client/security/CallbackHandlerRegistry.java | 12 ++++++------ .../security/CallbackHandlerRegistry.properties | 14 +++++++------- 6 files changed, 44 insertions(+), 27 deletions(-) (limited to 'qpid/java/client/src/main/java/org') diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ClientMethodDispatcherImpl.java b/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ClientMethodDispatcherImpl.java index e1a0e18262..d76fdf25e6 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ClientMethodDispatcherImpl.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ClientMethodDispatcherImpl.java @@ -20,6 +20,9 @@ */ package org.apache.qpid.client.handler; +import java.util.HashMap; +import java.util.Map; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -29,9 +32,6 @@ import org.apache.qpid.client.state.AMQMethodNotImplementedException; import org.apache.qpid.client.state.AMQStateManager; import org.apache.qpid.framing.*; -import java.util.HashMap; -import java.util.Map; - public class ClientMethodDispatcherImpl implements MethodDispatcher { @@ -101,6 +101,10 @@ public class ClientMethodDispatcherImpl implements MethodDispatcher } DispatcherFactory factory = _dispatcherFactories.get(version); + if(factory == null) + { + throw new UnsupportedOperationException("The protocol version " + version + " is not supported"); + } return factory.createMethodDispatcher(session); } diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionTuneMethodHandler.java b/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionTuneMethodHandler.java index 617380e149..1f2df2026b 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionTuneMethodHandler.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionTuneMethodHandler.java @@ -72,6 +72,8 @@ public class ConnectionTuneMethodHandler implements StateAwareMethodListener dataBlocks = _codecFactory.getDecoder().decodeBuffer(msg); + final ArrayList dataBlocks = _decoder.decodeBuffer(msg); // Decode buffer int size = dataBlocks.size(); @@ -927,4 +927,9 @@ public class AMQProtocolHandler implements ProtocolEngine { _heartbeatListener.heartbeatReceived(); } + + public void setMaxFrameSize(final long frameMax) + { + _decoder.setMaxFrameSize(frameMax == 0l ? 0xffffffffl : frameMax); + } } diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java b/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java index 121715d439..2c69aa1b51 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java @@ -20,8 +20,16 @@ */ package org.apache.qpid.client.protocol; +import java.nio.ByteBuffer; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; + +import javax.jms.JMSException; +import javax.security.sasl.SaslClient; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; + import org.apache.qpid.AMQException; import org.apache.qpid.client.AMQConnection; import org.apache.qpid.client.AMQSession; @@ -47,13 +55,6 @@ import org.apache.qpid.transport.ConnectionSettings; import org.apache.qpid.transport.Sender; import org.apache.qpid.transport.TransportException; -import javax.jms.JMSException; -import javax.security.sasl.SaslClient; - -import java.nio.ByteBuffer; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.ConcurrentMap; - /** * Wrapper for protocol session that provides type-safe access to session attributes. *

@@ -543,4 +544,9 @@ public class AMQProtocolSession implements AMQVersionAwareProtocolSession { return _connectionStartServerProperties; } + + public void setMaxFrameSize(final long frameMax) + { + _protocolHandler.setMaxFrameSize(frameMax); + } } diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/security/CallbackHandlerRegistry.java b/qpid/java/client/src/main/java/org/apache/qpid/client/security/CallbackHandlerRegistry.java index 6f99e53055..8d53438bb7 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/client/security/CallbackHandlerRegistry.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/client/security/CallbackHandlerRegistry.java @@ -20,11 +20,6 @@ */ package org.apache.qpid.client.security; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import org.apache.qpid.util.FileUtils; - import java.io.IOException; import java.io.InputStream; import java.util.Arrays; @@ -39,6 +34,11 @@ import java.util.Set; import java.util.StringTokenizer; import java.util.TreeMap; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import org.apache.qpid.util.FileUtils; + /** * CallbackHandlerRegistry is a registry for call back handlers for user authentication and interaction during user * authentication. It is capable of reading its configuration from a properties file containing call back handler @@ -75,7 +75,7 @@ public class CallbackHandlerRegistry /** Ordered collection of mechanisms for which callback handlers exist. */ private Collection _mechanisms; - private static final Collection MECHS_THAT_NEED_USERPASS = Arrays.asList(new String [] {"PLAIN", "AMQPLAIN", "CRAM-MD5","CRAM-MD5-HASHED"}); + private static final Collection MECHS_THAT_NEED_USERPASS = Arrays.asList(new String [] {"PLAIN", "AMQPLAIN", "CRAM-MD5","CRAM-MD5-HASHED", "SCRAM-SHA-1", "SCRAM-SHA-256"}); static { diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/security/CallbackHandlerRegistry.properties b/qpid/java/client/src/main/java/org/apache/qpid/client/security/CallbackHandlerRegistry.properties index 8f02ee2c38..b77fa033d6 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/client/security/CallbackHandlerRegistry.properties +++ b/qpid/java/client/src/main/java/org/apache/qpid/client/security/CallbackHandlerRegistry.properties @@ -26,11 +26,11 @@ EXTERNAL.1=org.apache.qpid.client.security.UsernamePasswordCallbackHandler GSSAPI.2=org.apache.qpid.client.security.UsernamePasswordCallbackHandler -CRAM-MD5-HASHED.3=org.apache.qpid.client.security.UsernameHashedPasswordCallbackHandler -CRAM-MD5.4=org.apache.qpid.client.security.UsernamePasswordCallbackHandler -AMQPLAIN.5=org.apache.qpid.client.security.UsernamePasswordCallbackHandler -PLAIN.6=org.apache.qpid.client.security.UsernamePasswordCallbackHandler -ANONYMOUS.7=org.apache.qpid.client.security.UsernamePasswordCallbackHandler -SCRAM-SHA-1.8=org.apache.qpid.client.security.UsernamePasswordCallbackHandler -SCRAM-SHA-256.9=org.apache.qpid.client.security.UsernamePasswordCallbackHandler +SCRAM-SHA-256.3=org.apache.qpid.client.security.UsernamePasswordCallbackHandler +SCRAM-SHA-1.4=org.apache.qpid.client.security.UsernamePasswordCallbackHandler +CRAM-MD5-HASHED.5=org.apache.qpid.client.security.UsernameHashedPasswordCallbackHandler +CRAM-MD5.6=org.apache.qpid.client.security.UsernamePasswordCallbackHandler +PLAIN.7=org.apache.qpid.client.security.UsernamePasswordCallbackHandler +AMQPLAIN.8=org.apache.qpid.client.security.UsernamePasswordCallbackHandler +ANONYMOUS.9=org.apache.qpid.client.security.UsernamePasswordCallbackHandler -- cgit v1.2.1