com.ozacc.mail.impl
クラス XMLVelocityMailBuilderImpl

java.lang.Object
  上位を拡張 com.ozacc.mail.impl.AbstractXMLMailBuilder
      上位を拡張 com.ozacc.mail.impl.XMLMailBuilderImpl
          上位を拡張 com.ozacc.mail.impl.XMLVelocityMailBuilderImpl
すべての実装されたインタフェース:
MailBuilder, MultipleMailBuilder, VelocityMailBuilder, VelocityMultipleMailBuilder

public class XMLVelocityMailBuilderImpl
extends XMLMailBuilderImpl
implements VelocityMultipleMailBuilder

XMLファイルを読み込み、Velocityと連携して動的にメールデータを生成し、そのデータからMailインスタンスを生成するクラス。

導入されたバージョン:
1.0.1
バージョン:
$Id: XMLVelocityMailBuilderImpl.java,v 1.4.2.4 2005/01/23 06:13:10 otsuka Exp $
作成者:
Tomohiro Otsuka

フィールドの概要
protected  String charset
           
protected  Map templateCache
           
protected  org.apache.velocity.runtime.log.LogSystem velocityLogSystem
           
 
クラス com.ozacc.mail.impl.AbstractXMLMailBuilder から継承されたフィールド
documentBuilderCache
 
コンストラクタの概要
XMLVelocityMailBuilderImpl()
           
 
メソッドの概要
protected  Mail build(String templateXmlText, org.apache.velocity.VelocityContext context)
          メールデータをVelocityContextとマージして生成されたXMLからMailインスタンスを生成します。
 Mail buildMail(File file, org.apache.velocity.VelocityContext context)
          指定されたファイルを読み込んでMailインスタンスを生成します。
 Mail buildMail(File file, org.apache.velocity.VelocityContext context, String mailId)
          指定されたファイルを読み込み、mailIdが示すデータからMailインスタンスを生成します。
 Mail buildMail(String classPath, org.apache.velocity.VelocityContext context)
          指定されたクラスパス上のファイルを読み込んでMailインスタンスを生成します。
 Mail buildMail(String classPath, org.apache.velocity.VelocityContext context, String mailId)
          指定されたクラスパス上のファイルを読み込み、mailIdが示すデータからMailインスタンスを生成します。
 void clearCache()
          メールデータキャッシュをクリアします。
protected  String convertDocumentIntoString(Element mailElement)
          指定されたDOM Documentを文字列に変換します。
protected  Properties getOutputProperties()
          出力プロパティを生成。
protected  String getTemplateCache(String key)
           
protected  boolean hasTemplateCache(String key)
           
 boolean isCacheEnabled()
          VelocityContextとマージする前のメールデータをキャッシュする設定かどうか判定します。
protected  void putTemplateCache(String key, String templateXmlText)
           
 void setCacheEnabled(boolean cacheEnabled)
          VelocityContextとマージする前のメールデータをキャッシュするかどうかを設定します。
 
クラス com.ozacc.mail.impl.XMLMailBuilderImpl から継承されたメソッド
buildMail, buildMail, buildMail, buildMail, buildMail, buildMail
 
クラス com.ozacc.mail.impl.AbstractXMLMailBuilder から継承されたメソッド
createDocumentBuilder, createDocumentBuilder, getDocumentFromClassPath, getDocumentFromClassPath, getDocumentFromFile, getDocumentFromFile, setFrom, setHtml, setRecipients, setReplyTo, setReturnPath, setSubject, setText
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
インタフェース com.ozacc.mail.MailBuilder から継承されたメソッド
buildMail, buildMail
 

フィールドの詳細

charset

protected String charset

velocityLogSystem

protected org.apache.velocity.runtime.log.LogSystem velocityLogSystem

templateCache

protected Map templateCache
コンストラクタの詳細

XMLVelocityMailBuilderImpl

public XMLVelocityMailBuilderImpl()
メソッドの詳細

hasTemplateCache

protected boolean hasTemplateCache(String key)

putTemplateCache

protected void putTemplateCache(String key,
                                String templateXmlText)

getTemplateCache

protected String getTemplateCache(String key)

clearCache

public void clearCache()
インタフェース VelocityMailBuilder の記述:
メールデータキャッシュをクリアします。

定義:
インタフェース VelocityMailBuilder 内の clearCache
関連項目:
VelocityMailBuilder.clearCache()

isCacheEnabled

public boolean isCacheEnabled()
インタフェース VelocityMailBuilder の記述:
VelocityContextとマージする前のメールデータをキャッシュする設定かどうか判定します。

定義:
インタフェース VelocityMailBuilder 内の isCacheEnabled
戻り値:
メールデータをキャッシュする設定の場合は true
関連項目:
VelocityMailBuilder.isCacheEnabled()

setCacheEnabled

public void setCacheEnabled(boolean cacheEnabled)
インタフェース VelocityMailBuilder の記述:
VelocityContextとマージする前のメールデータをキャッシュするかどうかを設定します。 デフォルトはキャッシュしない設定です。

キャッシュのキーは、buildMail()メソッド引数のメールデータファイルのクラスパス或いはファイルパスです。 キャッシュに有効期限はありません。 また、メールデータファイルの内容が途中で更新されても、キャッシュされているメールデータは更新されませんので注意してください。

falseを指定してこのメソッドを呼ぶとメールデータキャッシュはクリアされます。

定義:
インタフェース VelocityMailBuilder 内の setCacheEnabled
パラメータ:
cacheEnabled - メールデータをキャッシュする場合は true
関連項目:
VelocityMailBuilder.setCacheEnabled(boolean)

buildMail

public Mail buildMail(String classPath,
                      org.apache.velocity.VelocityContext context)
               throws MailBuildException
インタフェース VelocityMailBuilder の記述:
指定されたクラスパス上のファイルを読み込んでMailインスタンスを生成します。 指定されたVelocityContextを使って、XMLファイルの内容を動的に生成できます。

定義:
インタフェース VelocityMailBuilder 内の buildMail
パラメータ:
classPath - メール内容を記述したファイルのパス
context - VelocityContext
戻り値:
生成されたMailインスタンス
例外:
MailBuildException - Mailインスタンスの生成に失敗した場合
関連項目:
VelocityMailBuilder.buildMail(java.lang.String, org.apache.velocity.VelocityContext)

buildMail

public Mail buildMail(File file,
                      org.apache.velocity.VelocityContext context)
               throws MailBuildException
インタフェース VelocityMailBuilder の記述:
指定されたファイルを読み込んでMailインスタンスを生成します。 指定されたVelocityContextを使って、XMLファイルの内容を動的に生成できます。

定義:
インタフェース VelocityMailBuilder 内の buildMail
パラメータ:
file - メール内容を記述したファイル
context - VelocityContext
戻り値:
生成されたMailインスタンス
例外:
MailBuildException - Mailインスタンスの生成に失敗した場合
関連項目:
VelocityMailBuilder.buildMail(java.io.File, org.apache.velocity.VelocityContext)

build

protected Mail build(String templateXmlText,
                     org.apache.velocity.VelocityContext context)
              throws TransformerFactoryConfigurationError,
                     Exception,
                     org.apache.velocity.exception.ParseErrorException,
                     org.apache.velocity.exception.MethodInvocationException,
                     org.apache.velocity.exception.ResourceNotFoundException,
                     IOException
メールデータをVelocityContextとマージして生成されたXMLからMailインスタンスを生成します。

パラメータ:
templateXmlText - メールデータのテンプレート
context - テンプレートにマージする内容を格納したVelocityContext
戻り値:
VelocityContextをテンプレートにマージして生成されたXMLから生成されたMailインスタンス
例外:
TransformerFactoryConfigurationError
Exception
org.apache.velocity.exception.ParseErrorException
org.apache.velocity.exception.MethodInvocationException
org.apache.velocity.exception.ResourceNotFoundException
IOException

convertDocumentIntoString

protected String convertDocumentIntoString(Element mailElement)
                                    throws TransformerFactoryConfigurationError
指定されたDOM Documentを文字列に変換します。

パラメータ:
mailElement -
戻り値:
XMLドキュメントの文字列
例外:
TransformerFactoryConfigurationError

getOutputProperties

protected Properties getOutputProperties()
出力プロパティを生成。

戻り値:
出力プロパティを設定したPropertiesインスタンス

buildMail

public Mail buildMail(String classPath,
                      org.apache.velocity.VelocityContext context,
                      String mailId)
               throws MailBuildException
インタフェース VelocityMultipleMailBuilder の記述:
指定されたクラスパス上のファイルを読み込み、mailIdが示すデータからMailインスタンスを生成します。 指定されたVelocityContextを使って、XMLファイルの内容を動的に生成できます。

定義:
インタフェース VelocityMultipleMailBuilder 内の buildMail
パラメータ:
classPath - メール内容を記述したファイルのパス
context - VelocityContext
mailId - 生成するMailのメールデータを示すID
戻り値:
生成されたMailインスタンス
例外:
MailBuildException - Mailインスタンスの生成に失敗した場合
関連項目:
VelocityMultipleMailBuilder.buildMail(java.lang.String, org.apache.velocity.VelocityContext, java.lang.String)

buildMail

public Mail buildMail(File file,
                      org.apache.velocity.VelocityContext context,
                      String mailId)
               throws MailBuildException
インタフェース VelocityMultipleMailBuilder の記述:
指定されたファイルを読み込み、mailIdが示すデータからMailインスタンスを生成します。 指定されたVelocityContextを使って、XMLファイルの内容を動的に生成できます。

定義:
インタフェース VelocityMultipleMailBuilder 内の buildMail
パラメータ:
file - メール内容を記述したファイル
context - VelocityContext
mailId - 生成するMailのメールデータを示すID
戻り値:
生成されたMailインスタンス
例外:
MailBuildException - Mailインスタンスの生成に失敗した場合
関連項目:
VelocityMultipleMailBuilder.buildMail(java.io.File, org.apache.velocity.VelocityContext, java.lang.String)


Copyright © 2004-2006 OZACC. All Rights Reserved.