Class::Workflow::Transition::Validate::Simple - Easier validation code.



NAME

Class::Workflow::Transition::Validate::Simple - Easier validation code.


SYNOPSIS

        package MyTransition;
        use Moose;
        with qw/Class::Workflow::Transition::Validate::Simple/;
        # ...
        $t->clear_validators;
        $t->add_validators( sub { ... } );


DESCRIPTION


FIELDS

ignore_validator_rv
This is useful if your validators only throw exceptions.

Defaults to false

error_state
This contains a state that will be moved to if a validation error occurs.

In conjunction with the Class::Workflow::State::AutoApply manpage this can work like a catch block.

The instance will have the error attribute set.

no_die
If this is set, validation_error will not die even if error_state is not set.

The instance will have the error attribute set, and will be reaccepted into it's current state, with the error.


METHODS

validators
This is an optional list of sub refs which will be called to validate input before applying body.

They should raise an exception or return a false value if the input is bad.

They may put validation result information inside the the Class::Workflow::Context manpage or equivalent, if one is used.

A more comprehensive solution is to override the validate method yourself and provide rich exception objects with validation error descriptors inside them.

The validators are invoked as methods on the transition.

IF ignore_validator_rv is true then only exceptions are considered input validations.

add_validators @code_refs
clear_validators
Modify the list of validators.


ROLES

This role consumes the following roles:

 Class::Workflow::Transition::Validate::Simple - Easier validation code.