ページの先頭行へ戻る
Interstage Application Server リファレンスマニュアル(API編)

4.11.4 Container共通インタフェース

  ここで説明する関数は、インタフェースリポジトリオブジェクトが他のインタフェースリポジトリオブジェクトを包含する関係を持ち得る各インタフェースリポジトリオブジェクト(このインタフェースリポジトリオブジェクトをContainerと呼ぶ)に継承されて、その継承先のインタフェースリポジトリオブジェクトの関数として使用されます。

4.11.4.1 CORBA-CONTAINER-LOOKUP

名前

  CORBA-CONTAINER-LOOKUP

形式

DATA DIVISION.
  WORKING-STORAGE SECTION.
    COPY CONST IN CORBA.
    01 COPY OBJECT IN CORBA REPLACING CORBA-OBJECT BY OBJ.
    01 SEARCH-NAME USAGE IS POINTER.
    01 COPY ENVIRONMENT IN CORBA REPLACING CORBA-ENVIRONMENT BY ENV.
    01 COPY CONTAINED IN CORBA REPLACING CORBA-CONTAINED BY C-CONTAINED.

PROCEDURE DIVISION.
    CALL "CORBA-CONTAINER-LOOKUP" USING
         OBJ
         SEARCH-NAME
         ENV
         C-CONTAINED.

機能説明

  OBJで指定されたインタフェースリポジトリオブジェクトが包含するインタフェースオブジェクトの中から、指定された名前を持つオブジェクトを見つけだし、そのオブジェクトリファレンスを返します。SEARCH-NAMEには、検索する名前(SCOPEDNAME)を指定します。返却対象のオブジェクトが見つからない場合は、NIL(空の)オブジェクトリファレンスを返して正常終了します。
  本関数はオブジェクトリファレンスを格納する領域を獲得するため、この領域が不要になった時点で、CORBA-OBJECT-RELEASE関数を使用して領域を解放する必要があります。

復帰値

  正常終了した場合、指定された名前を持つオブジェクトのオブジェクトリファレンスが返されます。
  異常終了した場合、NIL(空の)オブジェクトリファレンスが返されます。また、ENV構造体のMAJORにはCORBA-SYSTEM-EXCEPTIONが返され、IDとMINORに詳細情報が設定されます。IDとMINORの意味については、“メッセージ集”の“CORBAサービスから通知される例外情報/マイナーコード”を参照してください。

4.11.4.2 CORBA-CONTAINER-CONTENTS

名前

  CORBA-CONTAINER-CONTENTS

形式

DATA DIVISION.
  WORKING-STORAGE SECTION.
    COPY CONST IN CORBA.
    01 COPY OBJECT IN CORBA REPLACING CORBA-OBJECT BY OBJ.
    01 COPY DEFINITIONKIND IN CORBA REPLACING CORBA-DEFINITIONKIND BY LIMIT-TYPE.
    01 COPY BOOLEAN IN CORBA REPLACING CORBA-BOOLEAN BY EXCLUDE-INHERITED.
    01 COPY ENVIRONMENT IN CORBA REPLACING CORBA-ENVIRONMENT BY ENV.
    01 CONTAINEDSEQ-ADDR USAGE POINTER.

PROCEDURE DIVISION.
    CALL "CORBA-CONTAINER-CONTENTS" USING
         OBJ
         LIMIT-TYPE 
         EXCLUDE-INHERITED 
         ENV
         CONTAINEDSEQ-ADDR.

機能説明

  OBJに指定されたインタフェースリポジトリオブジェクトに直接包含される、または継承によって包含されるインタフェースリポジトリオブジェクトのオブジェクトリファレンスをリスト形式で返します。
  本関数はオブジェクトリファレンスのリストを格納する領域を獲得するため、この領域が不要になった時点で、CORBA-FREE関数を使用して領域を解放する必要があります。

復帰値

  正常終了した場合、検索されたオブジェクトのオブジェクトリファレンスのリストが返されます。
  異常終了した場合、NIL(空の)オブジェクトリファレンスのリストが返されます。また、ENV構造体のMAJORにはCORBA-SYSTEM-EXCEPTIONが返され、IDとMINORに詳細情報が設定されます。IDとMINORの意味については、“メッセージ集”の“CORBAサービスから通知される例外情報/マイナーコード”を参照してください。

4.11.4.3 CORBA-CONTAINER-LOOKUP-NAME

名前

  CORBA-CONTAINER-LOOKUP-NAME

形式

DATA DIVISION.
  WORKING-STORAGE SECTION.
    COPY CONST IN CORBA.
    01 COPY OBJECT IN CORBA REPLACING CORBA-OBJECT BY OBJ.
    01 SEARCH-NAME USAGE IS POINTER.
    01 COPY LONG IN CORBA REPLACING CORBA-LONG BY LEVELS-TO-SEARCH.
    01 COPY DEFINITIONKIND IN CORBA REPLACING CORBA-DEFINITIONKIND BY LIMIT-TYPE.
    01 COPY BOOLEAN IN CORBA REPLACING CORBA-BOOLEAN BY EXCLUDE-INHERITED.
    01 COPY ENVIRONMENT IN CORBA REPLACING CORBA-ENVIRONMENT BY ENV.
    01 COPY CONTAINEDSEQ IN CORBA REPLACING CORBA-CONTAINEDSEQ USAGE IS CONTAINEDSEQ.

PROCEDURE DIVISION.
    CALL "CORBA-CONTAINER-LOOKUP-NAME" USING
         OBJ
         SEARCH-NAME
         LEVELS-TO-SEARCH
         LIMIT-TYPE
         EXCLUDE-INHERITED 
         ENV
         CONTAINEDSEQ.

機能説明

  OBJで指定されたオブジェクトに直接包含される、または継承によって包含されるオブジェクトの中から、指定された名前を持つオブジェクトを見つけだし、そのオブジェクトリファレンスとともに、さらにそのオブジェクトが包含/継承するオブジェクトのオブジェクトリファレンスをリスト形式で返します。
  本関数はオブジェクトリファレンスのリストを格納する領域を獲得するため、この領域が不要になった時点で、CORBA-FREE関数を使用して領域を解放する必要があります。

復帰値

  正常終了した場合、検索されたオブジェクトのオブジェクトリファレンスのリストが返されます。
  異常終了した場合、NIL(空の)オブジェクトリファレンスのリストが返されます。また、ENV構造体のMAJORにはCORBA-SYSTEM-EXCEPTIONが返され、IDとMINORに詳細情報が設定されます。IDとMINORの意味については、“メッセージ集”の“CORBAサービスから通知される例外情報/マイナーコード”を参照してください。

4.11.4.4 CORBA-CONTAINER-DESCRIBE-CONTENTS

名前

  CORBA-CONTAINER-DESCRIBE-CONTENTS

形式

DATA DIVISION.
  WORKING-STORAGE SECTION.
    COPY CONST IN CORBA.
    01 COPY OBJECT IN CORBA REPLACING CORBA-OBJECT BY OBJ.
    01 COPY DEFINITIONKIND IN CORBA REPLACING CORBA-DEFINITIONKIND BY LIMIT-TYPE.
    01 COPY BOOLEAN IN CORBA REPLACING CORBA-BOOLEAN BY EXCLUDE-INHERITED.
    01 COPY LONG IN CORBA REPLACING CORBA-LONG BY MAX-RETURNED-OBJS.
    01 COPY ENVIRONMENT IN CORBA REPLACING CORBA-ENVIRONMENT BY ENV.
    01 CONTAINER-DESCRIPTIONSEQ-ADDR USAGE IS POINTER.

PROCEDURE DIVISION.
    CALL "CORBA-CONTAINER-DESCRIBE-CONTENTS" USING
         OBJ
         LIMIT-TYPE 
         EXCLUDE-INHERITED 
         MAX-RETURNED-OBJS 
         ENV
         CONTAINER-DESCRIPTIONSEQ-ADDR.

機能説明

  OBJで指定したインタフェースリポジトリオブジェクトに直接包含される、または継承によって包含されるオブジェクトの定義情報を、DESCRIPTION構造体のリスト形式(“4.11.1 型の定義”を参照してください)で返します。
  本関数はDESCRIPTION構造体のリストを格納する領域を獲得するため、この領域が不要になった時点で、CORBA-FREE関数を使用して領域を解放する必要があります。

復帰値

  正常終了した場合、オブジェクトの定義情報リストのアドレスが返されます。
  異常終了した場合、NIL(空の)定義情報リストが返されます。また、ENV構造体のMAJORにはCORBA-SYSTEM-EXCEPTIONが返され、IDとMINORに詳細情報が設定されます。IDとMINORの意味については、“メッセージ集”の“CORBAサービスから通知される例外情報/マイナーコード”を参照してください。

4.11.4.5 継承されて使用できる関数

  (1) CORBA-CONTAINER--GET-DEF-KIND

  (1)については、“IRObject共通インタフェース”を継承します。
  “CORBA-IROBJECT”の部分を“CORBA-CONTAINER”に置き換えて使用することができます。
  関数の仕様については、“4.11.2 IRObject共通インタフェース”を参照してください。