Interstage Application Server リファレンスマニュアル(API編) |
目次
索引
![]() ![]() |
第2章 C++言語インタフェース | > 2.24 その他の分散トランザクション連携インタフェース | > 2.24.3 Coordinatorインタフェース |
CosTransactions::Coordinator::register_synchronization
#include "orb_cplus.h" #include "CosTransactions_cplus.h" void CosTransactions::Coordinator::register_synchronization( CosTransactions::Synchronization sync, CORBA::Environment& env);
トランザクションにSynchronizationオブジェクトを登録します。
作成したSynchronizationオブジェクトを登録すると、トランザクションのcommit前と完了後にSynchronizationオブジェクトが呼び出されます。
sync:
ユーザが作成したSynchronizationオブジェクトのオブジェクトリファレンスを指定します。Synchronizationオブジェクトは、Synchronizationインタフェースを使用して作成します。
env:
例外情報を獲得するためにCORBA::Environmentオブジェクトを指定します。
正常終了した場合は、envのexceptionメンバにNULLオブジェクトリファレンスが設定されます。
異常終了した場合は、envのexceptionメンバにSystemExceptionまたはUserExceptionオブジェクトのオブジェクトリファレンスが設定されます。
ユーザ例外の場合、以下の例外クラスが通知されます。
CosTransactions::Inactive 該当トランザクションはすでにprepareが完了しています。 CosTransactions::SynchronizationUnavailable このCoordinatorは、Synchronizationインタフェースをサポートしていません。
システム例外の場合、以下の例外クラスが通知されます。
CORBA::StExcep::NO_IMPLEMENT: OTSシステムが起動されていません。 CORBA::StExcep::COMM_FAILURE: 通信異常が発生しました。 CORBA::StExcep::NO_RESOURCES 資源不足が発生しました。 CORBA::StExcep::NO_MEMORY: 動的メモリの獲得に失敗しました。 CORBA::StExcep::INTERNAL: CORBAサービスで異常が発生しました。
目次
索引
![]() ![]() |