logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

DBIx::Class::Storage::TxnScopeGuard - Scope-based transaction handling

Description

       An object that behaves much like Scope::Guard, but hardcoded to do the right thing with transactions in
       DBIx::Class.

Further Questions?

       Check the list of additional DBIC resources.

Methods

new
       Creating an instance of this class will start a new transaction (by implicitly calling "txn_begin" in
       DBIx::Class::Storage. Expects a DBIx::Class::Storage object as its only argument.

   commit
       Commit the transaction, and stop guarding the scope. If this method is not called and this object goes
       out of scope (e.g. an exception is thrown) then the transaction is rolled back, via "txn_rollback" in
       DBIx::Class::Storage

Name

       DBIx::Class::Storage::TxnScopeGuard - Scope-based transaction handling

See Also

       "txn_scope_guard" in DBIx::Class::Schema.

       Scope::Guard by chocolateboy (inspiration for this module)

Synopsis

        sub foo {
          my ($self, $schema) = @_;

          my $guard = $schema->txn_scope_guard;

          # Multiple database operations here

          $guard->commit;
        }

See Also