You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by rd...@apache.org on 2008/04/04 22:58:30 UTC
svn commit: r644913 - in /james/server/trunk:
experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/
experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/
imap-api/src/main/ja...
Author: rdonkin
Date: Fri Apr 4 13:58:28 2008
New Revision: 644913
URL: http://svn.apache.org/viewvc?rev=644913&view=rev
Log:
Switch from deprecated to improved fault handling
Removed:
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imap/message/response/imap4rev1/legacy/ErrorResponse.java
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/imap4rev1/legacy/ErrorResponseEncoder.java
james/server/trunk/imap-codec-library/src/test/java/org/apache/james/imapserver/codec/encode/imap4rev1/legacy/ErrorResponseMessageTest.java
Modified:
james/server/trunk/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/DefaultImapDecoderFactory.java
james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Authenticate.test
james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Capability.test
james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/HeaderPartialFetch.test
james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Login.test
james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Logout.test
james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/MimePartialFetch.test
james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/TextPartialFetch.test
james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/display/HumanReadableTextKey.java
james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/imap4rev1/Imap4Rev1MessageFactory.java
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imap/message/request/base/BaseImap4Rev1MessageFactory.java
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/decode/base/AbstractImapCommandParser.java
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/decode/main/DefaultImapDecoder.java
james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/main/DefaultImapEncoderFactory.java
Modified: james/server/trunk/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/DefaultImapDecoderFactory.java
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/DefaultImapDecoderFactory.java?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/DefaultImapDecoderFactory.java (original)
+++ james/server/trunk/experimental-seda-imap-function/src/main/java/org/apache/james/experimental/imapserver/DefaultImapDecoderFactory.java Fri Apr 4 13:58:28 2008
@@ -35,11 +35,14 @@
*/
public class DefaultImapDecoderFactory implements ImapDecoderFactory{
+
+
public static final ImapDecoder createDecoder() {
- final Imap4Rev1MessageFactory messageFactory = new BaseImap4Rev1MessageFactory();
+ final UnpooledStatusResponseFactory unpooledStatusResponseFactory = new UnpooledStatusResponseFactory();
+ final Imap4Rev1MessageFactory messageFactory = new BaseImap4Rev1MessageFactory(unpooledStatusResponseFactory);
final Imap4Rev1CommandFactory commandFactory = new StandardImap4Rev1CommandFactory();
final ImapCommandParserFactory imapCommands = new Imap4Rev1CommandParserFactory(
- messageFactory, commandFactory, new UnpooledStatusResponseFactory());
+ messageFactory, commandFactory, unpooledStatusResponseFactory);
final ImapDecoder result = new DefaultImapDecoder(messageFactory,
imapCommands);
return result;
Modified: james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Authenticate.test
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Authenticate.test?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Authenticate.test (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Authenticate.test Fri Apr 4 13:58:28 2008
@@ -21,7 +21,7 @@
S: abcd NO AUTHENTICATE failed. Authentication mechanism is unsupported.
C: abcd AUTHENTICATE
-S: abcd BAD Missing argument. Command should be '<tag> AUTHENTICATE <auth_type> \*\(CRLF base64\)'
+S: abcd BAD AUTHENTICATE failed. Illegal arguments.
C: abcd AUTHENTICATE KERBEROS_V4 extra
-S: abcd BAD Expected end-of-line, found 'e'. Command should be '<tag> AUTHENTICATE <auth_type> \*\(CRLF base64\)'
+S: abcd BAD AUTHENTICATE failed. Illegal arguments.
Modified: james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Capability.test
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Capability.test?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Capability.test (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Capability.test Fri Apr 4 13:58:28 2008
@@ -21,4 +21,4 @@
S: abcd OK CAPABILITY completed.
C: abcd CAPABILITY extra stuff
-S: abcd BAD Expected end-of-line, found 'e'. Command should be '<tag> CAPABILITY'
\ No newline at end of file
+S: abcd BAD CAPABILITY failed. Illegal arguments.
\ No newline at end of file
Modified: james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/HeaderPartialFetch.test
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/HeaderPartialFetch.test?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/HeaderPartialFetch.test (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/HeaderPartialFetch.test Fri Apr 4 13:58:28 2008
@@ -129,7 +129,7 @@
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A5 OK \[READ-WRITE\] SELECT completed\.
C: A6 FETCH 1 (BODY[HEADER]<0.0>)
-S: A6 BAD Zero value not permitted(.)*
+S: A6 BAD FETCH failed. Illegal arguments.
C: A7 FETCH 1 (BODY[HEADER]<0.16>)
S: \* 1 FETCH \(FLAGS \(\\Recent \\Seen\) BODY\[HEADER\]<0> \{16\}
S: From: Timothy Ta\)
@@ -171,7 +171,7 @@
S: \)
S: A12 OK FETCH completed\.
C: A13 FETCH 1 (BODY[HEADER]<7.0>)
-S: A13 BAD Zero value not permitted(.)*
+S: A13 BAD FETCH failed. Illegal arguments.
C: A14 FETCH 1 (BODY[HEADER]<7.16>)
S: \* 1 FETCH \(BODY\[HEADER\]<7> \{16\}
S: imothy Tayler <t\)
@@ -213,7 +213,7 @@
S: \)
S: A19 OK FETCH completed\.
C: A20 FETCH 1 (BODY[HEADER]<10000.0>)
-S: A20 BAD Zero value not permitted(.)*
+S: A20 BAD FETCH failed. Illegal arguments.
C: A21 FETCH 1 (BODY[HEADER]<10000.16>)
S: \* 1 FETCH \(BODY\[HEADER\]<10000> \{0\}
S: \)
Modified: james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Login.test
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Login.test?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Login.test (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Login.test Fri Apr 4 13:58:28 2008
@@ -18,13 +18,13 @@
################################################################
# Empty file to use for simple login test.
C: a001 LOGIN
-S: a001 BAD Missing argument. Command should be '<tag> LOGIN <userid> <password>'
+S: a001 BAD LOGIN failed. Illegal arguments.
C: a002 LOGIN invaliduser
-S: a002 BAD Missing argument. Command should be '<tag> LOGIN <userid> <password>'
+S: a002 BAD LOGIN failed. Illegal arguments.
C: a002a LOGIN imapuser password extra
-S: a002a BAD Expected end-of-line, found 'e'. Command should be '<tag> LOGIN <userid> <password>'
+S: a002a BAD LOGIN failed. Illegal arguments.
C: a003 LOGIN invaliduser password
S: a003 NO LOGIN failed. Invalid login/password.
Modified: james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Logout.test
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Logout.test?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Logout.test (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/Logout.test Fri Apr 4 13:58:28 2008
@@ -17,7 +17,7 @@
# under the License. #
################################################################
C: a023 LOGOUT extra stuff
-S: a023 BAD Expected end-of-line, found 'e'. Command should be '<tag> LOGOUT'
+S: a023 BAD LOGOUT failed. Illegal arguments.
C: A023 LOGOUT
S: \* BYE IMAP4rev1 Server logging out
Modified: james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/MimePartialFetch.test
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/MimePartialFetch.test?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/MimePartialFetch.test (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/MimePartialFetch.test Fri Apr 4 13:58:28 2008
@@ -129,7 +129,7 @@
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A5 OK \[READ-WRITE\] SELECT completed\.
C: A6 FETCH 1 (BODY[4.1.MIME]<0.0>)
-S: A6 BAD Zero value not permitted(.)*
+S: A6 BAD FETCH failed. Illegal arguments.
C: A7 FETCH 1 (BODY[4.1.MIME]<0.15>)
S: \* 1 FETCH \(FLAGS \(\\Recent \\Seen\) BODY\[4\.1\.MIME\]<0> \{15\}
S: Content-Type: i\)
@@ -174,7 +174,7 @@
S: \)
S: A12 OK FETCH completed\.
C: A13 FETCH 1 (BODY[4.1.MIME]<17.0>)
-S: A13 BAD Zero value not permitted(.)*
+S: A13 BAD FETCH failed. Illegal arguments.
C: A14 FETCH 1 (BODY[4.1.MIME]<17.16>)
S: \* 1 FETCH \(BODY\[4\.1\.MIME\]<17> \{16\}
S: ge/gif
@@ -221,7 +221,7 @@
S: \)
S: A19 OK FETCH completed\.
C: A20 FETCH 1 (BODY[4.1.MIME]<10000.0>)
-S: A20 BAD Zero value not permitted(.)*
+S: A20 BAD FETCH failed. Illegal arguments.
C: A21 FETCH 1 (BODY[4.1.MIME]<10000.16>)
S: \* 1 FETCH \(BODY\[4\.1\.MIME\]<10000> \{0\}
S: \)
Modified: james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/TextPartialFetch.test
URL: http://svn.apache.org/viewvc/james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/TextPartialFetch.test?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/TextPartialFetch.test (original)
+++ james/server/trunk/experimental-seda-imap-function/src/test/resources/org/apache/james/test/functional/imap/scripts/TextPartialFetch.test Fri Apr 4 13:58:28 2008
@@ -129,7 +129,7 @@
S: \* OK \[PERMANENTFLAGS \(\\Answered \\Deleted \\Draft \\Flagged \\Seen\)\]
S: A5 OK \[READ-WRITE\] SELECT completed\.
C: A6 FETCH 1 (BODY[TEXT]<0.0>)
-S: A6 BAD Zero value not permitted(.)*
+S: A6 BAD FETCH failed. Illegal arguments.
C: A7 FETCH 1 (BODY[TEXT]<0.16>)
S: \* 1 FETCH \(FLAGS \(\\Recent \\Seen\) BODY\[TEXT\]<0> \{16\}
S: Start with a pre\)
@@ -304,7 +304,7 @@
S: \)
S: A12 OK FETCH completed\.
C: A13 FETCH 1 (BODY[TEXT]<7.0>)
-S: A13 BAD Zero value not permitted(.)*
+S: A13 BAD FETCH failed. Illegal arguments.
C: A14 FETCH 1 (BODY[TEXT]<7.16>)
S: \* 1 FETCH \(BODY\[TEXT\]<7> \{16\}
S: ith a preamble
@@ -482,7 +482,7 @@
S: \)
S: A19 OK FETCH completed\.
C: A20 FETCH 1 (BODY[TEXT]<10000.0>)
-S: A20 BAD Zero value not permitted(.)*
+S: A20 BAD FETCH failed. Illegal arguments.
C: A21 FETCH 1 (BODY[TEXT]<10000.16>)
S: \* 1 FETCH \(BODY\[TEXT\]<10000> \{0\}
S: \)
Modified: james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/display/HumanReadableTextKey.java
URL: http://svn.apache.org/viewvc/james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/display/HumanReadableTextKey.java?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/display/HumanReadableTextKey.java (original)
+++ james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/display/HumanReadableTextKey.java Fri Apr 4 13:58:28 2008
@@ -58,6 +58,10 @@
= new HumanReadableTextKey("org.apache.james.imap.INVALID_COMMAND",
"failed. Command not valid in this state.");
+ public static final HumanReadableTextKey ILLEGAL_ARGUMENTS
+ = new HumanReadableTextKey("org.apache.james.imap.ILLEGAL_ARGUMENTS",
+ "failed. Illegal arguments.");
+
public static final HumanReadableTextKey FAILURE_MAIL_PARSE
= new HumanReadableTextKey("org.apache.james.imap.FAILURE_MAIL_PARSE",
"failed. Mail cannot be parsed.");
@@ -89,6 +93,10 @@
public static final HumanReadableTextKey UNSUPPORTED_AUTHENTICATION_MECHANISM
= new HumanReadableTextKey("org.apache.james.imap.UNSUPPORTED_AUTHENTICATION_MECHANISM",
"failed. Authentication mechanism is unsupported.");
+
+ public static final HumanReadableTextKey UNKNOWN_COMMAND
+ = new HumanReadableTextKey("org.apache.james.imap.UNKNOWN_COMMAND",
+ "failed. Unknown command.");
public static final HumanReadableTextKey BAD_CHARSET
= new HumanReadableTextKey("org.apache.james.imap.BAD_CHARSET",
Modified: james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/imap4rev1/Imap4Rev1MessageFactory.java
URL: http://svn.apache.org/viewvc/james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/imap4rev1/Imap4Rev1MessageFactory.java?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/imap4rev1/Imap4Rev1MessageFactory.java (original)
+++ james/server/trunk/imap-api/src/main/java/org/apache/james/api/imap/imap4rev1/Imap4Rev1MessageFactory.java Fri Apr 4 13:58:28 2008
@@ -25,10 +25,12 @@
import org.apache.james.api.imap.ImapCommand;
import org.apache.james.api.imap.ImapMessage;
+import org.apache.james.api.imap.display.HumanReadableTextKey;
import org.apache.james.api.imap.message.FetchData;
import org.apache.james.api.imap.message.IdRange;
import org.apache.james.api.imap.message.StatusDataItems;
import org.apache.james.api.imap.message.request.SearchKey;
+import org.apache.james.api.imap.message.response.imap4rev1.StatusResponse;
/**
* Creates messages.
@@ -36,7 +38,14 @@
*/
public interface Imap4Rev1MessageFactory {
- public ImapMessage createErrorMessage(String message, String tag);
+ /**
+ * Creates a tagged BAD status response.
+ * @param tag <code>CharSequence</code>, not null
+ * @param command <code>ImapCommand</code>, not null
+ * @param displayTextKey key to the human readable code to be displayed
+ * @return <code>StatusResponse</code>, not null
+ */
+ public StatusResponse taggedBad(String tag, ImapCommand command, HumanReadableTextKey displayTextKey);
public ImapMessage createBadRequestMessage(final String message);
Modified: james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imap/message/request/base/BaseImap4Rev1MessageFactory.java
URL: http://svn.apache.org/viewvc/james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imap/message/request/base/BaseImap4Rev1MessageFactory.java?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imap/message/request/base/BaseImap4Rev1MessageFactory.java (original)
+++ james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imap/message/request/base/BaseImap4Rev1MessageFactory.java Fri Apr 4 13:58:28 2008
@@ -25,11 +25,14 @@
import org.apache.james.api.imap.ImapCommand;
import org.apache.james.api.imap.ImapMessage;
+import org.apache.james.api.imap.display.HumanReadableTextKey;
import org.apache.james.api.imap.imap4rev1.Imap4Rev1MessageFactory;
import org.apache.james.api.imap.message.FetchData;
import org.apache.james.api.imap.message.IdRange;
import org.apache.james.api.imap.message.StatusDataItems;
import org.apache.james.api.imap.message.request.SearchKey;
+import org.apache.james.api.imap.message.response.imap4rev1.StatusResponse;
+import org.apache.james.api.imap.message.response.imap4rev1.StatusResponseFactory;
import org.apache.james.imap.message.request.imap4rev1.AppendRequest;
import org.apache.james.imap.message.request.imap4rev1.AuthenticateRequest;
import org.apache.james.imap.message.request.imap4rev1.CapabilityRequest;
@@ -54,15 +57,18 @@
import org.apache.james.imap.message.request.imap4rev1.SubscribeRequest;
import org.apache.james.imap.message.request.imap4rev1.UnsubscribeRequest;
import org.apache.james.imap.message.response.imap4rev1.legacy.BadResponse;
-import org.apache.james.imap.message.response.imap4rev1.legacy.ErrorResponse;
/**
* Naive, factory creates unpooled instances.
*/
public class BaseImap4Rev1MessageFactory implements Imap4Rev1MessageFactory {
-
- public ImapMessage createErrorMessage(String message, String tag) {
- return new ErrorResponse( message, tag );
+
+ private StatusResponseFactory statusResponseFactory;
+
+ public BaseImap4Rev1MessageFactory(
+ StatusResponseFactory statusResponseFactory) {
+ super();
+ this.statusResponseFactory = statusResponseFactory;
}
public ImapMessage createAppendMessage(ImapCommand command, String mailboxName, Flags flags, Date datetime, MimeMessage message, String tag) {
@@ -160,5 +166,10 @@
public ImapMessage createCheckMessage(ImapCommand command, String tag) {
return new CheckRequest(command, tag);
+ }
+
+ public StatusResponse taggedBad(String tag, ImapCommand command,
+ HumanReadableTextKey displayTextKey) {
+ return statusResponseFactory.taggedBad(tag, command, displayTextKey);
}
}
Modified: james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/decode/base/AbstractImapCommandParser.java
URL: http://svn.apache.org/viewvc/james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/decode/base/AbstractImapCommandParser.java?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/decode/base/AbstractImapCommandParser.java (original)
+++ james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/decode/base/AbstractImapCommandParser.java Fri Apr 4 13:58:28 2008
@@ -38,6 +38,7 @@
import org.apache.james.api.imap.ImapConstants;
import org.apache.james.api.imap.ImapMessage;
import org.apache.james.api.imap.ProtocolException;
+import org.apache.james.api.imap.display.HumanReadableTextKey;
import org.apache.james.api.imap.imap4rev1.Imap4Rev1MessageFactory;
import org.apache.james.api.imap.message.IdRange;
import org.apache.james.api.imap.message.request.DayMonthYear;
@@ -113,10 +114,8 @@
result = message;
} catch ( ProtocolException e ) {
- getLogger().debug("error processing command ", e);
- String msg = e.getMessage() + " Command should be '" +
- command.getExpectedMessage() + "'";
- result = messageFactory.createErrorMessage( msg, tag );
+ getLogger().debug("Cannot parse protocol ", e);
+ result = messageFactory.taggedBad(tag, command, HumanReadableTextKey.ILLEGAL_ARGUMENTS);
}
return result;
}
Modified: james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/decode/main/DefaultImapDecoder.java
URL: http://svn.apache.org/viewvc/james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/decode/main/DefaultImapDecoder.java?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/decode/main/DefaultImapDecoder.java (original)
+++ james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/decode/main/DefaultImapDecoder.java Fri Apr 4 13:58:28 2008
@@ -22,6 +22,7 @@
import org.apache.avalon.framework.logger.Logger;
import org.apache.james.api.imap.ImapMessage;
import org.apache.james.api.imap.ProtocolException;
+import org.apache.james.api.imap.display.HumanReadableTextKey;
import org.apache.james.api.imap.imap4rev1.Imap4Rev1MessageFactory;
import org.apache.james.imapserver.codec.decode.ImapCommandParser;
import org.apache.james.imapserver.codec.decode.ImapCommandParserFactory;
@@ -31,7 +32,6 @@
public class DefaultImapDecoder extends AbstractLogEnabled implements ImapDecoder {
- private static final String INVALID_COMMAND = "Invalid command.";
private static final String REQUEST_SYNTAX = "Protocol Error: Was expecting <tag SPACE command [arguments]>";
private final Imap4Rev1MessageFactory messageFactory;
@@ -77,7 +77,7 @@
}
catch ( ProtocolException e ) {
logger.debug("Error during initial request parsing", e);
- message = messageFactory.createErrorMessage(REQUEST_SYNTAX , tag);
+ message = messageFactory.taggedBad(tag, null, HumanReadableTextKey.UNKNOWN_COMMAND);
}
return message;
}
@@ -91,7 +91,7 @@
final ImapCommandParser command = imapCommands.getParser( commandName );
if ( command == null ) {
logger.info("Missing command implementation.");
- message = messageFactory.createErrorMessage(INVALID_COMMAND, tag);
+ message = messageFactory.taggedBad(tag, null, HumanReadableTextKey.UNKNOWN_COMMAND);
} else {
message = command.parse( request, tag );
}
Modified: james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/main/DefaultImapEncoderFactory.java
URL: http://svn.apache.org/viewvc/james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/main/DefaultImapEncoderFactory.java?rev=644913&r1=644912&r2=644913&view=diff
==============================================================================
--- james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/main/DefaultImapEncoderFactory.java (original)
+++ james/server/trunk/imap-codec-library/src/main/java/org/apache/james/imapserver/codec/encode/main/DefaultImapEncoderFactory.java Fri Apr 4 13:58:28 2008
@@ -30,7 +30,6 @@
import org.apache.james.imapserver.codec.encode.imap4rev1.StatusResponseEncoder;
import org.apache.james.imapserver.codec.encode.imap4rev1.legacy.BadResponseEncoder;
import org.apache.james.imapserver.codec.encode.imap4rev1.legacy.CapabilityResponseEncoder;
-import org.apache.james.imapserver.codec.encode.imap4rev1.legacy.ErrorResponseEncoder;
import org.apache.james.imapserver.codec.encode.imap4rev1.server.LSubResponseEncoder;
import org.apache.james.imapserver.codec.encode.imap4rev1.server.ListResponseEncoder;
import org.apache.james.imapserver.codec.encode.imap4rev1.server.STATUSResponseEncoder;
@@ -55,8 +54,7 @@
final LSubResponseEncoder lsubResponseEncoder = new LSubResponseEncoder(searchResponseEncoder);
final ListResponseEncoder listResponseEncoder = new ListResponseEncoder(lsubResponseEncoder);
final FlagsResponseEncoder flagsResponseEncoder = new FlagsResponseEncoder(listResponseEncoder);
- final ErrorResponseEncoder errorResponseEncoder = new ErrorResponseEncoder(flagsResponseEncoder);
- final CapabilityResponseEncoder capabilityResponseEncoder = new CapabilityResponseEncoder(errorResponseEncoder);
+ final CapabilityResponseEncoder capabilityResponseEncoder = new CapabilityResponseEncoder(flagsResponseEncoder);
final BadResponseEncoder result = new BadResponseEncoder(capabilityResponseEncoder);
return result;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org