OSDN Git Service

CVS最新版の全ファイルを追加
[spring-ext/ozacc-mail.git] / src / java / com / ozacc / mail / fetch / impl / sk_jp / PartHandler.java
1 /*\r
2  * @(#) $Id: PartHandler.java,v 1.1.2.1 2004/09/29 00:57:59 otsuka Exp $\r
3  * $Revision: 1.1.2.1 $\r
4  * Copyright (c) 2000 Shin Kinoshita All Rights Reserved.\r
5  */\r
6 package com.ozacc.mail.fetch.impl.sk_jp;\r
7 \r
8 import java.io.IOException;\r
9 import javax.mail.Part;\r
10 import javax.mail.MessagingException;\r
11 import javax.mail.internet.ContentType;\r
12 \r
13 /**\r
14  * PartHandlerです。\r
15  * <p>\r
16  * MultipartUtility#process()に渡すことで、Message内の各Partオブジェクト\r
17  * に対してprocessPartが呼び出されます。<BR>\r
18  * 特定のMIMEタイプに対してのみ処理を行う場合などに有効です。\r
19  * </p><p>\r
20  * 使用方法としては、実装クラス上に各パートの処理結果を蓄積していき、\r
21  * MultipartUtility#process()メソッド復帰後にそのオブジェクトから最終結果を\r
22  * 取り出すような形式が考えられます。\r
23  * </p>\r
24  * @version $Revision: 1.1.2.1 $ $Date: 2004/09/29 00:57:59 $\r
25  * @author Shin\r
26  */\r
27 public interface PartHandler {\r
28 \r
29         /**\r
30          * パートに対して処理を行います。\r
31          * <P>\r
32          * contextにはそのパートがmultipart/*の子パートである場合に、\r
33          * そのmultipart/*のMIMEタイプが渡されます。<BR>\r
34          * 続けて次のパートを処理するか否かを復帰値で返してください。\r
35          * </P><P>\r
36          * message/rfc822パートの内部も走査したい場合は、実装クラス内で\r
37          * 以下のようにコーディングしてください。\r
38          * </P>\r
39          * <PRE>if (part.isMimeType("message/rfc822")) {\r
40          *     // message/rfc822パートの処理オブジェクト\r
41          *     AnyHandler h = new AnyHandler();\r
42          *     MultipartUtility.process(part, h);\r
43          * }\r
44          * </PRE>\r
45          * @return true:次のパート、或いは内包メッセージ内部も処理する\r
46          */\r
47         boolean processPart(Part part, ContentType context) throws MessagingException, IOException;\r
48 }