View Javadoc

1   package com.ozacc.mail;
2   
3   import java.io.File;
4   import java.util.ArrayList;
5   import java.util.List;
6   
7   import com.ozacc.mail.Mail;
8   
9   /***
10   * ¥Þ¥?¥Á¥Ñ¡¼¥È¡¦¥á¡¼¥?¡£¥Õ¥¡¥¤¥?¤òźÉÕ¤·¤¿¤ê¡¢ËÜʸ¤ËHTML¤ò»ÈÍѤǤ­¤Þ¤¹¡£
11   * <p>
12   * <code>setHtmlText(String)</code>¤È<code>setText(String)</code>¥á¥½¥Ã¥É¤ÎξÊ?¤ò»ÈÍѤ·¤ÆËÜʸ¤ò¥»¥Ã¥È¤·¤¿¾?¹ç¤Ï¡¢
13   * ¥×¥?¡¼¥ó¥Æ¥­¥¹¥È¤ÎËÜʸ¤ÈHTML¤ÎËÜʸ¤ÎξÊ?¤¬¥»¥Ã¥È¤µ¤?¤¿¥á¡¼¥?¤Ë¤Ê¤ê¤Þ¤¹¡£
14   * <p>
15   * <strong>Ã?:</strong> <code>addFile(File, String)</code>¥á¥½¥Ã¥É¤ò»ÈÍѤ·¤ÆÇ¤°Õ¤Î¥Õ¥¡¥¤¥?̾¤ò¥»¥Ã¥È¤¹¤?¾?¹ç¡¢¥Õ¥¡¥¤¥?̾¤ËŬÀڤʳÈÄ¥»Ò¤òÉÕ¤±¤Æ¤¯¤À¤µ¤¤¡£
16   * 
17   * @since 1.1
18   * 
19   * @author Tomohiro Otsuka
20   * @version $Id: MultipartMail.java,v 1.3 2004/09/16 04:52:56 otsuka Exp $
21   */
22  public class MultipartMail extends Mail {
23  
24  	private String htmlText;
25  
26  	private List attachmentFiles;
27  
28  	/***
29  	 * ¥³¥ó¥¹¥È¥é¥¯¥¿¡£
30  	 */
31  	public MultipartMail() {
32  		super();
33  	}
34  
35  	/***
36  	 * ¥³¥ó¥¹¥È¥é¥¯¥¿¡£
37  	 * °¸Àè¤äº¹½Ð¿Í¤Î̾Á°¤ò¥¨¥ó¥³¡¼¥É¤¹¤?»?¤Ë»ÈÍѤ¹¤?ʸ»ú¥³¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£
38  	 * ¥Ç¥Õ¥©¥?¥È¤Ï<code>ISO-2022-JP</code>¤Ç¤¹¡£
39  	 * <p>
40  	 * Æ?Ëܸ?´Ä¶­¤ÇÍøÍѤ¹¤?¾?¹ç¤ÏÄ̾?Êѹ¹¤¹¤?ɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
41  	 * 
42  	 * @param charset ¥¨¥ó¥³¡¼¥É¤Ë»ÈÍѤ¹¤?ʸ»ú¥³¡¼¥É
43  	 */
44  	public MultipartMail(String charset) {
45  		super(charset);
46  	}
47  
48  	/***
49  	 * ¥³¥Ô¡¼¥³¥ó¥¹¥È¥é¥¯¥¿¡£
50  	 * ¥·¥ã¥ú½¼¥³¥Ô¡¼(shallow copy)¤Ç¤¹¡£
51  	 * 
52  	 * @param original ¥³¥Ô¡¼¸µ¤ÎMail¥¤¥ó¥¹¥¿¥ó¥¹
53  	 */
54  	public MultipartMail(Mail original) {
55  		super(original);
56  	}
57  
58  	/***
59  	 * ¥³¥Ô¡¼¥³¥ó¥¹¥È¥é¥¯¥¿¡£
60  	 * ¥·¥ã¥ú½¼¥³¥Ô¡¼(shallow copy)¤Ç¤¹¡£
61  	 * 
62  	 * @param original ¥³¥Ô¡¼¸µ¤ÎMultipartMail¥¤¥ó¥¹¥¿¥ó¥¹
63  	 */
64  	public MultipartMail(MultipartMail original) {
65  		super(original);
66  		this.htmlText = original.htmlText;
67  		this.attachmentFiles = original.attachmentFiles;
68  	}
69  
70  	/***
71  	 * HTML¤ÎËÜʸ¤ò¥»¥Ã¥È¤·¤Þ¤¹¡£
72  	 * 
73  	 * @param htmlText HTML¤ÎËÜʸ
74  	 */
75  	public void setHtmlText(String htmlText) {
76  		this.htmlText = htmlText;
77  	}
78  
79  	/***
80  	 * HTML¤ÎËÜʸ¤òÊÖ¤·¤Þ¤¹¡£
81  	 * 
82  	 * @return HTML¤ÎËÜʸ
83  	 */
84  	public String getHtmlText() {
85  		return htmlText;
86  	}
87  
88  	/***
89  	 * »ØÄꤵ¤?¤¿¥Õ¥¡¥¤¥?¤òźÉÕ¤·¤Þ¤¹¡£
90  	 * źÉÕ¥Õ¥¡¥¤¥?̾¤Ë¤Ï¡¢»ØÄꤵ¤?¤¿¥Õ¥¡¥¤¥?¤Î̾Á°¤¬»ÈÍѤµ¤?¤Þ¤¹¡£
91  	 * 
92  	 * @param file źÉÕ¥Õ¥¡¥¤¥?
93  	 */
94  	public void addFile(File file) {
95  		addFile(file, file.getName());
96  	}
97  
98  	/***
99  	 * »ØÄꤵ¤?¤¿¥Õ¥¡¥¤¥?¤òźÉÕ¤·¤Þ¤¹¡£
100 	 * ¥Õ¥¡¥¤¥?̾¤Ë¤ÏŬÀڤʳÈÄ¥»Ò¤òÉÕ¤±¤Æ¤¯¤À¤µ¤¤¡£
101 	 * 
102 	 * @param file źÉÕ¥Õ¥¡¥¤¥?
103 	 * @param fileName ¥Õ¥¡¥¤¥?̾
104 	 */
105 	public void addFile(File file, String fileName) {
106 		if (attachmentFiles == null) {
107 			attachmentFiles = new ArrayList();
108 		}
109 		attachmentFiles.add(new AttachmentFile(fileName, file));
110 	}
111 
112 	/***
113 	 * źÉÕ¥Õ¥¡¥¤¥?¤ÎÇÛÎó¤òÊÖ¤·¤Þ¤¹¡£
114 	 * źÉÕ¥Õ¥¡¥¤¥?¤¬¥»¥Ã¥È¤µ¤?¤Æ¤¤¤Ê¤¤¾?¹ç¤Ï¡¢¶õ¤ÎÇÛÎó¤òÊÖ¤·¤Þ¤¹¡£
115 	 * 
116 	 * @return źÉÕ¥Õ¥¡¥¤¥?¤ÎÇÛÎ󡣤ޤ¿¤Ï¶õ¤ÎÇÛÎó¡£
117 	 */
118 	public AttachmentFile[] getAttachmentFiles() {
119 		if (attachmentFiles == null) {
120 			return new AttachmentFile[0];
121 		}
122 		return (AttachmentFile[])attachmentFiles
123 				.toArray(new AttachmentFile[attachmentFiles.size()]);
124 	}
125 
126 	/***
127 	 * HTML¤ÎËÜʸ¤¬¥»¥Ã¥È¤µ¤?¤Æ¤¤¤?¤«¤É¤¦¤«È½Äꤷ¤Þ¤¹¡£
128 	 * 
129 	 * @return HTML¤ÎËÜʸ¤¬¥»¥Ã¥È¤µ¤?¤Æ¤¤¤?¾?¹? true
130 	 */
131 	public boolean isHtmlMail() {
132 		return (htmlText != null);
133 	}
134 
135 	/***
136 	 * źÉÕ¥Õ¥¡¥¤¥?¡£
137 	 * 
138 	 * @author Tomohiro Otsuka
139 	 * @version $Id: MultipartMail.java,v 1.3 2004/09/16 04:52:56 otsuka Exp $
140 	 */
141 	public static class AttachmentFile {
142 
143 		private String name;
144 
145 		private File file;
146 
147 		/***
148 		 * ¥Õ¥¡¥¤¥?̾¤È¥Õ¥¡¥¤¥?¤ò»ØÄꤷ¤Æ¡¢¤³¤Î¥¯¥é¥¹¤Î¥¤¥ó¥¿¥ó¥¹¤òÀ¸À®¤·¤Þ¤¹¡£
149 		 * 
150 		 * @param name ¥á¡¼¥?¤Ëɽ¼¨¤¹¤?¥Õ¥¡¥¤¥?̾
151 		 * @param file źÉÕ¥Õ¥¡¥¤¥?
152 		 */
153 		public AttachmentFile(String name, File file) {
154 			this.name = name;
155 			this.file = file;
156 		}
157 
158 		/***
159 		 * @return Returns the file.
160 		 */
161 		public File getFile() {
162 			return file;
163 		}
164 
165 		/***
166 		 * @return Returns the name.
167 		 */
168 		public String getName() {
169 			return name;
170 		}
171 	}
172 }