InterceptorChainプラグイン
(Piece_Unity >= 0.4.0)
概要
コンポーネント
説明
void invoke (void)
インターセプタは、Rootプラグイン?の拡張ポイントinterceptor?として定義されており、デフォルトでこのプラグインが設定されています。
このプラグインは、拡張ポイントinterceptorsに設定されたすべてのインターセプタを、登録順に実行します。
このプラグインのプロセスフローは下記のようになります。
- 拡張ポイントinterceptorsが配列かどうか確認する。interceptorsが配列でなければ処理を終了し、呼び出し元に戻る。
- 拡張ポイントinterceptorsの要素を1つずつ取り出し実行する。実行結果がfalseの場合、以後のインターセプタの実行を中止し、呼び出し元に戻る。
拡張ポイント
interceptors
(Piece_Unity >= 0.4.0)
概要
インターセプタの配列
デフォルト値
array('Interceptor_SessionStart')
説明
インターセプタとして、後述のインタフェースを持つプラグインが登録できます。デフォルトではInterceptor_SessionStartプラグインが登録されています。
なおインターセプタの実行結果がfalseの場合、以後のインターセプタの実行は中止されます。
インターセプタのインタフェース
boolean invoke (void)
それぞれのインターセプタは、ブーリアン値を返す必要があります。
設定例
- name: InterceptorChain
point:
- name: interceptors
type: extension
value:
- Interceptor_NullByteAttackPreventation
- Interceptor_SessionStart
この設定例は次のように動作します。
- Interceptor_NullByteAttackPreventationプラグインによって、Null Byte Attackを防止処理が実行される。
- Interceptor_SessionStartプラグインによって、セッションが開始される。
設定ポイント
設定ポイントはありません。
ソースコード
Piece/Unity/Plugin/InterceptorChain.php
ユーザコメント
