From: <es...@us...> - 2009-11-12 17:15:22
|
Revision: 421 http://columba.svn.sourceforge.net/columba/?rev=421&view=rev Author: eschman Date: 2009-11-12 17:15:10 +0000 (Thu, 12 Nov 2009) Log Message: ----------- [bug] don't append the last comma in the header Modified Paths: -------------- columba/trunk/mail/src/main/java/org/columba/mail/composer/MessageComposer.java columba/trunk/mail/src/main/java/org/columba/mail/gui/composer/HeaderController.java columba/trunk/mail/src/main/java/org/columba/mail/parser/ListParser.java columba/trunk/mail/src/test/java/org/columba/mail/parser/ListParserTest.java Modified: columba/trunk/mail/src/main/java/org/columba/mail/composer/MessageComposer.java =================================================================== --- columba/trunk/mail/src/main/java/org/columba/mail/composer/MessageComposer.java 2009-11-12 02:17:44 UTC (rev 420) +++ columba/trunk/mail/src/main/java/org/columba/mail/composer/MessageComposer.java 2009-11-12 17:15:10 UTC (rev 421) @@ -77,7 +77,7 @@ // RFC822 - Header if (model.getToList() != null) { String s = ListParser.createStringFromList(ListBuilder - .createFlatList(model.getToList()), ","); + .createFlatList(model.getToList()), ",", false); if ( s.length() != 0 ) header.set("To",EncodedWord.encode(s, headerCharset, EncodedWord.QUOTED_PRINTABLE).toString() ); @@ -85,7 +85,7 @@ if (model.getCcList() != null) { String s = ListParser.createStringFromList(ListBuilder - .createFlatList(model.getCcList()), ","); + .createFlatList(model.getCcList()), ",", false); if ( s.length() != 0 ) header.set("Cc",EncodedWord.encode(s, headerCharset, EncodedWord.QUOTED_PRINTABLE).toString() ); Modified: columba/trunk/mail/src/main/java/org/columba/mail/gui/composer/HeaderController.java =================================================================== --- columba/trunk/mail/src/main/java/org/columba/mail/gui/composer/HeaderController.java 2009-11-12 02:17:44 UTC (rev 420) +++ columba/trunk/mail/src/main/java/org/columba/mail/gui/composer/HeaderController.java 2009-11-12 17:15:10 UTC (rev 421) @@ -136,15 +136,15 @@ if (b) { String s = ListParser.createStringFromList(controller.getModel() - .getToList(), ","); + .getToList(), ",", true); getView().getToComboBox().setText(s); s = ListParser.createStringFromList(controller.getModel() - .getCcList(), ","); + .getCcList(), ",", true); getView().getCcComboBox().setText(s); s = ListParser.createStringFromList(controller.getModel() - .getBccList(), ","); + .getBccList(), ",", true); getView().getBccComboBox().setText(s); } else { Modified: columba/trunk/mail/src/main/java/org/columba/mail/parser/ListParser.java =================================================================== --- columba/trunk/mail/src/main/java/org/columba/mail/parser/ListParser.java 2009-11-12 02:17:44 UTC (rev 420) +++ columba/trunk/mail/src/main/java/org/columba/mail/parser/ListParser.java 2009-11-12 17:15:10 UTC (rev 421) @@ -147,17 +147,18 @@ * @return String representation, never <code>null</code */ public static String createStringFromList(List<String> list, - String separator) { + String separator, boolean trailingSeperator) { if (list == null) throw new IllegalArgumentException("list == null"); if (separator == null) throw new IllegalArgumentException("separator == null"); StringBuffer output = new StringBuffer(); + String seperatorstring = ""; for (Iterator it = list.iterator(); it.hasNext();) { String address = (String) it.next(); - if (address == null) { + if (address == null || address.equals("")) { continue; } @@ -184,16 +185,13 @@ address = addrSB.toString(); + output.append(seperatorstring); output.append(address); - output.append(separator); - output.append(" "); + seperatorstring = separator + " "; } - /* - if (output.length() > 0) { - output.deleteCharAt(output.length() - 1); - } - */ + if (trailingSeperator) + output.append(seperatorstring); return output.toString(); } Modified: columba/trunk/mail/src/test/java/org/columba/mail/parser/ListParserTest.java =================================================================== --- columba/trunk/mail/src/test/java/org/columba/mail/parser/ListParserTest.java 2009-11-12 02:17:44 UTC (rev 420) +++ columba/trunk/mail/src/test/java/org/columba/mail/parser/ListParserTest.java 2009-11-12 17:15:10 UTC (rev 421) @@ -136,7 +136,7 @@ @Test public void testCreateStringFromListNull() { try { - ListParser.createStringFromList(new Vector<String>(), null); + ListParser.createStringFromList(new Vector<String>(), null, false); Assert.fail(); } catch (IllegalArgumentException e) { } @@ -145,7 +145,7 @@ @Test public void testCreateStringFromListNull2() { try { - ListParser.createStringFromList(null, ";"); + ListParser.createStringFromList(null, ";", false); Assert.fail(); } catch (IllegalArgumentException e) { } @@ -156,7 +156,7 @@ List<String> list = new Vector<String>(); - String result = ListParser.createStringFromList(list, ";"); + String result = ListParser.createStringFromList(list, ";", false); Assert.assertEquals("", result); } @@ -167,7 +167,7 @@ list.add("te...@te..."); list.add("te...@te..."); - String result = ListParser.createStringFromList(list, ","); + String result = ListParser.createStringFromList(list, ",", true); Assert.assertEquals("te...@te..., te...@te..., ", result); } @@ -181,8 +181,8 @@ list.add("te...@te..."); list.add("\"My yours and he's list\""); - String result = ListParser.createStringFromList(list, ","); - Assert.assertEquals("te...@te..., My yours and he's list, ", result); + String result = ListParser.createStringFromList(list, ",", false); + Assert.assertEquals("te...@te..., My yours and he's list", result); } @@ -198,7 +198,7 @@ list.add("Firstname Lastname"); list.add("\"Lastname, Firstname\""); - String result = ListParser.createStringFromList(list, ","); + String result = ListParser.createStringFromList(list, ",", true); Assert.assertEquals("te...@te..., Firstname Lastname, \"Lastname, Firstname\", ", result); } @@ -214,7 +214,7 @@ list.add("\"Firstname Lastname\" <ma...@ma...>"); list.add("\"Lastname, Firstname\" <ma...@ma...>"); - String result = ListParser.createStringFromList(list, ","); - Assert.assertEquals("te...@te..., Firstname Lastname <ma...@ma...>, \"Lastname, Firstname\" <ma...@ma...>, ", result); + String result = ListParser.createStringFromList(list, ",", false); + Assert.assertEquals("te...@te..., Firstname Lastname <ma...@ma...>, \"Lastname, Firstname\" <ma...@ma...>", result); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-05-31 20:57:04
|
Revision: 453 http://columba.svn.sourceforge.net/columba/?rev=453&view=rev Author: eschman Date: 2010-05-31 20:56:58 +0000 (Mon, 31 May 2010) Log Message: ----------- [internal] synchronizeHeaderlist() already receives the status from the server so there is no need to get it a second time Modified Paths: -------------- columba/trunk/mail/src/main/java/org/columba/mail/folder/imap/IMAPFolder.java columba/trunk/mail/src/main/java/org/columba/mail/imap/IImapServer.java columba/trunk/mail/src/main/java/org/columba/mail/imap/IMAPServer.java columba/trunk/mail/src/test/java/org/columba/mail/imap/TestServer.java Modified: columba/trunk/mail/src/main/java/org/columba/mail/folder/imap/IMAPFolder.java =================================================================== --- columba/trunk/mail/src/main/java/org/columba/mail/folder/imap/IMAPFolder.java 2010-03-17 09:06:42 UTC (rev 452) +++ columba/trunk/mail/src/main/java/org/columba/mail/folder/imap/IMAPFolder.java 2010-05-31 20:56:58 UTC (rev 453) @@ -279,7 +279,7 @@ int largestLocalUid = localUids.size() > 0 ? ((Integer) localUids .get(localUids.size() - 1)).intValue() : -1; - int largestRemoteUid = getServer().getLargestRemoteUid(this); + int largestRemoteUid = getServer().getLargestRemoteUid(this, status); if (localUids.size() == status.getMessages() && largestRemoteUid == largestLocalUid) { Modified: columba/trunk/mail/src/main/java/org/columba/mail/imap/IImapServer.java =================================================================== --- columba/trunk/mail/src/main/java/org/columba/mail/imap/IImapServer.java 2010-03-17 09:06:42 UTC (rev 452) +++ columba/trunk/mail/src/main/java/org/columba/mail/imap/IImapServer.java 2010-05-31 20:56:58 UTC (rev 453) @@ -512,5 +512,7 @@ public int getLargestRemoteUid(IMAPFolder folder) throws IOException, IMAPException, CommandCancelledException; + + public int getLargestRemoteUid(IMAPFolder folder, MailboxStatus status) throws IOException, IMAPException, CommandCancelledException; } \ No newline at end of file Modified: columba/trunk/mail/src/main/java/org/columba/mail/imap/IMAPServer.java =================================================================== --- columba/trunk/mail/src/main/java/org/columba/mail/imap/IMAPServer.java 2010-03-17 09:06:42 UTC (rev 452) +++ columba/trunk/mail/src/main/java/org/columba/mail/imap/IMAPServer.java 2010-05-31 20:56:58 UTC (rev 453) @@ -634,6 +634,10 @@ public int getLargestRemoteUid(IMAPFolder folder) throws IOException, IMAPException, CommandCancelledException { MailboxStatus status = getStatus(folder); + return getLargestRemoteUid(folder, status); + } + + public int getLargestRemoteUid(IMAPFolder folder, MailboxStatus status) throws IOException, IMAPException, CommandCancelledException { if(status.getUidNext() < 0 && status.getMessages() > 0 ) { return fetchUid(new SequenceSet(status.getMessages()), folder); } else { Modified: columba/trunk/mail/src/test/java/org/columba/mail/imap/TestServer.java =================================================================== --- columba/trunk/mail/src/test/java/org/columba/mail/imap/TestServer.java 2010-03-17 09:06:42 UTC (rev 452) +++ columba/trunk/mail/src/test/java/org/columba/mail/imap/TestServer.java 2010-05-31 20:56:58 UTC (rev 453) @@ -391,4 +391,9 @@ return maxUid; } + public int getLargestRemoteUid(IMAPFolder folder, MailboxStatus status) + throws IOException, IMAPException, CommandCancelledException { + return getLargestRemoteUid(folder); + } + } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |