ページの先頭行へ戻る
Interstage Application Server リファレンスマニュアル(API編)
FUJITSU Software

2.24.3 Coordinatorインタフェース

Coordinatorインタフェースには、Currentインタフェースと同じ以下の機能もあります。これらの仕様は、Currentインタフェースを参照してください。

2.24.3.1 CosTransactions::Coordinator::register_synchronization

名前

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サービスで異常が発生しました。

2.24.3.2 CosTransactions::Coordinator::get_txcontext

名前

CosTransactions::Coordinator::get_txcontext

形式

#include  "orb_cplus.h"
#include  "CosTransactions_cplus.h"
CosTransactions::PropagationContext*  CosTransactions::Coordinator::get_txcontext(
                                  CORBA::Environment&       env);

機能説明

トランザクション情報を管理しているトランザクションコンテキストを返します。

パラメタ

env

例外情報を獲得するためにCORBA::Environmentオブジェクトを指定します。

復帰値

正常終了した場合は、envのexceptionメンバにNULLオブジェクトリファレンスが設定されます。
異常終了した場合は、envのexceptionメンバにSystemExceptionまたはUserExceptionオブジェクトのオブジェクトリファレンスが設定されます。

ユーザ例外の場合、以下の例外クラスが通知されます。

CosTransactions::Unavailable

該当Coordinatorオブジェクトは利用できません。

システム例外の場合、以下の例外クラスが通知されます。

CORBA::StExcep::NO_IMPLEMENT

OTSシステムが起動されていません。

CORBA::StExcep::COMM_FAILURE

通信異常が発生しました。

CORBA::StExcep::NO_RESOURCES

資源不足が発生しました。

CORBA::StExcep::NO_MEMORY:

動的メモリの獲得に失敗しました。

CORBA::StExcep::INTERNAL:

CORBAサービスで異常が発生しました。