1 package com.ozacc.mail.fetch;
2
3 import com.ozacc.mail.MailException;
4
5 /***
6 * メールサーバからメールを取得するインターフェース。<br>
7 * このインターフェースの実装クラスでメールサーバの情報を設定します。
8 * <p>
9 * getMails()メソッドはスレッドセーフです。メソッドを呼び出すとメールサーバに接続し、
10 * メソッド終了時にサーバとの接続を切断します。
11 *
12 * @since 1.2
13 * @author Tomohiro Otsuka
14 * @version $Id: FetchMail.java,v 1.1.2.5 2004/10/27 19:41:35 otsuka Exp $
15 */
16 public interface FetchMail {
17
18 /***
19 * メールサーバからメールを受信し、ReceivedMailインスタンスに変換して返します。<br>
20 * 受信したメールは、メールサーバに残されます。
21 * <p>
22 * このメソッドを呼び出すとメールサーバに接続します。メールを受信した後、メールサーバとの接続を切断します。
23 * <p>
24 * メールサーバがimapサーバの場合、一度受信したメールには既読フラグ(SEENフラグ)が付けられます。
25 *
26 * @return 受信したメールのReceivedMailインスタンス配列
27 * @throws MailException
28 */
29 ReceivedMail[] getMails() throws MailException;
30
31 /***
32 * メールサーバからメールを受信し、ReceivedMailインスタンスに変換して返します。<br>
33 * deleteパラメータで、受信時にメールサーバからメールを削除するか残すかを指定します。
34 * <p>
35 * このメソッドを呼び出すとメールサーバに接続します。メールを受信した後、メールサーバとの接続を切断します。
36 * <p>
37 * メールサーバがimapサーバの場合、一度受信したメールには既読フラグ(SEENフラグ)が付けられます。
38 *
39 * @param delete 受信時にメールサーバからメールを削除する場合 true
40 * @return 受信したメールのReceivedMailインスタンス配列
41 * @throws MailException
42 */
43 ReceivedMail[] getMails(boolean delete) throws MailException;
44
45 }