|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
java.lang.Objectnablarch.fw.handler.DispatchHandler<TData,TResult,TSelf>
TData - ハンドラに対する入力オブジェクトの型TResult - ハンドラの処理結果オブジェクトの型TSelf - 具象ハンドラの型public abstract class DispatchHandler<TData,TResult,TSelf extends nablarch.fw.Handler<TData,TResult>>
ハンドラキューの委譲チェインとは独立したルールに従って、 ハンドラのディスパッチを行うハンドラ(ディスパッチャ)
| コンストラクタの概要 | |
|---|---|
DispatchHandler()
|
|
| メソッドの概要 | |
|---|---|
protected nablarch.fw.Handler<TData,TResult> |
createHandlerFor(java.lang.Object delegate,
nablarch.fw.ExecutionContext ctx)
渡されたインスタンスからハンドラインスタンスを作成して返す。 |
protected abstract java.lang.Class<?> |
getHandlerClass(TData input,
nablarch.fw.ExecutionContext context)
処理を委譲するハンドラの型を決定する。 |
TResult |
handle(TData req,
nablarch.fw.ExecutionContext ctx)
このクラスの実装では、 #getHandlerClass() で指定されるクラスのインスタンスを生成し、 ハンドラキューに追加した後、後続のハンドラに処理を委譲する。 |
TSelf |
setImmediate(boolean immediate)
ディスパッチされたハンドラの実行タイミングを指定する。 |
protected void |
writeDispatchingClassLog(TData data,
nablarch.fw.ExecutionContext context,
java.lang.String fqn)
アクセスログにディスパッチ先クラスを出力する。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| コンストラクタの詳細 |
|---|
public DispatchHandler()
| メソッドの詳細 |
|---|
protected abstract java.lang.Class<?> getHandlerClass(TData input,
nablarch.fw.ExecutionContext context)
throws java.lang.ClassNotFoundException
input - 入力データcontext - 実行コンテキスト
java.lang.ClassNotFoundException - 指定されたクラスが存在しなかった場合。
public TResult handle(TData req,
nablarch.fw.ExecutionContext ctx)
immediateの値に従って以下のように変化する。
immediate = true : ハンドラキューの先頭に追加。(即時に実行される。) immediate = false: ハンドラキューの末尾に追加。
nablarch.fw.Handler<TData,TResult> 内の handle
protected nablarch.fw.Handler<TData,TResult> createHandlerFor(java.lang.Object delegate,
nablarch.fw.ExecutionContext ctx)
delegate - インスタンスctx - 実行コンテキスト
public TSelf setImmediate(boolean immediate)
immediate - trueの場合は、ディスパッチされたハンドラをハンドラキューの先端に追加する。
falseの場合は、ディスパッチされたハンドラをハンドラキューの最後尾に追加する。
protected void writeDispatchingClassLog(TData data,
nablarch.fw.ExecutionContext context,
java.lang.String fqn)
data - 入力データオブジェクトcontext - 実行コンテキストfqn - ディスパッチ先クラスの完全修飾クラス名
|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||