1 package com.ozacc.mail;
2
3 import java.io.File;
4
5 import org.apache.velocity.VelocityContext;
6
7 /***
8 * Velocityと連携して動的にメールデータを生成し、そのデータからMailインスタンスを生成するインターフェース。
9 *
10 * @since 1.2
11 * @author Tomohiro Otsuka
12 * @version $Id: VelocityMultipleMailBuilder.java,v 1.1.2.2 2005/01/23 06:47:08 otsuka Exp $
13 */
14 public interface VelocityMultipleMailBuilder extends VelocityMailBuilder {
15
16 /***
17 * 指定されたクラスパス上のファイルを読み込み、mailIdが示すデータからMailインスタンスを生成します。
18 * 指定されたVelocityContextを使って、XMLファイルの内容を動的に生成できます。
19 *
20 * @param classPath メール内容を記述したファイルのパス
21 * @param context VelocityContext
22 * @param mailId 生成するMailのメールデータを示すID
23 * @return 生成されたMailインスタンス
24 * @throws MailBuildException Mailインスタンスの生成に失敗した場合
25 */
26 Mail buildMail(String classPath, VelocityContext context, String mailId)
27 throws MailBuildException;
28
29 /***
30 * 指定されたファイルを読み込み、mailIdが示すデータからMailインスタンスを生成します。
31 * 指定されたVelocityContextを使って、XMLファイルの内容を動的に生成できます。
32 *
33 * @param file メール内容を記述したファイル
34 * @param context VelocityContext
35 * @param mailId 生成するMailのメールデータを示すID
36 * @return 生成されたMailインスタンス
37 * @throws MailBuildException Mailインスタンスの生成に失敗した場合
38 */
39 Mail buildMail(File file, VelocityContext context, String mailId) throws MailBuildException;
40
41 }