Terminatorインタフェースで提供される機能は、Currentインタフェースで提供されるcommit、rollback機能と同じです。よって、Currentインタフェースとの併用はできません。
名前
CosTransactions_Terminator_commit
形式
#include "orb.h" #include "CosTransactions.h" void CosTransactions_Terminator_commit( CosTransactions_Terminator terminator, CORBA_boolean report_heuristics, CORBA_Environment *env);
機能説明
トランザクションをcommitします。
Currentインタフェースのcommit相当の機能を作成する場合に使用します。よって、Currentインタフェースとの併用はできません。
パラメタ
Controlインタフェースのget_terminator機能で取得したTerminatorオブジェクトのオブジェクトリファレンスを指定します。
CORBA_TRUEを指定するとヒューリスティックエラーが通知されます。
例外情報を獲得するためにCORBA_Environment構造体を参照するポインタを指定します。
復帰値
正常終了した場合は、env構造体の_majorにCORBA_NO_EXCEPTIONが設定されます。異常終了した場合は、env構造体の_majorにCORBA_SYSTEM_EXCEPTIONまたは CORBA_USER_EXCEPTIONが設定され、env構造体の_idに詳細情報が設定されます。
ユーザ例外の場合、以下の詳細情報が設定されます。
トランザクションの完了状態は、いくつかがcommitされ、いくつかがrollbackされた状態です。
トランザクションの完了状態不明です。
システム例外の場合、以下の詳細情報が設定されます。
トランザクションがロールバックされています。
OTSシステム、またはリソース管理プログラムが起動されていません。
通信異常が発生しました。
資源不足が発生しました。
動的メモリの獲得に失敗しました。
CORBAサービスで異常が発生しました。
名前
CosTransactions_Terminator_rollback
形式
#include "orb.h" #include "CosTransactions.h" void CosTransactions_Terminator_rollback( CosTransactions_Terminator terminator, CORBA_Environment *env);
機能説明
トランザクションをrollbackします。
Currentインタフェースのrollback相当の機能を作成する場合に使用します。よって、Currentインタフェースとの併用はできません。
パラメタ
Controlインタフェースのget_terminator機能で取得したTerminatorオブジェクトのオブジェクトリファレンスを指定します。
例外情報を獲得するためにCORBA_Environment構造体を参照するポインタを指定します。
復帰値
正常終了した場合は、env構造体の_majorにCORBA_NO_EXCEPTIONが設定されます。異常終了した場合は、env構造体の_majorにCORBA_SYSTEM_EXCEPTIONが設定され、env構造体の_idに詳細情報が設定されます。
システム例外の場合、以下の詳細情報が設定されます。
トランザクションがロールバックされています。
OTSシステム、またはリソース管理プログラムが起動されていません。
通信異常が発生しました。
資源不足が発生しました。
動的メモリの獲得に失敗しました。
CORBAサービスで異常が発生しました。