Workflow::Exception - Base class for workflow exceptions
This documentation describes version 1.52 of this package
# Standard usage use Workflow::Exception qw( workflow_error ); my $user = $wf->context->param( 'current_user' ); unless ( $user->check_password( $entered_password ) ) { workflow_error "User exists but password check failed"; } # Pass a list of strings to form the message unless ( $user->check_password( $entered_password ) ) { workflow_error 'Bad login: ', $object->login_attempted; } # Using other exported shortcuts use Workflow::Exception qw( configuration_error ); configuration_error "Field 'foo' must be a set to 'bar'"; use Workflow::Exception qw( validation_error ); validation_error "Validation for field 'foo' failed: $error";
First, you should probably look at Exception::Class for more usage examples, why we use exceptions, what they are intended for, etc.
This is the base class for all workflow exceptions. It declares a handful of exceptions and provides shortcuts to make raising an exception easier and more readable.
This overrides throw() from Exception::Class to add a little syntactic sugar. Instead of:
$exception_class->throw( message => 'This is my very long error message that I would like to pass', param1 => 'Param1 value', param2 => 'Param2 value' );
You can use:
$exception_class->throw( 'This is my very long error message ', 'that I would like to pass', { param1 => 'Param1 value', param2 => 'Param2 value' } );
And everything will work the same. Combined with the SHORTCUTS this makes for very readable code:
workflow_error "Something went horribly, terribly, dreadfully, " "frightfully wrong: $@", { foo => 'bar' };
This method transforms the error to a condition error.
This exception is thrown via </mythrow> when a condition of a workflow is invalid.
This method transforms the error to a configuration error.
This exception is thrown via </mythrow> when configuration of a workflow is unsuccessful.
This method transforms the error to a persistance error.
This exception is thrown via </mythrow> when the save of a workflow is unsuccessful.
This method transforms the error to a validation error.
This exception is thrown via </mythrow> when input data or similar of a workflow is unsuccessful.
This method transforms the error to a workflow error.
Workflow::Exception - import using workflow_error
workflow_error
Workflow::Exception::Condition - import using condition_error
condition_error
Workflow::Exception::Configuration - import using configuration_error
configuration_error
Workflow::Exception::Persist - import using persist_error
persist_error
Workflow::Exception::Validation - import using validation_error
validation_error
Exception::Class
Copyright (c) 2003-2021 Chris Winters. All rights reserved.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Please see the LICENSE
Please see Workflow
To install Workflow, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Workflow
CPAN shell
perl -MCPAN -e shell install Workflow
For more information on module installation, please visit the detailed CPAN module installation guide.