Handel::Exception - Exceptions used within Handel
use Handel::Cart; use Handel::Exception' qw(:try); try { my $cart = Handel::Cart->new('junk crap'); } catch Handel::Exception::Argument with { print 'Passed the wrong arguments to method'; } catch Handel::Exception with { print 'Unknown issue with Handel'; } catch Error with { print 'Unhandled exception'; } otherwise { print 'aliens ate my exception'; };
Handel::Exception subclasses Error and attempts to throw exceptions when unexpected things happen.
This is the base exception thrown in Handel. All other exceptions subclass Handel::Exception so it's possible to catch all Handel generated exceptions with a single catch statement.
Handel
Handel::Exception
catch
try { ... } catch Handel::Exception with { my $E = shift; print 'Something bad happened in Handel: ' . E->text; } catch MyApplicationException with { print 'Something bad happened in MyApplication'; };
See Error for more information on how to use exceptions.
This exception is thrown if a database constraint is violated. This is true for both raw DBI database constraint errors as well as field updates that don't pass constraints in Handel::Components::Constraints.
This exception is thrown if the validation performed by Handel::Components::Validation has failed. If the validation component returned a result object, that can be found in $E->results.
This exception is thrown if there are any configuration or setup errors in Handel::Storage.
This exception is thrown when an invalid or unexpected argument value is passed into methods.
This exception is thrown when an unexpected error occurs within the AxKit taglibs.
This returns a new Handel::Exception object. This is mostly used internally by Error. In most circumstances, you don't need to call new at all. Instead, simply use the throw syntax:
new
throw
use Handel::Exceptions; throw Handel::Exception::Taglib( -text => translate("Tag '[_1]' not valid inside of other Handel tags", $tag) ) if ($context[$#context] ne 'root');
Returns the details portion of the exception message if there are any.
Returns the data validation result errors from exceptions thrown by Handel::Components::Validation.
Error, Handel::Constraints
Christopher H. Laco CPAN ID: CLACO claco@chrislaco.com http://today.icantfocus.com/blog/
To install Handel, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Handel
CPAN shell
perl -MCPAN -e shell install Handel
For more information on module installation, please visit the detailed CPAN module installation guide.