Activiti-Rest-Client
view release on metacpan or search on metacpan
lib/Activiti/Rest/Client.pm view on Meta::CPAN
List of process instances
Parameters: see user guide (http://www.activiti.org/userguide/index.html#restProcessInstancesGet)
equal to rest call:
GET runtime/process-instances
=cut
sub process_instances {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/process-instances",
params => \%args,
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 process_instance
Get a process instance
Parameters:
processInstanceId
equal to rest call:
GET runtime/process-instances/:processInstanceId
=cut
sub process_instance {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/process-instances/".uri_escape($args{processInstanceId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub delete_process_instance {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/process-instances/".uri_escape($args{processInstanceId}),
params => { deleteReason => $args{deleteReason} },
method => "DELETE"
);
Activiti::Rest::Response->from_http_response($res);
}
sub suspend_process_instance {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/process-instances/".uri_escape($args{processInstanceId}),
params => {},
headers => {
'Content-Type' => "application/json",
Content => encode_json({ action => "suspend" })
},
method => "PUT"
);
Activiti::Rest::Response->from_http_response($res);
}
sub activate_process_instance {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/process-instances/".uri_escape($args{processInstanceId}),
params => {},
headers => {
'Content-Type' => "application/json",
Content => encode_json({ action => "activate" })
},
method => "PUT"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 query_process_instances
Query process instances
Parameters: see user guide (http://www.activiti.org/userguide/index.html#N13E2A)
equal to rest call:
POST runtime/process-instances
=cut
sub query_process_instances {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/query/process-instances",
params => {},
method => "POST",
headers => {
'Content-Type' => "application/json",
Content => encode_json($args{content})
}
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 start_process_instance
Start a process instance
Parameters: see user guide (http://www.activiti.org/userguide/index.html#N13CE6)
equal to rest call:
POST runtime/process-instances
=cut
sub start_process_instance {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/process-instances",
params => {},
method => "POST",
headers => {
'Content-Type' => "application/json",
Content => encode_json($args{content})
}
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 process_instance_identitylinks
Get involved people for process instance
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/process-instances/".uri_escape($args{processInstanceId})."/identitylinks",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 process_instance_variables
List of variables for a process instance
Parameters:
processInstanceId
equal to rest call:
GET runtime/process-instances/:processInstanceId/variables
=cut
sub process_instance_variables {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/process-instances/".uri_escape($args{processInstanceId})."/variables",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 process_instance_variable
Get a variable for a process instance
Parameters:
processInstanceId
variableName
equal to rest call:
GET runtime/process-instances/:processInstanceId/variables/:variableName
=cut
sub process_instance_variable {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/process-instances/".uri_escape($args{processInstanceId})."/variables/".uri_escape($args{variableName}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub update_process_instance_variable {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/process-instances/".uri_escape($args{processInstanceId})."/variables/".uri_escape($args{variableName}),
params => {},
method => "PUT",
headers => {
'Content-Type' => "application/json",
Content => encode_json($args{content})
}
);
Activiti::Rest::Response->from_http_response($res);
}
#DEPRECATED!
sub signal_process_instance {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/process-instance/".uri_escape($args{processInstanceId})."/signal",
params => {},
method => "POST",
headers => {
'Content-Type' => "application/json",
Content => encode_json($args{content})
}
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 process_instance_diagram
Get a diagram for a process instance
Parameters:
processInstanceId
equal to rest call:
GET runtime/process-instances/:processInstanceId/diagram
when successfull the "content_type" of the response is "image/png" and "content" is equal to the image data
=cut
#return: png image data
sub process_instance_diagram {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/process-instances/".uri_escape($args{processInstanceId})."/diagram",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 executions
List of executions
Parameters: see user guide (http://www.activiti.org/userguide/index.html#restExecutionsGet)
equal to rest call:
GET repository/executions
=cut
sub executions {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/executions",
params => \%args,
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub query_executions {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/query/executions",
params => {},
method => "POST",
headers => {
'Content-Type' => "application/json",
Content => encode_json($args{content})
}
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 query_executions
Query executions
Parameters in request body (i.e. 'content' hash)
equal to rest call:
POST query/executions
=cut
sub signal_execution {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/executions/".uri_escape($args{executionId}),
params => {},
method => "PUT",
headers => {
'Content-Type' => "application/json",
Content => encode_json($args{content})
}
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 signal_execution
send signal to execution
equal to rest call:
PUT runtime/executions/{executionId}
=cut
=head2 execution
Get an execution
Parameters:
executionId
equal to rest call:
GET repository/executions/:executionId
=cut
sub execution {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/executions/".uri_escape($args{executionId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 execution_activities
Get active activities in an execution
Parameters:
executionId
equal to rest call:
GET repository/executions/:executionId/activities
=cut
sub execution_activities {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/executions/".uri_escape($args{executionId})."/activities",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 execution_variables
List of variables for an execution
Parameters:
executionId
equal to rest call:
GET repository/executions/:executionId/variables
lib/Activiti/Rest/Client.pm view on Meta::CPAN
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/query/tasks",
params => {},
method => "POST",
headers => {
'Content-Type' => "application/json",
Content => encode_json($args{content})
}
);
Activiti::Rest::Response->from_http_response($res);
}
sub query_historic_task_instances {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/query/historic-task-instances",
params => {},
method => "POST",
headers => {
'Content-Type' => "application/json",
Content => encode_json($args{content})
}
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task
Get a task
Parameters:
taskId
equal to rest call:
GET runtime/tasks/:taskId
=cut
sub task {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 update_task
Update a task
Parameters:
taskId
Body parameters: see user guide (http://www.activiti.org/userguide/index.html#N148FA)
equal to rest call:
PUT runtime/tasks/:taskId
=cut
sub update_task {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId}),
params => {},
method => "PUT",
headers => {
'Content-Type' => "application/json",
Content => encode_json($args{content})
}
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task_variables
Get all variables for a task
Parameters:
taskId
scope (global|local)
equal to rest call:
GET runtime/tasks/:taskId/variables?scope=:scope
=cut
sub task_variables {
my($self,%args)=@_;
my $taskId = delete $args{taskId};
my $scope = delete $args{scope};
my $params = {};
$params->{scope} = $scope if is_string($scope);
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($taskId)."/variables",
params => $params,
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task_variable
Get one variable for a task
Parameters:
taskId
scope (global|local)
equal to rest call:
GET runtime/tasks/:taskId/variables/:variableName?scope=:scope
=cut
sub task_variable {
my($self,%args)=@_;
my $taskId = delete $args{taskId};
my $variableName = delete $args{variableName};
my $scope = delete $args{scope};
my $params = {};
$params->{scope} = $scope if is_string($scope);
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($taskId)."/variables/$variableName",
params => $params,
( run in 0.524 second using v1.01-cache-2.11-cpan-13bb782fe5a )