Interstage Application Server リファレンスマニュアル(API編) |
目次
索引
![]() ![]() |
第4章 COBOLインタフェース | > 4.19 イベントサービスインタフェース | > 4.19.1 COSEVENTCOMMインタフェース |
COSEVENTCOMM-PULLSUPPLIER-TRY-PULL
ENVIRONMENT DIVISION. CONFIGURATION SECTION. SPECIAL-NAMES. SYMBOLIC CONSTANT COPY SYMBOL-CONST IN CORBA. . DATA DIVISION. WORKING-STORAGE SECTION. COPY CONST IN COSEVENTCOMM. 01 COPY PROXYPULLSUPPLIER IN COSEVENTCOMM REPLACING COSEVENTCHANNELADMIN-PROXYP002 BY OBJ. COPY CONST IN CORBA. 01 COPY BOOLEAN IN CORBA REPLACING CORBA-BOOLEAN BY HASEVENT. 01 COPY ENVIRONMENT IN CORBA REPLACING CORBA-ENVIRONMENT BY ENV. 01 EVDATA USAGE IS POINTER. PROCEDURE DIVISION. CALL "COSEVENTCOMM-PULLSUPPLIER-TRY-PULL" USING OBJ HASEVENT ENV EVDATA.
サプライヤにイベントデータを要求します。サプライヤからイベントデータが取り出せない場合は即座に復帰します。なお、イベントデータが取り出せるまでブロックしたい場合には、COSEVENTCOMM-PULLSUPPLIER-PULLを使用してください。
取り出したANY型のイベントデータは、この領域が不要になった時点で、CORBA-FREE関数を使用して領域を解放する必要があります。
正常終了した場合は、ENV構造体のMAJORにCORBA-NO-EXCEPTIONが設定されます。イベントデータを取り出せた場合は、HASEVENTにCORBA-TRUEが設定されます。イベントデータが取り出せなかった場合には、HASEVENTにCORBA-FALSEが設定されます。この場合も空のANY型のイベントデータの領域が獲得されるので、取り出したANY型のイベントデータの領域は、CORBA-FREE関数を使用して領域を解放する必要があります。異常終了した場合は、ENV構造体のMAJORにCORBA-SYSTEM-EXCEPTIONまたはCORBA-USER-EXCEPTIONが設定され、ENV構造体のIDに詳細情報が設定されます。
ユーザ例外の場合は、以下の詳細情報が設定されます。
システム例外の場合は、“メッセージ集”の“イベントサービスから通知される例外情報/マイナーコード”および“CORBAサービスから通知される例外情報/マイナーコード”を参照し、設定されたシステム例外およびマイナーコードに対する対処を行ってください。
ローカルトランザクション運用中に、HASEVENTにCORBA-FALSEが設定された場合は、ES-CHANNELUTIL-LOCAL-ROLLBACK関数によりキャンセルを通知する必要はありません。ES-CHANNELUTIL-LOCAL-COMMIT関数により完了を通知してください。
グローバルトランザクション運用中に、HASEVENTにCORBA-FALSEが設定された場合は、COSTRANSACTIONS-CURRENT-ROLLBACK関数によりキャンセルを通知する必要はありません。COSTRANSACTIONS-CURRENT-COMMIT関数により完了を通知してください。
目次
索引
![]() ![]() |