Viktor Turskyi > Rose-DBx-Role-NestTransaction-0.03 > Rose::DBx::Role::NestTransaction

Download:
Rose-DBx-Role-NestTransaction-0.03.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.03   Source  

NAME ^

Rose::DBx::Role::NestTransaction - Nested transactions support for Rose::DB

SYNOPSIS ^

    # Define yout DB class
    package MyDB;
    use base 'Rose::DB';

    use Role::Tiny::With;
    with 'Rose::DBx::Role::NestTransaction';

    # Somewhere in your code
    MyDB->new_or_cached->nest_transaction(sub {
        User->new( name => 'name' )->save();
    });

DESCRIPTION ^

This module provides a role for Rose::DB. Just consume the role in your Rose::DB subclass

METHODS ^

nest_transaction

These methods behaves like do_transaction but it repects existing transactions and do not start new one if the transaction already started. On error it revert transaction and rethrow error and on success it returns true

AUTHOR ^

Viktor Turskyi, <koorchik at cpan.org>

BUGS ^

Please report any bugs or feature requests to Github https://github.com/koorchik/Rose-DBx-Role-NestTransaction

LICENSE AND COPYRIGHT ^

Copyright 2012 Viktor Turskyi.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.

syntax highlighting: