view release on metacpan or search on metacpan
Silly::Werder: 0.90
Sub::Exporter: 0.98
Template: 2.20
Text::Xslate: 1.0012
Text::Xslate::Bridge::TT2Like: 0
Try::Tiny: 0.11
XML::LibXML: 1.70
XML::LibXML::Simple: 0.13
YAML::LibYAML: 0.18
aliased: 0
namespace::autoclean: 0.11
namespace::clean: 0.18
parent: 0
perl: 5.10.0
resources:
homepage: http://bpmengine.org/
license: http://dev.perl.org/licenses/
repository: git://github.com/sitetechie/BPM-Engine.git
version: 0.01
Makefile.PL view on Meta::CPAN
# minimum versions required upstream (indirect deps)
requires 'MooseX::Method::Signatures' => '0.42';
requires 'YAML::LibYAML' => '0.18';
requires 'Config::Any' => '0.23';
# direct dependencies
requires 'aliased' => '0';
requires 'parent' => '0';
requires 'namespace::clean' => '0.18';
requires 'namespace::autoclean' => '0.11';
requires 'DateTime' => '0.53';
requires 'Sub::Exporter' => '0.98';
requires 'Path::Class' => '0.21';
requires 'File::ShareDir' => '1.03';
requires 'JSON' => '0';
requires 'Silly::Werder' => '0.90';
requires 'Data::GUID' => '0.046';
requires 'Class::MOP' => '1.1';
requires 'Try::Tiny' => '0.11';
requires 'Exception::Class' => '1.29';
lib/BPM/Engine.pm view on Meta::CPAN
package BPM::Engine;
BEGIN {
$BPM::Engine::VERSION = '0.01';
$BPM::Engine::AUTHORITY = 'cpan:SITETECH';
}
use 5.010;
use namespace::autoclean;
use Moose;
use MooseX::StrictConstructor;
#use Scalar::Util ();
use BPM::Engine::Exceptions qw/throw_engine/;
use BPM::Engine::Store;
use BPM::Engine::ProcessRunner;
use BPM::Engine::Types qw/ArrayRef/;
with qw/
MooseX::SimpleConfig
lib/BPM/Engine/Logger.pm view on Meta::CPAN
package BPM::Engine::Logger;
BEGIN {
$BPM::Engine::Logger::VERSION = '0.01';
$BPM::Engine::Logger::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
use MooseX::StrictConstructor;
with qw/MooseX::LogDispatch::Levels MooseX::LogDispatch::Interface/;
$Log::Dispatch::Config::CallerDepth = 1;
has log_dispatch_conf => (
is => 'ro',
lazy => 1,
lib/BPM/Engine/ProcessRunner.pm view on Meta::CPAN
$BPM::Engine::ProcessRunner::VERSION = '0.01';
$BPM::Engine::ProcessRunner::AUTHORITY = 'cpan:SITETECH';
}
use Moose;
use MooseX::StrictConstructor;
use DateTime;
use BPM::Engine::Types qw/Bool ArrayRef HashRef CodeRef Exception Row/;
use BPM::Engine::Exceptions qw/throw_model throw_abstract throw_runner/;
use BPM::Engine::Util::ExpressionEvaluator;
use namespace::autoclean; # -also => [qr/^_/];
with qw/
MooseX::Traits
BPM::Engine::Role::WithLogger
BPM::Engine::Role::WithCallback
/;
BEGIN {
for my $event (qw/start continue complete execute/) {
for my $entity (qw/process activity transition task/) {
lib/BPM/Engine/Role/EngineAPI.pm view on Meta::CPAN
package BPM::Engine::Role::EngineAPI;
BEGIN {
$BPM::Engine::Role::EngineAPI::VERSION = '0.01';
$BPM::Engine::Role::EngineAPI::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
requires qw(
new
new_with_config
logger
log_dispatch_conf
log
lib/BPM/Engine/Role/HandlesAssignments.pm view on Meta::CPAN
package BPM::Engine::Role::HandlesAssignments;
BEGIN {
$BPM::Engine::Role::HandlesAssignments::VERSION = '0.01';
$BPM::Engine::Role::HandlesAssignments::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
use BPM::Engine::Util::ExpressionEvaluator;
requires qw/process_instance process/;
before 'start_process' => sub {
my $self = shift;
my @assignments = $self->process->start_assignments;
return unless scalar @assignments;
lib/BPM/Engine/Role/HandlesIO.pm view on Meta::CPAN
package BPM::Engine::Role::HandlesIO;
BEGIN {
$BPM::Engine::Role::HandlesIO::VERSION = '0.01';
$BPM::Engine::Role::HandlesIO::AUTHORITY = 'cpan:SITETECH';
}
use Moose::Role;
use namespace::autoclean;
before '_execute_implementation' => sub {
my ($self, $activity, $instance) = @_;
if ($activity->input_sets) {
my $pi = $instance->process_instance;
my $artifacts = $pi->process->package->artifacts;
my $attributes = $pi->attributes_rs;
my @inputs = ();
lib/BPM/Engine/Role/HandlesTaskdata.pm view on Meta::CPAN
package BPM::Engine::Role::HandlesTaskdata;
BEGIN {
$BPM::Engine::Role::HandlesTaskdata::VERSION = '0.01';
$BPM::Engine::Role::HandlesTaskdata::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
use Data::GUID;
use Try::Tiny;
requires qw/
process_instance
process
/;
before 'execute_task' => sub {
lib/BPM/Engine/Role/RunnerAPI.pm view on Meta::CPAN
package BPM::Engine::Role::RunnerAPI;
BEGIN {
$BPM::Engine::Role::RunnerAPI::VERSION = '0.01';
$BPM::Engine::Role::RunnerAPI::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
requires qw(
log
debug
info
notice
warning
error
critical
lib/BPM/Engine/Role/WithCallback.pm view on Meta::CPAN
package BPM::Engine::Role::WithCallback;
BEGIN {
$BPM::Engine::Role::WithCallback::VERSION = '0.01';
$BPM::Engine::Role::WithCallback::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
use BPM::Engine::Types qw/CodeRef/;
has 'callback' => (
traits => ['Code'],
is => 'rw',
isa => CodeRef,
required => 0,
predicate => 'has_callback',
handles => { call_callback => 'execute', },
lib/BPM/Engine/Role/WithLogger.pm view on Meta::CPAN
package BPM::Engine::Role::WithLogger;
BEGIN {
$BPM::Engine::Role::WithLogger::VERSION = '0.01';
$BPM::Engine::Role::WithLogger::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
use BPM::Engine::Logger;
has 'logger' => (
does => 'MooseX::LogDispatch::Interface',
is => 'ro',
lazy_build => 1,
handles => 'MooseX::LogDispatch::Interface',
);
lib/BPM/Engine/Role/WithPersistence.pm view on Meta::CPAN
package BPM::Engine::Role::WithPersistence;
BEGIN {
$BPM::Engine::Role::WithPersistence::VERSION = '0.01';
$BPM::Engine::Role::WithPersistence::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
use BPM::Engine::Types qw/ConnectInfo Schema/;
use BPM::Engine::Store;
use BPM::Engine::Exceptions qw/throw_param/;
has schema => (
isa => Schema['BPM::Engine::Store'],
is => 'ro',
lazy_build => 1,
predicate => 'has_schema',
lib/BPM/Engine/Store/Result.pm view on Meta::CPAN
package BPM::Engine::Store::Result;
BEGIN {
$BPM::Engine::Store::Result::VERSION = '0.01';
$BPM::Engine::Store::Result::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
use MooseX::NonMoose;
extends qw/DBIx::Class::Core/;
__PACKAGE__->load_components(qw/InflateColumn::DateTime/);
## no critic (ProhibitUnusedPrivateSubroutines)
# override call from within DBIx::Class::InflateColumn::DateTime
sub _inflate_to_datetime {
my ($self, @args) = @_;
lib/BPM/Engine/Store/Result/Activity.pm view on Meta::CPAN
package BPM::Engine::Store::Result::Activity;
BEGIN {
$BPM::Engine::Store::Result::Activity::VERSION = '0.01';
$BPM::Engine::Store::Result::Activity::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
extends qw/BPM::Engine::Store::Result/;
with qw/BPM::Engine::Store::ResultBase::Activity
BPM::Engine::Store::ResultRole::WithAssignments/;
__PACKAGE__->load_components(qw/ InflateColumn::Serializer /);
__PACKAGE__->table('wfd_activity');
__PACKAGE__->add_columns(
activity_id => {
data_type => 'INT',
lib/BPM/Engine/Store/Result/ActivityInstance.pm view on Meta::CPAN
package BPM::Engine::Store::Result::ActivityInstance;
BEGIN {
$BPM::Engine::Store::Result::ActivityInstance::VERSION = '0.01';
$BPM::Engine::Store::Result::ActivityInstance::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
use DateTime;
BEGIN {
extends qw/BPM::Engine::Store::Result/;
with qw/BPM::Engine::Store::ResultBase::ActivityInstance
BPM::Engine::Store::ResultRole::ActivityInstanceJoin
BPM::Engine::Store::ResultRole::WithAttributes/;
}
lib/BPM/Engine/Store/Result/ActivityInstanceAttribute.pm view on Meta::CPAN
package BPM::Engine::Store::Result::ActivityInstanceAttribute;
BEGIN {
$BPM::Engine::Store::Result::ActivityInstanceAttribute::VERSION = '0.01';
$BPM::Engine::Store::Result::ActivityInstanceAttribute::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
extends qw/BPM::Engine::Store::Result/;
__PACKAGE__->load_components(qw/ Core /);
__PACKAGE__->table('wfe_activity_instance_attr');
__PACKAGE__->add_columns(
activity_instance_id => {
data_type => 'INT',
is_nullable => 0,
size => 11,
lib/BPM/Engine/Store/Result/ActivityInstanceState.pm view on Meta::CPAN
package BPM::Engine::Store::Result::ActivityInstanceState;
BEGIN {
$BPM::Engine::Store::Result::ActivityInstanceState::VERSION = '0.01';
$BPM::Engine::Store::Result::ActivityInstanceState::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
use MooseX::NonMoose;
extends qw/DBIx::Class::Core/;
with qw/Class::Workflow::Instance/;
__PACKAGE__->load_components(qw/TimeStamp/);
__PACKAGE__->table('wfe_activity_instance_journal');
__PACKAGE__->add_columns(
event_id => {
data_type => 'INT',
lib/BPM/Engine/Store/Result/ActivityTask.pm view on Meta::CPAN
package BPM::Engine::Store::Result::ActivityTask;
BEGIN {
$BPM::Engine::Store::Result::ActivityTask::VERSION = '0.01';
$BPM::Engine::Store::Result::ActivityTask::AUTHORITY = 'cpan:SITETECH';
}
use Moose;
use MooseX::NonMoose;
use namespace::autoclean;
extends 'DBIx::Class::Core';
__PACKAGE__->load_components(qw/ InflateColumn::Serializer /);
__PACKAGE__->table('wfd_activity_task');
__PACKAGE__->add_columns(
task_id => {
data_type => 'INT',
is_auto_increment => 1,
is_nullable => 0,
extras => { unsigned => 1 }
lib/BPM/Engine/Store/Result/Process.pm view on Meta::CPAN
package BPM::Engine::Store::Result::Process;
BEGIN {
$BPM::Engine::Store::Result::Process::VERSION = '0.01';
$BPM::Engine::Store::Result::Process::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
extends qw/BPM::Engine::Store::Result/;
with qw/BPM::Engine::Store::ResultBase::Process
BPM::Engine::Store::ResultRole::WithAssignments
/;
__PACKAGE__->load_components(qw/
InflateColumn::DateTime InflateColumn::Serializer UUIDColumns
/);
lib/BPM/Engine/Store/Result/ProcessInstance.pm view on Meta::CPAN
package BPM::Engine::Store::Result::ProcessInstance;
BEGIN {
$BPM::Engine::Store::Result::ProcessInstance::VERSION = '0.01';
$BPM::Engine::Store::Result::ProcessInstance::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
extends qw/BPM::Engine::Store::Result/;
with qw/BPM::Engine::Store::ResultBase::ProcessInstance
BPM::Engine::Store::ResultRole::WithAttributes/;
use Silly::Werder;
my $WORDGEN = Silly::Werder->new();
__PACKAGE__->load_components(qw/TimeStamp DynamicDefault/);
lib/BPM/Engine/Store/Result/ProcessInstanceAttribute.pm view on Meta::CPAN
package BPM::Engine::Store::Result::ProcessInstanceAttribute;
BEGIN {
$BPM::Engine::Store::Result::ProcessInstanceAttribute::VERSION = '0.01';
$BPM::Engine::Store::Result::ProcessInstanceAttribute::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
use BPM::Engine::Exceptions qw/throw_abstract/;
extends qw/BPM::Engine::Store::Result/;
__PACKAGE__->load_components(qw/InflateColumn::Serializer/);
__PACKAGE__->table('wfe_process_instance_attr');
__PACKAGE__->add_columns(
process_instance_id => {
data_type => 'INT',
is_nullable => 0,
lib/BPM/Engine/Store/Result/ProcessInstanceState.pm view on Meta::CPAN
package BPM::Engine::Store::Result::ProcessInstanceState;
BEGIN {
$BPM::Engine::Store::Result::ProcessInstanceState::VERSION = '0.01';
$BPM::Engine::Store::Result::ProcessInstanceState::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
use MooseX::NonMoose;
extends qw/DBIx::Class::Core/;
with qw/Class::Workflow::Instance/;
__PACKAGE__->load_components(qw/TimeStamp/);
__PACKAGE__->table('wfe_process_instance_journal');
__PACKAGE__->add_columns(
event_id => {
data_type => 'INT',
lib/BPM/Engine/Store/Result/Transition.pm view on Meta::CPAN
package BPM::Engine::Store::Result::Transition;
BEGIN {
$BPM::Engine::Store::Result::Transition::VERSION = '0.01';
$BPM::Engine::Store::Result::Transition::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
extends qw/BPM::Engine::Store::Result/;
with qw/
BPM::Engine::Store::ResultBase::ProcessTransition
BPM::Engine::Store::ResultRole::WithAssignments
/;
#__PACKAGE__->load_components(qw/ Core /);
__PACKAGE__->table('wfd_transition');
__PACKAGE__->add_columns(
lib/BPM/Engine/Store/Result/WorkItem.pm view on Meta::CPAN
package BPM::Engine::Store::Result::WorkItem;
BEGIN {
$BPM::Engine::Store::Result::WorkItem::VERSION = '0.01';
$BPM::Engine::Store::Result::WorkItem::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose;
extends qw/BPM::Engine::Store::Result/;
__PACKAGE__->load_components(qw/ Core /);
__PACKAGE__->table('wfe_workitem');
__PACKAGE__->add_columns(
workitem_id => {
data_type => 'INT',
is_auto_increment => 1,
is_nullable => 0,
lib/BPM/Engine/Store/ResultBase/Activity.pm view on Meta::CPAN
package BPM::Engine::Store::ResultBase::Activity;
BEGIN {
$BPM::Engine::Store::ResultBase::Activity::VERSION = '0.01';
$BPM::Engine::Store::ResultBase::Activity::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
with qw/
Class::Workflow::State
Class::Workflow::State::TransitionHash
Class::Workflow::State::AcceptHooks
Class::Workflow::State::AutoApply
/;
sub new_instance {
my ($self, $args) = @_;
lib/BPM/Engine/Store/ResultBase/ActivityInstance.pm view on Meta::CPAN
package BPM::Engine::Store::ResultBase::ActivityInstance;
BEGIN {
$BPM::Engine::Store::ResultBase::ActivityInstance::VERSION = '0.01';
$BPM::Engine::Store::ResultBase::ActivityInstance::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
use BPM::Engine::Util::YAMLWorkflowLoader qw/load_workflow_from_yaml/;
with 'BPM::Engine::Store::ResultRole::WithWorkflow';
my $W = undef;
sub get_workflow {
unless($W) {
my $yaml = do { local $/ = undef; <DATA> };
$W = load_workflow_from_yaml($yaml);
lib/BPM/Engine/Store/ResultBase/Process.pm view on Meta::CPAN
package BPM::Engine::Store::ResultBase::Process;
BEGIN {
$BPM::Engine::Store::ResultBase::Process::VERSION = '0.01';
$BPM::Engine::Store::ResultBase::Process::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
sub new_instance {
my ($self, $attrs) = @_;
$attrs ||= {};
my $guard = $self->result_source->schema->txn_scope_guard;
my $process_instance = $self->add_to_instances($attrs);
lib/BPM/Engine/Store/ResultBase/ProcessInstance.pm view on Meta::CPAN
package BPM::Engine::Store::ResultBase::ProcessInstance;
BEGIN {
$BPM::Engine::Store::ResultBase::ProcessInstance::VERSION = '0.01';
$BPM::Engine::Store::ResultBase::ProcessInstance::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
use BPM::Engine::Util::YAMLWorkflowLoader qw/load_workflow_from_yaml/;
with 'BPM::Engine::Store::ResultRole::WithWorkflow';
my $W = undef;
sub get_workflow {
unless($W) {
my $yaml = do { local $/ = undef; <DATA> };
$W = load_workflow_from_yaml($yaml);
lib/BPM/Engine/Store/ResultBase/ProcessTransition.pm view on Meta::CPAN
package BPM::Engine::Store::ResultBase::ProcessTransition;
BEGIN {
$BPM::Engine::Store::ResultBase::ProcessTransition::VERSION = '0.01';
$BPM::Engine::Store::ResultBase::ProcessTransition::AUTHORITY = 'cpan:SITETECH';
}
use namespace::autoclean;
use Moose::Role;
with 'BPM::Engine::Store::ResultRole::TransitionCondition';
has to_activity => (
does => "Class::Workflow::State",
is => "rw",
required => 0,
);
view all matches for this distributionview release on metacpan - search on metacpan