יובל קוג'מן (Yuval Kogman) > KiokuDB-0.51 > KiokuDB::Backend::Role::TXN

Download:
KiokuDB-0.51.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  3
Open  2
View/Report Bugs
Source   Latest Release: KiokuDB-0.57

NAME ^

KiokuDB::Backend::Role::TXN - Backend level transaction support.

SYNOPSIS ^

    package MyBackend;
    use Moose;

    with qw(
        KiokuDB::Backend
        KiokuDB::Backend::Role::TXN
    );

    sub txn_begin { ... }
    sub txn_commit { ... }
    sub txn_rollback { ... }

DESCRIPTION ^

This API is inspired by standard database transactions much like you get with DBI.

This is the low level interface required by "txn_do" in KiokuDB.

OPTIONAL METHODS ^

txn_do $code, %callbacks

This method should evaluate the code reference in the context of a transaction, inside an eval. If any errors are caught the transaction should be aborted, otherwise it should be committed. This is much like "txn_do" in DBIx::Class::Schema.

The rollback callback should be fired when the transaction will be aborted.

REQUIRED METHODS ^

txn_begin [ $parent_txn ]

Begin a new transaction.

This method can return a transaction handle that will later be passed to txn_commit or txn_rollback as necessary.

The current handle will be passed to nested calls to txn_begin.

txn_commit $txn

Commit the transaction.

txn_rollback $txn

Rollback the transaction.

syntax highlighting: