Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
MooseX::TransactionalMUserdContributed Perl DocMooseX::TransactionalMethods(3)

NAME
       MooseX::TransactionalMethods - Syntax sugar for transactional methods

SYNOPSIS
	 package Foo::Bar;
	 use MooseX::TransactionalMethods; # includes Moose

	 has schema => (is => 'ro');

	 transactional foo => sub {
	    # this is going to happen inside a transaction
	 };

DESCRIPTION
       This method exports the "transactional" declarator that will enclose
       the method in a txn_do call.

DECLARATOR
       transactional $name => $code
	   When	you declare with only the name and the coderef,	the wrapper
	   will	call 'schema' on your class to fetch the schema	object on
	   which it will call txn_do to	enclose	your coderef.

       transactional $name => $schema, $code
	   When	you declare sending the	schema object, it will store it	in the
	   method metaclass and	use it directly	without	any calls to this
	   object.

	   NOTE	THAT MIXING DECLARTIONS	WITH SCHEMA AND	WITHOUT	SCHEMA WILL
	   LEAD	TO PAINFULL CONFUSION SINCE THE	WRAPPING IS SPECIFIC TO	THAT
	   CLASS AND THE BEHAVIOR IS NOT MODIFIED WHEN YOU OVERRIDE THE
	   METHOD. PREFER USING	THE DYNAMIC DECLARATOR WHEN POSSIBLE.

AUTHORS
       Daniel Ruoso <daniel@ruoso.com>

       With help from rafl and doy from	#moose.

COPYRIGHT AND LICENSE
       Copyright 2010 by Daniel	Ruoso et al

       This library is free software; you can redistribute it and/or modify it
       under the same terms as Perl itself.

perl v5.24.1			  2015-03-26   MooseX::TransactionalMethods(3)

NAME | SYNOPSIS | DESCRIPTION | DECLARATOR | AUTHORS | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=MooseX::TransactionalMethods&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help