14.8. ActionLifecycle および ActionPipelineProcessor の実装
ActionLifecycle または ActionPipelineProcessor インターフェイスのいずれかを実装するクラスの単一インスタンスは、パイプラインごとにインスタンス化され(アクションごとの設定)、スレッドセーフである必要があります。
initialise および destroy メソッドを上書きし、アクションがパイプラインの存続期間中リソース管理を実行できるようにすることができます。(例: initialise メソッドで必要なキャッシュリソースで、destroy メソッドでクリーンアップします。)
これらのアクションは、単一の
ConfigTree インスタンスをパラメーターとして取るコンストラクターを定義する必要があります。これは、パイプライン内の特定のアクションの設定を表します。
このパイプラインは、アクションが適切なインターフェイスを実装し、メソッド名が設定で上書きされないようにすることで、各メソッドを直接呼び出します。インターフェイスを介して実装されないメソッド呼び出し、またはアクション設定で上書きされたメソッド呼び出しは、リフレクションを使用して呼び出されます。
開発を簡素化するために、コードベースには 2 つの抽象ベースクラスが提供され、それぞれ適切なインターフェイスを実装し、
process メソッド以外のすべてのスタブメソッドを提供します。これらは org.jboss.soa.esb.actions.AbstractActionPipelineProcessor および org.jboss.soa.esb.actions.AbstractActionLifecycle です。以下のように使用します。