2.3.4 TPフレームワーク

TPフレームワークでは、高水準のパフォーマンスを実現しながら、CORBAインタフェースの複雑さを隠蔽するプログラミング・モデルが提供されます。TPフレームワークではCORBAアプリケーションの迅速な構築がサポートされており、デザイン・パターンに従って適切なTPアプリケーションをビルドすることが容易になっています。

TPフレームワークはポータブル・オブジェクト・アダプタ(POA)およびCORBAアプリケーションとやり取りするので、アプリケーションではPOAを直接呼び出す必要がありません。また、TPフレームワークではトランザクションと状態の管理がOracle Tuxedo CORBAアプリケーションに統合されます。

アプリケーション・プログラマは、標準のCORBAアプリケーションで必要な機能の多くを自動化するアプリケーション・プログラミング・インタフェース(API)を使用します。アプリケーション・プログラマのすることは、CORBAアプリケーションのビジネス・ロジックを記述し、TPフレームワークのデフォルトのアクションをオーバーライドすることだけです。

TPフレームワークのAPIでは、CORBAアプリケーションで必要な次の機能を実行するルーチンが提供されます:

  • CORBAサーバー・アプリケーションを初期化し、起動と停止のルーチンを実行します
  • オブジェクト参照を作成します
  • オブジェクト・ファクトリの登録と登録削除を行います
  • オブジェクトとオブジェクトの状態を管理します
  • CORBAサーバー・アプリケーションをOracle Tuxedo CORBAシステム・リソースに関連付けます
  • ORBを取得および初期化します
  • オブジェクトのハウスキーピングを実行します

TPフレームワークを利用すると、クライアントのリクエストが調和のとれた予測可能な方法で実行されます。TPフレームワークでは、Oracle Tuxedoアプリケーションで利用可能なオブジェクトとサービスが適切なときに的確な順序で呼び出されます。また、TPフレームワークではオブジェクトによるシステム・リソースの再利用が最大限に行われます。次の図に、TPフレームワークを示します。

図2-4 TPフレームワーク

TPフレームワークの図について説明します。

TPフレームワークは単一のオブジェクトではなく、CORBAアプリケーションのデータとビジネス・ロジックを格納および実装するCORBAオブジェクトを管理するためにまとまって機能するオブジェクトの集合です。

TPフレームワークのオブジェクトの1つにServerオブジェクトがあります。Serverオブジェクトは、サーバー・アプリケーションの初期化や解放といったタスクを実行する操作を実装するユーザーの記述によるプログラミング・エンティティです。サーバー・アプリケーションの場合、TPフレームワークではクライアントのリクエストを満たすために必要なCORBAオブジェクトがインスタンス化されます。

サーバー・アプリケーションで現時点でアクティブではなく、メモリーに存在しないオブジェクトを必要とするクライアントのリクエストが届くと、TPフレームワークではそのオブジェクトをインスタンス化するために必要なすべての操作が調整されます。この調整には、ORBや、クライアントのリクエストを適切なオブジェクト実装コードに渡すためのPOAとの調整も含まれます。