Class VelocityMailProcessor
java.lang.Object
nablarch.integration.mail.velocity.VelocityMailProcessor
- All Implemented Interfaces:
TemplateEngineMailProcessor
Velocityを使用する
TemplateEngineMailProcessorの実装クラス。-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.velocity.context.ContextcreateContext(Map<String, Object> variables) Contextを作成する。テンプレートIDから取得されたテンプレートと変数をマージして、その結果を返す。voidsetDelimiter(String delimiter) 件名と本文を分けるデリミタを設定する。voidsetVelocityEngine(org.apache.velocity.app.VelocityEngine velocityEngine) VelocityのエントリーポイントとなるVelocityEngineを設定する。
-
Constructor Details
-
VelocityMailProcessor
public VelocityMailProcessor()
-
-
Method Details
-
process
public TemplateEngineProcessedResult process(String templateId, String lang, Map<String, Object> variables) テンプレートIDから取得されたテンプレートと変数をマージして、その結果を返す。テンプレートの検索は
VelocityEngine.getTemplate(String)が使われる。 テンプレートと変数のマージはTemplate.merge(Context, Writer)が使われる。※この実装ではテンプレートの検索が多言語対応していないため、第二引数の言語は使用されない。
- Specified by:
processin interfaceTemplateEngineMailProcessor- Parameters:
templateId- テンプレートIDlang- 言語(nullでもよい)variables- 変数- Returns:
- 処理結果
- See Also:
-
VelocityEngine.getTemplate(String)Template.merge(Context, Writer)
-
createContext
Contextを作成する。- Parameters:
variables-process(String, String, Map)に渡された変数- Returns:
Contextのインスタンス
-
setVelocityEngine
public void setVelocityEngine(org.apache.velocity.app.VelocityEngine velocityEngine) VelocityのエントリーポイントとなるVelocityEngineを設定する。- Parameters:
velocityEngine- Velocityのエンジン
-
setDelimiter
件名と本文を分けるデリミタを設定する。なにも設定されていなければ
デフォルトのデリミタが使用される。- Parameters:
delimiter- 件名と本文を分けるデリミタ
-