Skip to content

pyuow.work

Work Manager protocols and built-in implementations.

base

BaseWorkManager

Bases: ABC

BaseUnitProxy

Bases: BaseUnit[CONTEXT, OUT], ABC

pyuow.work.noop

impl

NoOpWorkManager

NoOpUnitProxy

NoOpUnitProxy(*, unit: BaseUnit[CONTEXT, OUT])

Bases: BaseUnitProxy[CONTEXT, OUT]

pyuow.work.transactional

base

BaseTransaction

BaseTransaction(transaction_provider: TRANSACTION_PROVIDER)

Bases: Generic[TRANSACTION_PROVIDER], ABC

BaseTransactionManager

Bases: Generic[TRANSACTION], ABC

impl

TransactionalWorkManager

TransactionalWorkManager(
    *,
    transaction_manager: BaseTransactionManager[
        TRANSACTION
    ],
)

TransactionalUnitProxy

TransactionalUnitProxy(
    *,
    transaction_manager: BaseTransactionManager[
        TRANSACTION
    ],
    unit: BaseUnit[CONTEXT, OUT],
)

Bases: BaseUnitProxy[CONTEXT, OUT]

pyuow.work.transactional.domain

impl

DomainTransactionalWorkManager

DomainTransactionalWorkManager(
    *,
    transaction_manager: BaseTransactionManager[
        TRANSACTION
    ],
    batch_handler: Callable[[Batch], None],
)

DomainUnit

DomainUnit(
    *,
    unit: BaseUnit[CONTEXT, OUT],
    batch_handler: Callable[[Batch], None],
)

Bases: BaseUnit[CONTEXT, OUT]

pyuow.work.aio

base

BaseWorkManager

Bases: ABC

BaseUnitProxy

Bases: BaseUnit[CONTEXT, OUT], ABC

impl

NoOpWorkManager

impl

TransactionalWorkManager

TransactionalWorkManager(
    *,
    transaction_manager: BaseTransactionManager[
        TRANSACTION
    ],
)

impl

DomainTransactionalWorkManager

DomainTransactionalWorkManager(
    *,
    transaction_manager: BaseTransactionManager[
        TRANSACTION
    ],
    batch_handler: Callable[[Batch], Awaitable[None]],
)