Author: norman Date: Sun Jan 1 12:21:48 2012 New Revision: 1226244 URL: http://svn.apache.org/viewvc?rev=1226244&view=rev Log: Add getCharset() and getLineDelimiters() to ProtocolSession. See PROTOCOLS-78
Modified: james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSession.java james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSessionImpl.java james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/handler/CommandDispatcher.java Modified: james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSession.java URL: http://svn.apache.org/viewvc/james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSession.java?rev=1226244&r1=1226243&r2=1226244&view=diff ============================================================================== --- james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSession.java (original) +++ james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSession.java Sun Jan 1 12:21:48 2012 @@ -20,6 +20,7 @@ package org.apache.james.protocols.api; import java.net.InetSocketAddress; +import java.nio.charset.Charset; import java.util.Map; import org.apache.james.protocols.api.logger.Logger; @@ -158,5 +159,19 @@ public interface ProtocolSession { * @return config */ ProtocolConfiguration getConfiguration(); + + /** + * Return the {@link Charset} which is used by the {@link ProtocolSession} + * + * @return charset + */ + Charset getCharset(); + + /** + * Return the line delimiter which is used + * + * @return delimiter + */ + String getLineDelimiter(); } Modified: james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSessionImpl.java URL: http://svn.apache.org/viewvc/james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSessionImpl.java?rev=1226244&r1=1226243&r2=1226244&view=diff ============================================================================== --- james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSessionImpl.java (original) +++ james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/ProtocolSessionImpl.java Sun Jan 1 12:21:48 2012 @@ -20,6 +20,7 @@ package org.apache.james.protocols.api; import java.net.InetSocketAddress; +import java.nio.charset.Charset; import java.util.HashMap; import java.util.Map; @@ -41,7 +42,9 @@ public class ProtocolSessionImpl impleme private final Map<String, Object> sessionState; private String user; protected final ProtocolConfiguration config; - + private final static Charset CHARSET = Charset.forName("US-ASCII"); + private final static String DELIMITER = "\r\n"; + public ProtocolSessionImpl(Logger logger, ProtocolTransport transport, ProtocolConfiguration config) { this.transport = transport; this.pLog = new ProtocolSessionLogger(transport.getId(), logger); @@ -198,4 +201,18 @@ public class ProtocolSessionImpl impleme } } + /** + * Returns a Charset for US-ASCII + */ + public Charset getCharset() { + return CHARSET; + } + + /** + * Returns "\r\n"; + */ + public String getLineDelimiter() { + return DELIMITER; + } + } Modified: james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/handler/CommandDispatcher.java URL: http://svn.apache.org/viewvc/james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/handler/CommandDispatcher.java?rev=1226244&r1=1226243&r2=1226244&view=diff ============================================================================== --- james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/handler/CommandDispatcher.java (original) +++ james/protocols/trunk/api/src/main/java/org/apache/james/protocols/api/handler/CommandDispatcher.java Sun Jan 1 12:21:48 2012 @@ -211,7 +211,8 @@ public class CommandDispatcher<Session e line = new byte[buffer.remaining()]; buffer.get(line); } - String cmdString = new String(line, getLineDecodingCharset()).trim(); + // This should be changed once we move to java6 + String cmdString = new String(line, session.getCharset().name()).trim(); int spaceIndex = cmdString.indexOf(" "); if (spaceIndex > 0) { curCommandName = cmdString.substring(0, spaceIndex); @@ -229,12 +230,7 @@ public class CommandDispatcher<Session e return request; } - - - protected String getLineDecodingCharset() { - return "US-ASCII"; - } - + /** * @see org.apache.james.protocols.api.handler.ExtensibleHandler#getMarkerInterfaces() */ --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org