cciNodeCompletionCallback

これはコールバックとして登録できる関数であり、ノードがメッセージの処理を完了して制御をアップストリーム・ノードに戻すたびに呼び出されます。これは、ユーザー出口の状態がアクティブの場合、コールバックが登録された実行グループ内で伝搬されるメッセージごとに呼び出されます。コールバックを登録するには、この関数へのポインターを cciRegisterUserExit に渡される CCI_UE_VFT 構造の iFpNodeCompletionCallback フィールドに指定します。

例外が処理されなかったためにノードが完了した場合は、reasonCode に CCI_EXCEPTION が戻され、cciGetLastExceptionData を呼び出すことによって、この例外の詳細を表示できます。

ノードが正常に完了した場合は (例外が catch または failure ターミナルで処理される場合を含む)、reasonCode に CCI_SUCCESS が戻されます。
注: この場合、cciGetLastExceptionData を呼び出すと、結果は予測不能です。

構文

typedef void (*cciNodeCompletionCallback) (
                                 CciDataContext* userContext,
                                 CciMessage* message,
                                 CciMessage* localEnvironment,
                                 CciMessage* exceptionList,
                                 CciMessage* environment,
                                 CciConnection* connection,
                                 int reasonCode);

パラメーター

userContext (入力)
これは、cciRegisterUserExit 関数に渡された値です。
message
これは、伝搬されるメッセージ・オブジェクトへのハンドルです。ユーザー出口コードは、このツリーを更新してはなりません。
localEnvironment
これは、伝搬されるローカル環境オブジェクトへのハンドルです。
exceptionList
これは、伝搬される例外リスト・オブジェクトへのハンドルです。
environment
これは、現行メッセージ・フローの環境オブジェクトへのハンドルです。
connection
これは、2 つのノード間の接続オブジェクトへのハンドルです。これは、例えば、cciGetSourceNodecciGetTargetNodecciGetSourceTerminalName、および cciGetTargetTerminalName への呼び出しで使用できます。このハンドルは、ユーザー出口関数のこの呼び出しの期間内のみ有効です。
reasonCode
これは、ノードが通常どおり完了したか (CCI_SUCCESS)、例外が処理されなかったためにノードが完了したか (CCI_EXCEPTION) を示します。例外が処理されなかったためにノードが完了した場合は、cciGetLastExceptionData を呼び出すことによって、この例外の詳細を表示できます。ノードが正常に完了した場合は (例外が catch または failure ターミナルで処理される場合を含む)、cciGetLastExceptionData を呼び出しても、結果は不明です。

戻り値

なし。

void myNodeCompletionCallback(
                                 CciDataContext* userContext,
                                 CciMessage* message,
                                 CciMessage* localEnvironment,
                                 CciMessage* exceptionList,
                                 CciMessage* environment,
                                 CciConnection* connection
                                 int reasonCode){
…
…
}
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
as35940_