You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by se...@apache.org on 2014/12/28 22:01:51 UTC
svn commit: r1648251 -
/commons/proper/net/trunk/src/main/java/examples/mail/IMAPExportMbox.java
Author: sebb
Date: Sun Dec 28 21:01:51 2014
New Revision: 1648251
URL: http://svn.apache.org/r1648251
Log:
Better handling of multiple item names
Modified:
commons/proper/net/trunk/src/main/java/examples/mail/IMAPExportMbox.java
Modified: commons/proper/net/trunk/src/main/java/examples/mail/IMAPExportMbox.java
URL: http://svn.apache.org/viewvc/commons/proper/net/trunk/src/main/java/examples/mail/IMAPExportMbox.java?rev=1648251&r1=1648250&r2=1648251&view=diff
==============================================================================
--- commons/proper/net/trunk/src/main/java/examples/mail/IMAPExportMbox.java (original)
+++ commons/proper/net/trunk/src/main/java/examples/mail/IMAPExportMbox.java Sun Dec 28 21:01:51 2014
@@ -108,7 +108,7 @@ public final class IMAPExportMbox
}
}
- int argCount = args.length - argIdx;
+ final int argCount = args.length - argIdx;
if (argCount < 2)
{
@@ -128,7 +128,26 @@ public final class IMAPExportMbox
final URI uri = URI.create(args[argIdx++]);
final String file = args[argIdx++];
final String sequenceSet = argCount > 2 ? args[argIdx++] : "1:*";
- final String itemNames = argCount > 3 ? args[argIdx++] : "(INTERNALDATE BODY.PEEK[])";
+ final String itemNames;
+ // Handle 0, 1 or multiple item names
+ if (argCount > 3) {
+ if (argCount > 4) {
+ StringBuilder sb = new StringBuilder();
+ sb.append("(");
+ for(int i=4; i <= argCount; i++) {
+ if (i>4) {
+ sb.append(" ");
+ }
+ sb.append(args[argIdx++]);
+ }
+ sb.append(")");
+ itemNames = sb.toString();
+ } else {
+ itemNames = args[argIdx++];
+ }
+ } else {
+ itemNames = "(INTERNALDATE BODY.PEEK[])";
+ }
final MboxListener chunkListener;
if (file.equals("-")) {