名前
CosTransactions_TransactionFactory_create
形式
#include "orb.h" #include "CosTransactions.h" CosTransactions_Control CosTransactions_TransactionFactory_create( CosTransactions_TransactionFactoy tran_factoy, CORBA_unsigned_long time_out, CORBA_Environment *env);
機能説明
新しくトランザクションを生成します。そのトランザクションコンテキストを管理するControlオブジェクトを生成し、そのオブジェクトリファレンスを返します。
Currentインタフェースのbegin相当の機能を作成する場合に使用します。よって、Currentインタフェースとの併用はできません。
パラメタ
CORBA_ORB_resolve_initial_references()のidentifierパラメタに“TransactionService”を指定して獲得します。
トランザクションのタイムアウト時間を指定します。トランザクション開始前にCosTransactions_Current_set_timeoutメソッドを使用した場合は、そのメソッドで指定した時間を指定します。
例外情報を獲得するためにCORBA_Environment構造体を参照するポインタを指定します。
復帰値
正常終了した場合は、env構造体の_majorにCORBA_NO_EXCEPTIONが設定され、復帰値にControlオブジェクトのオブジェクトリファレンスを返します。異常終了した場合は、env構造体の_majorにCORBA_SYSTEM_EXCEPTIONが設定され、env構造体の_idに詳細情報が設定されます。
システム例外の場合、以下の詳細情報が設定されます。
ex_CORBA_StExcep_NO_IMPLEMENT: OTSシステムが起動されていません。 ex_CORBA_StExcep_COMM_FAILURE: 通信異常が発生しました。 ex_CORBA_StExcep_NO_RESOURCES 資源不足が発生しました。 ex_CORBA_StExcep_NO_MEMORY: 動的メモリの獲得に失敗しました。 ex_CORBA_StExcep_INTERNAL: CORBAサービスで異常が発生しました。
名前
CosTransactions_TransactionFactory_recreate
形式
#include "orb.h" #include "CosTransactions.h" CosTransactions_Control CosTransactions_TransactionFactory_recreate( CosTransactions_TransactionFactoy tran_factoy, CosTransactions_PropagationContext *ctx, CORBA_Environment *env);
機能説明
トランザクションコンテキストを管理するControlオブジェクトを再生成し、そのオブジェクトリファレンスを返します。
Currentインタフェースのbegin相当の機能を作成する場合に使用します。よって、Currentインタフェースとの併用はできません。
パラメタ
CORBA_ORB_resolve_initial_references()のidentifierパラメタに“TransactionService”を指定して獲得します。
CosTransactions_Coordinator_get_txcontext機能で取得したPropagationContextを参照するポインタを指定します。
例外情報を獲得するためにCORBA_Environment構造体を参照するポインタを指定します。
復帰値
正常終了した場合は、env構造体の_majorにCORBA_NO_EXCEPTIONが設定され、復帰値にControlオブジェクトのオブジェクトリファレンスを返します。異常終了した場合は、env構造体の_majorにCORBA_SYSTEM_EXCEPTIONが設定され、env構造体の_idに詳細情報が設定されます。
システム例外の場合、以下の詳細情報が設定されます。
ex_CORBA_StExcep_NO_IMPLEMENT: OTSシステムが起動されていません。 ex_CORBA_StExcep_COMM_FAILURE: 通信異常が発生しました。 ex_CORBA_StExcep_NO_RESOURCES 資源不足が発生しました。 ex_CORBA_StExcep_NO_MEMORY: 動的メモリの獲得に失敗しました。 ex_CORBA_StExcep_INTERNAL: CORBAサービスで異常が発生しました。