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

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

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