Interstage Application Server リファレンスマニュアル(API編)
目次 索引 前ページ次ページ

第1章 C言語インタフェース> 1.20 その他の分散トランザクション連携インタフェース> 1.20.3 Coordinatorインタフェース

1.20.3.1 CosTransactions_Coordinator_register_synchronization

名前

 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オブジェクトが呼び出されます。

パラメタ

 coordinator
 Controlインタフェースのget_coordinator機能で取得したCoordinatorオブジェクトのオブジェクトリファレンスを指定します。
 sync
 ユーザが作成したSynchronizationオブジェクトのオブジェクトリファレンスを指定します。
 *env
 例外情報を獲得するためにCORBA_Environment構造体を参照するポインタを指定します。

復帰値

 正常終了した場合は、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サービスで異常が発生しました。

目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005