NAME
BPM::Engine::Util::ExpressionEvaluator - Inference engine loader
SYNOPSIS
use BPM::Engine::Util::ExpressionEvaluator;
my $evaluator = BPM::Engine::Util::ExpressionEvaluator->load(
process_instance => $pi,
process => $pi->process,
activity => $activity_instance->activity,
activity_instance => $activity_instance,
transition => $transition
);
$evaluator->render()
DESCRIPTION
This module loads an instance of BPM::Engine::Util::Expression::Xslate suitable for evaluating XPDL expressions.
CLASS METHODS
load
Accepts a hash of options, and returns a new BPM::Engine::Util::Expression::Xslate instance suitable for rendering and evaluating XPDL expressions. In addition to providing the supplied options in the template strings as simple hash references, the expression evaluator will be supplied with an attribute
function to make use of process instance variables in expressions.
Possible options are:
process_instance
-
BPM::Engine::Store::Result::ProcessInstance instance whose attributes will be rendered or evaluated. This is the only required option.
process
-
A BPM::Engine::Store::Result::Process result row.
activity
-
A BPM::Engine::Store::Result::Activity result row.
activity_instance
-
A BPM::Engine::Store::Result::ActivityInstance result row.
transition
-
A BPM::Engine::Store::Result::Transition result row.
The BPM::Engine::Util::Expression::Xslate instance that is returned contains all options which are available to template strings as simple hash references. In addition, the process_instance
result row is used as a constructor argument.
AUTHOR
Peter de Vos, <sitetech@cpan.org>
COPYRIGHT AND LICENSE
Copyright (c) 2010, 2011 Peter de Vos.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.