Interstage Application Server アプリケーション作成ガイド (CORBAサービス編)
目次 索引 前ページ次ページ

第8章 アプリケーションの開発(OOCOBOL)> 8.4 サーバアプリケーションのプログラミング(静的スケルトンインタフェース)

8.4.2 サーバの活性化

 サーバアプリケーションの初期化が完了すると、ORBに対してその旨を通知します。ORBは、この命令が発行された時点で、クライアントからの要求をサーバアプリケーションに伝えます。活性化の方法は、サーバのタイプによって以下のように異なります。

サーバのタイプ

メソッド

shared server

CORBA-BOA-IMPL_IS_READY

unshared server

CORBA-BOA-OBJ_IS_READY

persistent server

CORBA-BOA-IMPL_IS_READY

  1. インプリメンテーションリポジトリのオブジェクトリファレンスを取り出します。
    CORBA-ORB-RESOLVE_INITIAL_REFERENCESメソッドを用いて、パラメタにCORBA-ORB-OBJECTID_IMPLREPを指定します。
  2. IMPLEMENTATIONREPオブジェクトのオブジェクトリファレンスを求めます。
    FJ-IMPLEMENTATIONREP-LOOKUP_IDを用いて、パラメタにサーバアプリケーションのIMPLEMENTATIONREPオブジェクトを指定します。
  3. サーバの活性化を行います。
    CORBA-BOA-IMPL_IS_READYまたはCORBA-BOA-OBJ_IS_READYを用います。

注) メソッドの復帰後は、初期化時にオープンしたファイルのクローズ処理や、領域の解放処理等の非活性化処理(“サーバの非活性化”を参照)が必要です。

  *
       MOVE "CORBA::ORB::resolve_initial_references" TO API-NAME.
       INVOKE ORB "RESOLVE_INITIAL_REFERENCES"
                          USING     CORBA-OBJECTID_IMPLEMENTAT-001
                          RETURNING OBJ.
  *
       INVOKE FJ-IMPLEMENTATIONREP "NARROW"
                          USING     OBJ
                          RETURNING IMPL-REP.
  *
       MOVE "FJ::ImplementationRep::lookup_id" TO API-NAME.
       INVOKE IMPL-REP "LOOKUP_ID"
                          USING     IMPL-ODDEMO-CALCULATOR
                          RETURNING OBJ.
  *
       INVOKE CORBA-IMPLEMENTATIONDEF "NARROW"
                          USING     OBJ
                          RETURNING IMPL.
  *
       MOVE "CORBA::BOA::impl_is_ready" TO API-NAME.
       INVOKE BOA "IMPL_IS_READY"
                          USING     IMPL.

目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005