class TransactionHandler

TransactionHandler

  • DatabaseHandler 에서 생성된 VirtualConnection 의 여러개의 database connection 을 하나의 transaction 으로 관리
    • DatabaseHandler 에 의해 생성된 VirtualConnection 들의 transaction 관리
    • 각 VirtualConnection 가 갖는 connection 들은 연관성 없는 transaction 으로 처리됨
    • TransactionHandler 로 단일 connection 같이 처리
    • 하나 이상의 물리적으로 다른 connection 을 동일한 transaction 으로 처리

사용법

Transaction

  • VirtualConnection 통해 TransactionHandler 에서 처리
XeDB::beginTransaction();
XeDB::commit();
XeDB::rollBack();

Properties

protected int $globalTransactions 모든 connector 의 transaction 을 통합해서 관리
static private array $instance singleton instances

Methods

__construct()

singleton

void
__clone()

not able clone

instance()

create instance if not exists

static void
destruct()

destroy singleton instance

void
setCurrent(Connection $connection)

Database 연길 할 때 transaction 이 진행 중이라면 연결하려는 $connection 의 transaction 시작 \Illuminiate\Database\Connection 의 transaction level 은 0 또는 1 로 제한.

void
beginTransaction(DatabaseCoupler $coupler)

$connectionHandlers 가 갖고 있는 connection transaction 처리.

void
commit(DatabaseCoupler $coupler)

$connectionHandlers 가 갖고 있는 connection commit.

void
rollBack(DatabaseCoupler $coupler)

$connectionHandlers 가 갖고 있는 connection Rollbsack.

int
transactionLevel()

Get the number of active transactions.

Details

at line 67
private __construct()

singleton

at line 77
private void __clone()

not able clone

Return Value

void

at line 87
static TransactionHandler instance()

create instance if not exists

Return Value

TransactionHandler

at line 101
static void destruct()

destroy singleton instance

Return Value

void

at line 114
void setCurrent(Connection $connection)

Database 연길 할 때 transaction 이 진행 중이라면 연결하려는 $connection 의 transaction 시작 \Illuminiate\Database\Connection 의 transaction level 은 0 또는 1 로 제한.

transaction level 은 transaction handler 로 제어.

Parameters

Connection $connection connection

Return Value

void

at line 129
void beginTransaction(DatabaseCoupler $coupler)

$connectionHandlers 가 갖고 있는 connection transaction 처리.

/Illuminate/Database/Connection 의 transactions 는 1 또는 0. transaction 관리는 globalTransactions 로 처리

Parameters

DatabaseCoupler $coupler database coupler

Return Value

void

at line 147
void commit(DatabaseCoupler $coupler)

$connectionHandlers 가 갖고 있는 connection commit.

/Illuminate/Database/Connection 의 commit.

Parameters

DatabaseCoupler $coupler database coupler

Return Value

void

at line 168
void rollBack(DatabaseCoupler $coupler)

$connectionHandlers 가 갖고 있는 connection Rollbsack.

/Illuminate/Database/Connection 의 rollBack.

Parameters

DatabaseCoupler $coupler database coupler

Return Value

void

at line 189
int transactionLevel()

Get the number of active transactions.

Return Value

int