This is an automated email from the ASF dual-hosted git repository.

matthieu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit 853b846e1687306ccf95c99f4b89e307d28543a9
Author: Matthieu Baechler <matth...@apache.org>
AuthorDate: Thu Nov 7 22:15:18 2019 +0100

    [Refactoring] CharsetUtils now only handle utf7, change it accordingly
---
 .../{CharsetUtil.java => ModifiedUtf7.java}        | 31 +++++++++-------------
 .../james/imap/decode/ImapRequestLineReader.java   |  6 ++---
 .../james/imap/encode/ImapResponseComposer.java    |  4 +--
 .../imap/encode/base/ImapResponseComposerImpl.java |  4 +--
 .../apache/james/imap/processor/LSubProcessor.java |  6 ++---
 .../apache/james/imap/processor/ListProcessor.java |  8 +++---
 6 files changed, 27 insertions(+), 32 deletions(-)

diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/api/display/CharsetUtil.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/api/display/ModifiedUtf7.java
similarity index 71%
rename from 
protocols/imap/src/main/java/org/apache/james/imap/api/display/CharsetUtil.java
rename to 
protocols/imap/src/main/java/org/apache/james/imap/api/display/ModifiedUtf7.java
index 915716c..f132e87 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/api/display/CharsetUtil.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/api/display/ModifiedUtf7.java
@@ -24,36 +24,31 @@ import java.nio.charset.Charset;
 import com.beetstra.jutf7.CharsetProvider;
 
 /**
- * Utility class which can be used to get a list of supported {@link 
Charset}'s 
- * 
- * Beside this it has some methods included which helps to encode/decode 
modified UTF7
+ * This class has some methods included which helps to encode/decode modified 
UTF7
  */
-public class CharsetUtil {
+public class ModifiedUtf7 {
 
-    private static final String X_MODIFIED_UTF_7 = "X-MODIFIED-UTF-7";
-    private static final Charset X_MODIFIED_UTF_7_CHARSET = new 
CharsetProvider().charsetForName(X_MODIFIED_UTF_7);
+    private static final Charset X_MODIFIED_UTF_7_CHARSET = new 
CharsetProvider().charsetForName("X-MODIFIED-UTF-7");
 
     /**
      * Decode the given UTF7 encoded <code>String</code>
-     *
-     * @return decoded
+     * 
+     * @param input utf7-encoded value
+     * @return decoded value
      */
-    public static String decodeModifiedUTF7(String string) {
-        return 
X_MODIFIED_UTF_7_CHARSET.decode(ByteBuffer.wrap(string.getBytes())).toString();
-
+    public static String decodeModifiedUTF7(String input) {
+        return 
X_MODIFIED_UTF_7_CHARSET.decode(ByteBuffer.wrap(input.getBytes())).toString();
     }
-    
 
     /**
      * Encode the given <code>String</code> to modified UTF7. 
      * See RFC3501 for more details
-     *
-     * @return encoded
+     * 
+     * @param input
+     * @return utf7-encoded value
      */
-    
-    public static String encodeModifiedUTF7(String string) {
-        ByteBuffer encode = X_MODIFIED_UTF_7_CHARSET.encode(string);
+    public static String encodeModifiedUTF7(String input) {
+        ByteBuffer encode = X_MODIFIED_UTF_7_CHARSET.encode(input);
         return new String(encode.array(), 0, encode.remaining());
-
     }
 }
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/decode/ImapRequestLineReader.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/decode/ImapRequestLineReader.java
index 233d450..0981fa0 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/decode/ImapRequestLineReader.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/decode/ImapRequestLineReader.java
@@ -35,8 +35,8 @@ import java.util.List;
 import javax.mail.Flags;
 
 import org.apache.james.imap.api.ImapConstants;
-import org.apache.james.imap.api.display.CharsetUtil;
 import org.apache.james.imap.api.display.HumanReadableText;
+import org.apache.james.imap.api.display.ModifiedUtf7;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.UidRange;
 import org.apache.james.imap.api.message.request.DayMonthYear;
@@ -240,7 +240,7 @@ public abstract class ImapRequestLineReader {
 
     /**
      * 
-     * Reads the mailbox name via {@link #mailboxUTF7()} but also decode it 
via {@link CharsetUtil#decodeModifiedUTF7(String)}
+     * Reads the mailbox name via {@link #mailboxUTF7()} but also decode it 
via {@link ModifiedUtf7#decodeModifiedUTF7(String)}
      * 
      * If you really want to get the modified UTF7 version you should use 
{@link #mailboxUTF7()}
      * 
@@ -248,7 +248,7 @@ public abstract class ImapRequestLineReader {
      * 
      */
     public String mailbox() throws DecodingException {
-       return CharsetUtil.decodeModifiedUTF7(mailboxUTF7());
+       return ModifiedUtf7.decodeModifiedUTF7(mailboxUTF7());
     }
 
     /**
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/encode/ImapResponseComposer.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/encode/ImapResponseComposer.java
index 6df18b2..3018d2b 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/encode/ImapResponseComposer.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/encode/ImapResponseComposer.java
@@ -24,7 +24,7 @@ import java.io.IOException;
 import javax.mail.Flags;
 
 import org.apache.james.imap.api.ImapCommand;
-import org.apache.james.imap.api.display.CharsetUtil;
+import org.apache.james.imap.api.display.ModifiedUtf7;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.UidRange;
 import org.apache.james.imap.message.response.Literal;
@@ -112,7 +112,7 @@ public interface ImapResponseComposer {
 
     /**
      * First encodes the given {@code mailboxName} using
-     * {@link CharsetUtil#encodeModifiedUTF7(String)} and then quotes the 
result
+     * {@link ModifiedUtf7#encodeModifiedUTF7(String)} and then quotes the 
result
      * with {@link #quote(String)}.
      * 
      * @param mailboxName
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/encode/base/ImapResponseComposerImpl.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/encode/base/ImapResponseComposerImpl.java
index ce7e575..b3a1e5d 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/encode/base/ImapResponseComposerImpl.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/encode/base/ImapResponseComposerImpl.java
@@ -26,7 +26,7 @@ import javax.mail.Flags;
 
 import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapConstants;
-import org.apache.james.imap.api.display.CharsetUtil;
+import org.apache.james.imap.api.display.ModifiedUtf7;
 import org.apache.james.imap.api.message.IdRange;
 import org.apache.james.imap.api.message.UidRange;
 import org.apache.james.imap.encode.ImapResponseComposer;
@@ -237,7 +237,7 @@ public class ImapResponseComposerImpl implements 
ImapConstants, ImapResponseComp
     
     @Override
     public ImapResponseComposer mailbox(String mailboxName) throws IOException 
{
-        quote(CharsetUtil.encodeModifiedUTF7(mailboxName));
+        quote(ModifiedUtf7.encodeModifiedUTF7(mailboxName));
         return this;
     }
 
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
index 3befe65..a7a6115 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
@@ -25,8 +25,8 @@ import java.util.Collection;
 
 import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.display.CharsetUtil;
 import org.apache.james.imap.api.display.HumanReadableText;
+import org.apache.james.imap.api.display.ModifiedUtf7;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
 import org.apache.james.imap.api.process.ImapSession;
@@ -71,11 +71,11 @@ public class LSubProcessor extends 
AbstractSubscriptionProcessor<LsubRequest> {
         MailboxSession mailboxSession = 
ImapSessionUtils.getMailboxSession(session);
         Collection<String> mailboxes = 
getSubscriptionManager().subscriptions(mailboxSession);
 
-        String decodedMailName = CharsetUtil.decodeModifiedUTF7(referenceName);
+        String decodedMailName = 
ModifiedUtf7.decodeModifiedUTF7(referenceName);
 
         MailboxNameExpression expression = new PrefixedRegex(
             decodedMailName,
-            CharsetUtil.decodeModifiedUTF7(mailboxName),
+            ModifiedUtf7.decodeModifiedUTF7(mailboxName),
             mailboxSession.getPathDelimiter());
         Collection<String> mailboxResponses = new ArrayList<>();
 
diff --git 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/ListProcessor.java
 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/ListProcessor.java
index f1972bd..7170415 100644
--- 
a/protocols/imap/src/main/java/org/apache/james/imap/processor/ListProcessor.java
+++ 
b/protocols/imap/src/main/java/org/apache/james/imap/processor/ListProcessor.java
@@ -26,8 +26,8 @@ import java.util.List;
 import org.apache.james.imap.api.ImapCommand;
 import org.apache.james.imap.api.ImapMessage;
 import org.apache.james.imap.api.ImapSessionUtils;
-import org.apache.james.imap.api.display.CharsetUtil;
 import org.apache.james.imap.api.display.HumanReadableText;
+import org.apache.james.imap.api.display.ModifiedUtf7;
 import org.apache.james.imap.api.message.response.ImapResponseMessage;
 import org.apache.james.imap.api.message.response.StatusResponseFactory;
 import org.apache.james.imap.api.process.ImapProcessor;
@@ -104,7 +104,7 @@ public class ListProcessor extends 
AbstractMailboxProcessor<ListRequest> {
                     } else {
                         referenceRoot = referenceName.substring(0, 
firstDelimiter);
                     }
-                    referenceRoot = 
CharsetUtil.decodeModifiedUTF7(referenceRoot);
+                    referenceRoot = 
ModifiedUtf7.decodeModifiedUTF7(referenceRoot);
                 } else {
                     // A relative reference name, return "" to indicate it is
                     // non-rooted
@@ -127,7 +127,7 @@ public class ListProcessor extends 
AbstractMailboxProcessor<ListRequest> {
                 // Is the interpreted (combined) pattern relative?
                 isRelative = ((finalReferencename + mailboxName).charAt(0) != 
MailboxConstants.NAMESPACE_PREFIX_CHAR);
 
-                finalReferencename = 
CharsetUtil.decodeModifiedUTF7(finalReferencename);
+                finalReferencename = 
ModifiedUtf7.decodeModifiedUTF7(finalReferencename);
 
                 MailboxPath basePath = null;
                 if (isRelative) {
@@ -141,7 +141,7 @@ public class ListProcessor extends 
AbstractMailboxProcessor<ListRequest> {
                             .userAndNamespaceFrom(basePath)
                             .expression(new PrefixedRegex(
                                 basePath.getName(),
-                                CharsetUtil.decodeModifiedUTF7(mailboxName),
+                                ModifiedUtf7.decodeModifiedUTF7(mailboxName),
                                 mailboxSession.getPathDelimiter()))
                             .build(), mailboxSession);
             }


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to