KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > columba > mail > gui > util > WelcomeMessage


1 package org.columba.mail.gui.util;
2
3 import java.io.ByteArrayInputStream JavaDoc;
4 import java.io.InputStream JavaDoc;
5
6 import org.columba.core.command.CommandProcessor;
7 import org.columba.core.io.DiskIO;
8 import org.columba.core.io.StreamUtils;
9 import org.columba.mail.command.MailFolderCommandReference;
10 import org.columba.mail.folder.IMailFolder;
11 import org.columba.mail.folder.command.AddMessageCommand;
12
13 /**
14  * Create welcome message.
15  *
16  * @author fdietz
17  */

18 public class WelcomeMessage {
19
20     private static String JavaDoc createMessage(String JavaDoc to, String JavaDoc accountUid)
21             throws Exception JavaDoc {
22         StringBuffer JavaDoc buf = new StringBuffer JavaDoc();
23         buf.append("Subject: Welcome to Columba\r\n");
24         buf.append("From: columba-users@lists.sourceforge.net\r\n");
25         buf.append("To: "+to+"\r\n");
26         buf.append("\r\n");
27
28         InputStream JavaDoc is = DiskIO
29                 .getResourceStream("org/columba/mail/welcome_message_body.txt");
30         String JavaDoc body = StreamUtils.readCharacterStream(is).toString();
31         buf.append(body);
32         
33         return buf.toString();
34     }
35
36     /**
37      * Create welcome message and add it to folder.
38      *
39      * @param folder selected folder (usually this is inbox)
40      * @param to user's email address
41      * @param accountUid account id
42      * @throws Exception
43      */

44     public static void addWelcomeMessage(IMailFolder folder, String JavaDoc to, String JavaDoc accountUid)
45             throws Exception JavaDoc {
46         if ( folder == null) throw new IllegalArgumentException JavaDoc("folder == null");
47         if ( to == null || to.length() == 0) throw new IllegalArgumentException JavaDoc("to == nllu");
48         if ( accountUid == null ) throw new IllegalArgumentException JavaDoc("account uid == null");
49         
50
51         // create message
52
String JavaDoc message = createMessage(to, accountUid);
53         
54         // convert to inputstream
55
InputStream JavaDoc is = new ByteArrayInputStream JavaDoc(message.getBytes("UTF-8"));
56         
57         // add to folder
58
CommandProcessor.getInstance().addOp(
59                 new AddMessageCommand(new MailFolderCommandReference(
60                         folder), is));
61     }
62
63 }
64
Popular Tags