com\setasign\Konquadrat\Object

TransactionManager Describes a logger-aware instance.

File: /Konquadrat/src/Object/TransactionManager.php

Class hierarchy

Implements

  • \Psr\Log\LoggerAwareInterface

Summary

Constants

EVENT_BEGIN_TRANSACTION

public const TransactionManager::EVENT_BEGIN_TRANSACTION = 'beginTransaction'

EVENT_COMMIT

public const TransactionManager::EVENT_COMMIT = 'commit'

EVENT_ROLLBACK

public const TransactionManager::EVENT_ROLLBACK = 'rollback'

Properties

$database

$eventManager

$inTransaction

$logger

$transactionBackup


Methods

__construct()

public TransactionManager::__construct (
\com\setasign\SetaFramework\Database\Database $database,
\com\setasign\SetaFramework\EventManager\EventManager $eventManager
)
Parameters
$database : \com\setasign\SetaFramework\Database\Database
 
$eventManager : \com\setasign\SetaFramework\EventManager\EventManager
 

beginTransaction()

public TransactionManager::beginTransaction (
void
): void

Begin a transaction.

Exceptions

Throws \com\setasign\Konquadrat\Exception If there is already a running transaction.

commit()

public TransactionManager::commit (
void
): void

Commit the database transaction.

Exceptions

Throws \com\setasign\Konquadrat\Exception

getEventManager()

public TransactionManager::getEventManager (
void
): \com\setasign\SetaFramework\EventManager\EventManager

inTransaction()

public TransactionManager::inTransaction (
void
): bool

process()

public TransactionManager::process (
callable $callable
): void

If no transaction is running $callable will be encapsulated in a transaction

Parameters
$callable : callable
 
Exceptions

Throws \Throwable

rollBack()

public TransactionManager::rollBack (
void
): void

Rollback the database transaction and all saved objects.

Exceptions

Throws \com\setasign\Konquadrat\Exception

setLogger()

public TransactionManager::setLogger (
\Psr\Log\LoggerInterface $logger
): void

Sets a logger instance on the object.

Parameters
$logger : \Psr\Log\LoggerInterface