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

7.2.1 ISOPnotify()

機能説明

  本関数は、以下の機能を提供します。

1)ワークユニット名通知

  現在登録したワークユニットに関する以下の情報を通知します。

  繰り返し呼び出すことでシステムに定義されているワークユニット情報の一覧を取り出すことができます。繰り返し呼び出す場合は制御表の内容を変更する必要はありません。そのまま指定して関数を呼び出してください。

  本APIを使用する前に必ずInterstage運用API環境の初期化を行ってください。

注1) Solaris版で、ISOP_005以降を指定した場合は、環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
- Windows(R)版の場合
- pktvl に ISOP_003以下を指定した場合
- Linux版の場合

2)オブジェクト名通知

  指定されたワークユニットについてのオブジェクトに関する以下の情報を通知します。

  繰り返し呼び出すことで対象のワークユニットに定義されているオブジェクト情報の一覧を取り出すことができます。繰り返し呼び出す場合は制御表の内容を変更する必要はありません。そのまま指定して関数を呼び出してください。

  なお、指定されたワークユニットの種別により通知する情報が異なります。詳細は、“2)オブジェクト名通知”の復帰情報の項を参照してください。

  本APIを使用する前に必ずInterstage運用API環境の初期化を行ってください。

注1) Solaris版で、ISOP_005以降を指定した場合は、環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
- Windows(R)版の場合
- pktvl に ISOP_003以下を指定した場合
- Linux版の場合

3)ワークユニット情報通知

  指定されたワークユニットの状態を通知します。

  本APIを使用する前に必ずInterstage運用API環境の初期化を行ってください。

注1) Solaris版で、ISOP_005以降を指定した場合は、環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
- Windows(R)版の場合
- pktvl に ISOP_003以下を指定した場合
- Linux版の場合

4)オブジェクト情報通知

  指定されたオブジェクトの状態について、以下の情報を通知します。

  なお、指定されたオブジェクトが定義されているワークユニットの種別により、通知する情報が異なります。詳細は、“4)オブジェクト情報通知”の復帰情報の項を参照してください。

  本APIを使用する前に必ずInterstage運用API環境の初期化を行ってください。

注1) Solaris版で、ISOP_005以降を指定した場合は、環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
- Windows(R)版の場合
- pktvl に ISOP_003以下を指定した場合
- Linux版の場合

5)インプリメンテーションリポジトリID内オブジェクト名一覧通知

  インプリメンテーションリポジトリIDに定義されているオブジェクトに関する以下の情報を通知します。

  繰り返し呼び出すことでインプリメンテーションリポジトリIDに定義されているオブジェクト情報の一覧を取り出すことができます。繰り返し呼び出す場合は制御表の内容を変更する必要はありません。そのまま指定して関数を呼び出してください。

  本APIを使用する前に必ずInterstage運用API環境の初期化を行ってください。

注1) Solaris版で、環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
- Windows(R)版の場合
- Linux版の場合

6)インプリメンテーションリポジトリID内オブジェクト情報通知

  インプリメンテーションリポジトリIDに定義されているオブジェクトに関する以下の情報を通知します。

  指定されたオブジェクトの状態について、以下の情報を通知します。

  本APIを使用する前に必ずInterstage運用API環境の初期化を行ってください。

注1) Solaris版の場合は、環境初期化時に指定したシステムが対象となります。
注2) 以下の場合は、デフォルトシステムが対象となります。
- Windows(R)版の場合
- Linux版の場合

形式

  #include  “ISOP.h”
  void  ISOPnotify(char  *reqparm)

  引数reqparmは、パラメタ構造体を指すポインタです。パラメタ構造体は使用する機能ごとに、指定された形式の構造体を獲得し、設定してください。
  パラメタ構造体へのポインタをchar*型にキャストして、引数としてください。
  獲得した領域は、あらかじめゼロクリアしてください。

1)ワークユニット名通知

パラメタ構造体

  下記のISOP_LSTWU構造体を獲得し、パラメタとして指定してください。

typedef struct _isop_lstwu_t {                 /* パラメタ設定用制御表定義   */
      ISOP_CTRL      opctrl;                   /* 基本情報                   */
      long           checknum;                 /* 取得済みワークユニット名数 */
      char           wuname[ISOP_DEFWUNMMAX];  /* ワークユニット名           */
      long           kind;                     /* ワークユニット種別         */
      long           wunum;                    /* 全ワークユニット数         */
      char           rsv[64];                  /* リザーブ                   */
} ISOP_LSTWU;
設定情報

メンバ名

設定値

意味

opctrl.request

long

ISOP_RLSTWU

要求コード:
ワークユニット名通知

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

checknum(注1)
(注2)

long

0

取得済みのワークユニット名数

注1)
  checknumは、最初の呼び出し時または、一覧の再獲得時のみ0を設定してください。それ以外の場合は内容を変更しないでください。

注2)
  ワークユニット名一覧獲得中にエラーが発生した場合、継続してワークユニット名を獲得することはできません。最初からワークユニット名一覧を獲得しなおしてください。

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl
(注1)

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result
(注2)

long

0

正常終了(全ワークユニット名取得済)

1

正常終了(未取得のワークユニット名あり)

-1

異常終了
エラーの詳細はopctrl.detailを参照

opctrl.detail

long

原因コード

エラーの詳細情報(実行結果詳細値を参照)

checknum

long

取得済みのワークユニット名数

取り出したワークユニット名数の累計

wuname

char[]

ワークユニット名

ワークユニット名

kind

long

ISOP_ORB

ワークユニット種別:ORB


ISOP_WRAPPER

ワークユニット種別:WRAPPER

ISOP_CORBA

ワークユニット種別:CORBA


ISOP_UTY

ワークユニット種別:UTY

wunum

long

WU数

全ワークユニット数

注1)
  APIが復帰時に通知する制御表のバージョン情報については、“OLTPサーバ運用ガイド”を参照してください。

注2)
  異常終了した場合はopctrl.detailのみ正しい値を設定します。その他の値の内容は不定です。

実行結果詳細値

define値

意味

ISOP_EINVAL

2001

取得済みワークユニット名数に誤りがあります。

ISOP_ENOINIT

2003

API環境が初期化されていません。

ISOP_EINVAL_REQ

2101

要求コードに誤りがあります。

ISOP_EAGAIN

3001

システム資源不足が発生しました。しばらくしてから再度実行してください。

ISOP_ENOMEM

3002

メモリ不足が発生しました。

ISOP_ESYSERR

4001

システムエラー。

ISOP_ESTPIS

4102

Interstageが起動されていません。

ISOP_ENOENT

4106

ワークユニット定義が1つも存在しません。


ISOP_EINTR

4107

割り込みが発生しました。


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました。(注)

  注)pktvlがISOP_005以降の場合に有効。

2)オブジェクト名通知

パラメタ構造体

  下記のISOP_LSTOBJ構造体を獲得し、パラメタとして指定してください。

typedef struct _isop_lstobj_t{                       /* パラメタ設定用制御表定義  */
      ISOP_CTRL       opctrl;                        /* 基本情報                  */
      long            checknum;                      /* 取得済みオブジェクト名数  */
      char            wuname[ISOP_DEFWUNMMAX];       /* ワークユニット名          */
      char            objname[ISOP_DEFOBJNMMAX];     /* オブジェクト名            */
      long            form;                          /* オブジェクト形態          */
      unsigned long   con;                           /* プロセス多重度            */
      char            psysname[ISOP_DEFPSYSNMMAX];   /* DPCF通信パス名            */
      long            objnum;                        /* 全オブジェクト数          */
      unsigned long   maxquenum;                     /* 最大キューイング数        */
      unsigned long   alarmquenum;                   /* 監視キューイング数        */
      unsigned long   restrquenum;                   /* 監視再開キューイング数    */
      long            apltype;                       /* 使用しません              */
      long            instance;                      /* インスタンス数            */
      char            rsv[44];                       /* リザーブ                  */
} ISOP_LSTOBJ;
設定情報

メンバ名

設定値

意味

opctrl.request

long

ISOP_RLSTOBJ

要求コード:
オブジェクト名通知

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

checknum(注1)
(注2)

long

0

取得済みのオブジェクト名数の累計

wuname

char[]

ワークユニット名

ワークユニット名

注1)
  
checknumは、最初の呼び出し時または、一覧の再獲得時のみ0を設定してください。それ以外の場合は内容を変更しないでください。

注2)
  以下の場合、継続してオブジェクト名を獲得することはできません。オブジェクト名一覧を最初から獲得しなおしてください。
・オブジェクト名一覧獲得中に別のワークユニットのオブジェクト名を獲得した場合。
・オブジェクト名一覧獲得中にエラーが発生した場合。

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl
(注1)

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result
(注2)

long

0

正常終了(全オブジェクト名を取得済み)

1

正常終了(未取得のオブジェクト名あり)

-1

異常終了
エラーの詳細はopctrl.detailを参照

opctrl.detail

long

原因コード

エラーの詳細情報(実行結果詳細値を参照)

checknum

long

取得済みのオブジェクト名数

取り出したオブジェクト名数の累計

objname

char[]

オブジェクト名

オブジェクト名

form

long

ISOP_OBJRESIDENT

オブジェクト形態:常駐型

ISOP_OBJNONRESIDENT

オブジェクト形態:非常駐型

ISOP_OBJMULTIRESIDENT

オブジェクト形態:マルチオブジェクト常駐型

con(注3)

unsigned long

プロセス多重度

プロセス多重度


psysname

char[]

DPCF通信パス名

DPCF通信パス名

objnum

long

OBJ数

全OBJ数

maxquenum

unsigned long

最大キューイング数

キューイングできる要求の最大数

Alarmquenum

unsigned long

監視キューイング数

アラーム通知用の滞留キュー数監視値

Restrquenum

unsigned long

監視再開キューイング数

キュー数が正常となったとみなすキュー数

apltype

long

  

使用しません

instance

long

インスタンス数

インスタンス数(定義値)

注1)
  APIが復帰時に通知する制御表のバージョン情報については、“OLTPサーバ運用ガイド”の“Interstage運用APIの制御表のバージョン・レベルについて”を参照してください。

注2)
  異常終了した場合はopctrl.detailのみ正しい値を設定します。その他の値の内容は不定です。

注3)
  オブジェクト形態が非常駐型、またはマルチオブジェクト常駐型の場合は、ワークユニットで動作できるそれぞれのオブジェクトの数を設定します。

ワークユニット種別ごとの通知情報

メンバ名

意味

ワークユニット種別

ORB

WRAPPER

CORBA

opctrl.pktvl

復帰した制御表のバージョン情報

opctrl.result

復帰値

opctrl.detail

エラーの詳細情報

checknum

取り出したオブジェクト名数の累計

objname

オブジェクト名

form

オブジェクトの形態

×

×

con

定義登録時のプロセス多重度

×

psysname

DPCF通信パス名

×

×

objnum

全オブジェクト数

maxquenum

最大キューイング数 (注1) (注2)

alarmquenum

監視キューイング数 (注2)

restrquenum

監視再開キューイング数 (注2)

apltype

EJBアプリケーション種別

×

×

×

instance

インスタンス数

×

×

×

○:有効、×:無効

注1)
  
ワークユニット種別がWRAPPERの場合の最大キューイング数についての詳細は、“OLTPサーバ運用ガイド”の“Interstage運用情報通知”を参照してください。

注2)
  
ワークユニット種別がORB、WRAPPERの場合、定義登録時に値が設定されていない場合は0が通知されます。

実行結果詳細値

define値

意味

ISOP_EINVAL

2001

取得済みオブジェクト名数に誤りがあります。

ISOP_ENOINIT

2003

API環境が初期化されていません。

ISOP_EINVAL_REQ

2101

要求コードに誤りがあります。

ISOP_EAGAIN

3001

システム資源不足が発生しました。しばらくしてから再度実行してください。

ISOP_ENOMEM

3002

メモリ不足が発生しました。

ISOP_ESYSERR

4001

システムエラー。

ISOP_ESTPIS

4102

Interstageが起動されていません。

ISOP_ENOWU

4103

指定されたワークユニットは存在しません。または、ワークユニットの形式に誤りがあります。

ISOP_ENOENT

4106

オブジェクトが登録されていません。


ISOP_EINTR

4107

割り込みが発生しました 。


ISOP_EWUKIND

4109

ユーティリティワークユニットが指定されました。


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました。(注)

  注)pktvlがISOP_005以降の場合に有効。

3)ワークユニット情報通知

パラメタ構造体

  下記のISOP_INFWU構造体を獲得し、パラメタとして指定してください。

typedef struct _isop_infwu_t {                     /* パラメタ設定用制御表定義 */
      ISOP_CTRL        opctrl;                     /* 基本情報                 */
      char             wuname[ISOP_DEFWUNMMAX];    /* ワークユニット名         */
      long             stat;                       /* ワークユニット情報       */
      char             rsv[64];                    /* リザーブ                 */
} ISOP_INFWU;
設定情報

メンバ名

設定値

意味

opctrl.request

long

ISOP_RINFWU

要求コード:
ワークユニット情報通知

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

wuname

char*

ワークユニット名

ワークユニット名

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl
(注1)

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result
(注2)

long

0

正常終了

-1

異常終了
エラーの詳細はopctrl.detailを参照

opctrl.detail

long

原因コード

エラーの詳細情報(実行結果詳細値を参照)

stat

long

ISOP_DWUSTRPRC

起動途上状態

ISOP_DWUEXECUTE

起動済み状態

ISOP_DWUSTPPRC

停止途上状態

ISOP_DWUSTOP

停止済み状態

ISOP_DWUSTOP_ABEND

停止済み状態
ワークユニットが異常停止

ISOP_DWUSTOP_COM

停止済み状態
ワークユニットがコマンドにより終了


ISOP_DWUSTOP_AUTO

停止済み状態
ワークユニットが自動停止

注1)
  APIが復帰時に通知する制御表のバージョン情報については、“OLTPサーバ運用ガイド”の“Interstage運用APIの制御表のバージョン・レベルについて”を参照してください。

注2)
  異常終了した場合はopctrl.detailのみ正しい値を設定します。その他の値の内容は不定です。

実行結果詳細値

define値

意味

ISOP_ENOINIT

2003

API環境が初期化されていません。

ISOP_EINVAL_REQ

2101

要求コードに誤りがあります。

ISOP_EAGAIN

3001

システム資源不足が発生しました。しばらくしてから再度実行してください。

ISOP_ENOMEM

3002

メモリ不足が発生しました。

ISOP_ESYSERR

4001

システムエラー。

ISOP_ESTPIS

4102

Interstageが起動されていません。

ISOP_ENOWU

4103

指定されたワークユニットは存在しません。または、ワークユニットの形式に誤りがあります。


ISOP_EINTR

4107

割り込みが発生しました。


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました。(注)

  注)pktvlがISOP_005以降の場合に有効。

4)オブジェクト情報通知

パラメタ構造体

  下記のISOP_INFOBJ構造体を獲得し、パラメタとして指定してください。

typedef struct _isop_infobj_t {                   /* パラメタ設定用制御表定義 */
      ISOP_CTRL        opctrl;                    /* 基本情報                 */
      char             objname[ISOP_DEFOBJNMMAX]; /* オブジェクト名           */
      long             objstat;                   /* オブジェクト状態         */
      long             psysstat;                  /* DPCF通信パスの状態       */
      long             que;                       /* キュー数                 */
      long             quecnt;                    /* 累積処理件数             */
      unsigned long    dyncon;                    /* 運用中プロセス多重度     */
      long             apltype;                   /* 使用しません             */
      long              instance;                    /* インスタンス数            */
      long             alarmquestat;              /* キューの監視状態         */
      long             threads;                  /* スレッド数              */
      char              rsv[44];                     /* リザーブ                   */
} ISOP_INFOBJ;
設定情報

メンバ名

設定値

意味

opctrl.request

long

ISOP_RINFOBJ

要求コード:
オブジェクト情報通知

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

objname

char[]

オブジェクト名

オブジェクト名

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl
(注1)

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result
(注2)

long

0

正常終了

-1

異常終了
エラーの詳細はopctrl.detailを参照

opctrl.detail

long

原因コード

エラーの詳細情報(実行結果詳細値を参照)

objstat(注4)

long

ISOP_DQUEACTIVE

運用中の状態

ISOP_DQUEINHBIT

閉塞中の状態

ISOP_DQUESTOP

停止中の状態

psysstat (注5)

long

ISOP_DQUEACTIVE

通信可能状態

ISOP_DQUEINHBIT

閉塞中の状態

que
(注3)(注5)

long

キュー数

オブジェクトのキュー数

quecnt (注5)

long

累積処理件数

ワークユニット起動時からオブジェクトが受信した要求の数

dyncon (注5)

unsigned long

動的プロセス多重度

運用中のオブジェクトのプロセス多重度

apltype (注5)

long

  

使用しません

instance (注5)

long

インスタンス数

インスタンス数(定義値)

alarmquestatus
(注5)(注6)(注7)

long

ISOP_AQUENORMAL

監視キューイング数正常状態

ISOP_AQUEALMOVER

監視キューイング数監視値に達した状態

ISOP_AQUEMAXOVER

監視キューイング数最大値に達した状態

threads

long

スレッド数

スレッド数

注1)
  APIが復帰時に通知する制御表のバージョン情報については、“OLTPサーバ運用ガイド”の“Interstage運用APIの制御表のバージョン・レベルについて”を参照してください。

注2)
  異常終了した場合はopctrl.detailのみ正しい値を設定します。その他の値の内容は不定です。

注3)
  ワークユニット種別がWRAPPERのオブジェクトにキューを滞留させる場合は、コンポーネントトランザクションサービスの環境定義を変更する必要があります。詳細は“チューニングガイド”および、“NETSTAGE Director ユーザーズガイド”を参照してください。

注4)
  オブジェクトが閉塞中、またはオブジェクトが定義されているワークユニットが起動処理中、停止処理中、活性変更中の場合、オブジェクトの状態には「ISOP_DQUEINHBIT」が通知されます。

注5)
  オブジェクトが定義されているワークユニットが起動処理中、停止処理中、活性変更中の場合、DPCF通信パスの状態、キュー数、累積処理件数、動的プロセス多重度、インスタンス数、キュー監視状態は通知されません。

注6)
  ワークユニット定義の監視キューイング数が省略された場合、キュー状態監視は行わないため、監視キュー状態には「ISOP_AQUENORMAL」が通知されます。

注7)
  ワークユニット停止中の場合の監視キュー状態は0が通知されます。

ワークユニット種別ごとの通知情報

メンバ名

意味

ワークユニット種別

ORB

WRAPPER

CORBA

opctrl.pktvl

復帰した制御表のバージョン情報

opctrl.result

復帰値

opctrl.detail

エラー詳細情報

objstat

オブジェクトの状態

psysstat

DPCF通信パスの状態

×

×

que

キュー数

quecnt

累積処理件数

dyncon

運用中のプロセス多重度

×

apltype

EJBアプリケーション形態

×

×

×

instance

インスタンス数

×

×

×

alarmquestat

キュー監視状態

threads

スレッド数

×

×

○:有効、×:無効

実行結果詳細値

define値

意味

ISOP_ENOINIT

2003

API環境が初期化されていません。

ISOP_EAGAIN_REQ

2101

要求コードに誤りがあります。

ISOP_EAGAIN

3001

システム資源不足が発生しました。しばらくしてから再度実行してください。

ISOP_ENOMEM

3002

メモリ不足が発生しました。

ISOP_ESYSERR

4001

システムエラー。

ISOP_ESTPIS

4102

Interstageが起動されていません。

ISOP_ENOOBJ

4105

指定されたオブジェクトは存在しません。または、オブジェクトの形式に誤りがあります。


ISOP_EINTR

4107

割り込みが発生しました。


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました。(注)

  注)pktvlがISOP_005以降の場合に有効。

5)インプリメンテーションリポジトリID内オブジェクト名一覧通知

パラメタ構造体

  下記のISOP_LSTIMPLOBJ構造体を獲得し、パラメタとして指定してください。

typedef struct _isop_lstimplobj_t {     /* パラメタ設定用制御表定義 */
    ISOP_CTRL   opctrl;         /* 基本情報 */
    long        checknum;       /* 取得済みインプリメンテーションリポジトリID内オブジェクト名数 */
    long        objnum;         /* 全インプリメンテーションリポジトリID内オブジェクト名数 */
    char        implID[256];    /* インプリメンテーションリポジトリID */
    char        objname[256];   /* インプリメンテーションリポジトリID内オブジェクト名 */
    char        rsv[256];        /* リザーブ */
} ISOP_LSTIMPLOBJ;
設定情報

メンバ名

設定値

意味

opctrl.request

long

ISOP_RLSTIMPLOBJ

要求コード:
インプリメンテーションリポジトリID内オブジェクト名一覧通知

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

checknum(注1)

long

取得済みインプリメンテーションリポジトリID内オブジェクト名数

取得済みのインプリメンテーションリポジトリID内オブジェクト名数

implID

char*

インプリメンテーションリポジトリID

インプリメンテーションリポジトリID

注1)
  checknumは、最初の呼び出し時または、一覧の再獲得時のみ0を設定してください。それ以外の場合は内容を変更しないでください。

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result (注1)

long

0

正常終了

-1

異常終了
エラーの詳細はopctrl.detailを参照

opctrl.detail

long

原因コード

エラーの詳細情報(実行結果詳細値を参照)

checknum

long

取得済みインプリメンテーションリポジトリID内オブジェクト名数

取り出したインプリメンテーションリポジトリ内オブジェクト名数の累計

objnum

long

インプリメンテーションリポジトリID内オブジェクト名数

インプリメンテーションリポジトリID内オブジェクト名数

objname

char*

インプリメンテーションリポジトリID内オブジェクト名

インプリメンテーションリポジトリID内オブジェクト名

注1)
  異常終了した場合はopctrl.detailのみ正しい値を設定します。その他の値の内容は不定です。

実行結果詳細値

define値

意味

ISOP_EINVAL

2001

取得済みインプリメンテーションリポジトリ内オブジェクト名数に誤りがあります

ISOP_ENOINIT

2003

API環境が初期化されていません

ISOP_EINVAL_REQ

2101

要求コードに誤りがあります

ISOP_EAGAIN

3001

システム資源不足が発生しました
しばらくしてから再度実行してください

ISOP_ENOMEM

3002

メモリ不足が発生しました

ISOP_ESYSERR

4001

システムエラー

ISOP_ESTPIS

4102

Interstageが起動されていません


ISOP_EINTR

4107

割り込みが発生しました


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました

ISOP_ENOIMPL

4122

指定されたインプリメンテーションリポジトリIDは存在しません

6)インプリメンテーションリポジトリID内オブジェクト情報通知

パラメタ構造体

  下記のISOP_INFIMPLOBJ構造体を獲得し、パラメタとして指定してください。

typedef struct_isop_infimplobj_t {        /* パラメタ設定用制御表定義 */
    ISOP_CTRL   opctrl;             /* 基本情報 */
    char        implID[256];	        /* インプリメンテーションリポジトリID */
    char        objname[256];       /* インプリメンテーションリポジトリID内オブジェクト名 */
    long        objstat;            /* インプリメンテーションリポジトリID内オブジェクト状態 */
    char        rsv[256];            /* リザーブ */
} ISOP_INFIMPLOBJ;
設定情報

メンバ名

設定値

意味

opctrl.request

long

ISOP_RINFIMPLOBJ

要求コード:
インプリメンテーションリポジトリID内オブジェクト名通知

opctrl.pktvl

unsigned long

ISOP_006

制御表のバージョン情報

implID

char*

インプリメンテーションリポジトリID

インプリメンテーションリポジトリID

objname

char*

インプリメンテーション内オブジェクト名

インプリメンテーションリポジトリID内オブジェクト名

復帰情報

メンバ名

復帰値

意味

opctrl.pktvl

unsigned long

ISOP_006

復帰した制御表のバージョン情報

opctrl.result (注1)

long

0

正常終了

-1

異常終了
エラーの詳細はopctrl.detailを参照

opctrl.detail

long

原因コード

エラーの詳細情報(実行結果詳細値を参照)

objstat

long

ISOP_DQUEACTIVE

実行中

ISOP_DQUEINHBIT

閉塞中

ISOP_DQUESTOP

停止中

注1)
  異常終了した場合はopctrl.detailのみ正しい値を設定します。その他の値の内容は不定です。

実行結果詳細値

define値

意味

ISOP_EPARM

2001

本関数のパラメタに誤りがあります

ISOP_ENOINIT

2003

API環境が初期化されていません

ISOP_ENOMEM

3002

メモリ不足が発生しました

ISOP_ESYSERR

4001

システムエラー

ISOP_ESTPIS

4102

Interstageが起動されていません

ISOP_ENOOBJ

4105

指定されたインプリメンテーションリポジトリIDオブジェクトは存在しません。
またはオブジェクトの形式に誤りがあります


ISOP_EINTR

4107

割り込みが発生しました


ISOP_ENOSYSTEM

4110

操作対象システムが削除されました

ISOP_ENOIMPL

4122

指定されたインプリメンテーションリポジトリIDは存在しません

  本APIを使用してインプリメンテーションリポジトリID内オブジェクトの情報を取得する場合は、CORBAアプリケーション情報定義ファイルを使用して定義登録する必要があります。詳細は、“OLTPサーバ運用ガイド”の“B.2 CORBAアプリケーション情報定義ファイル(OD_impl_instコマンド)”を参照してください。

注意事項

  本関数を使用するには、isstartコマンドを使用し、Interstageの起動を行う必要があります。各コンポーネントから提供されている起動コマンドは使用しないでください。

  なお、クラスタ構成で運用する場合には、isstartコマンドを使用する必要はありません。