| Interstage Application Server リファレンスマニュアル(API編) |
目次
索引
![]()
|
| 第1章 C言語インタフェース | > 1.20 その他の分散トランザクション連携インタフェース | > 1.20.3 Coordinatorインタフェース |
CosTransactions_Coordinator_register_synchronization
#include "orb.h"
#include "CosTransactions.h"
void CosTransactions_Coordinator_register_synchronization(
CosTransactions_Coordinator coordinator,
CosTransactions_Synchronization sync,
CORBA_Environment *env);
トランザクションにSynchronizationオブジェクトを登録します。
coordinatorには、Controlインタフェースのget_coordinator機能で取得したCoordinatorオブジェクトのオブジェクトリファレンスを指定します。
Synchronizationオブジェクトは、Synchronizationインタフェースを使用して作成します。
作成したSynchronizationオブジェクトを登録すると、トランザクションのcommit前と完了後にSynchronizationオブジェクトが呼び出されます。
正常終了した場合は、env構造体の_majorにCORBA_NO_EXCEPTIONが設定されます。異常終了した場合は、env構造体の_majorにCORBA_SYSTEM_EXCEPTIONまたはCORBA_USER_EXCEPTIONが設定され、env構造体の_idに詳細情報が設定されます。
ユーザ例外の場合、以下の詳細情報が設定されます。
ex_CosTransactions_Inactive 該当トランザクションはすでにprepareが完了しています。 ex_CosTransactions_SynchronizationUnavailable このCoordinatorは、Synchronizationインタフェースをサポートしていません。
システム例外の場合、以下の詳細情報が設定されます。
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サービスで異常が発生しました。
目次
索引
![]()
|