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

2.24.1 TransactionFactoryインタフェース

2.24.1.1 CosTransactions::TransactionFactory::create

名前

CosTransactions::TransactionFactory::create

形式

#include  "orb_cplus.h"
#include  "CosTransactions_cplus.h"
CosTransactions::Control_ptr  CosTransactions::TransactionFactory::create(
                      CORBA::ULong           time_out,
                      CORBA::Environment&          env);

機能説明

新しくトランザクションを生成します。そのトランザクションコンテキストを管理するControlオブジェクトを生成し、そのオブジェクトリファレンスを返します。
Currentインタフェースのbegin相当の機能を作成する場合に使用します。よって、Currentインタフェースとの併用はできません。

パラメタ

time_out

トランザクションのタイムアウト監視時間を指定します。トランザクション開始前にCosTransactions::Current::set_timeoutメソッドを使用した場合は、そのメソッドで指定した時間を指定します。

env

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

復帰値

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

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

CORBA::StExcep::NO_IMPLEMENT

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

CORBA::StExcep::COMM_FAILURE

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

CORBA::StExcep::NO_RESOURCES

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

CORBA::StExcep::NO_MEMORY:

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

CORBA::StExcep::INTERNAL:

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

2.24.1.2 CosTransactions::TransactionFactory::recreate

名前

CosTransactions::TransactionFactory::recreate

形式

#include  "orb_cplus.h"
#include  "CosTransactions_cplus.h"
CosTransactions::Control_ptr  CosTransactions::TransactionFactory::recreate(
                      CosTransactions::PropagationContext& ctx,
                      CORBA::Environment&            env);

機能説明

トランザクションコンテキストを管理するControlオブジェクトを再生成し、そのオブジェクトリファレンスを返します。

パラメタ

ctx

CosTransactions::Coordinator::get_txcontext機能で取得したPropagationContextを指定します。

env

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

復帰値

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

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

CORBA::StExcep::NO_IMPLEMENT

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

CORBA::StExcep::COMM_FAILURE

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

CORBA::StExcep::NO_RESOURCES

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

CORBA::StExcep::NO_MEMORY:

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

CORBA::StExcep::INTERNAL:

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