view release on metacpan or search on metacpan
lib/Activiti/Rest/Client.pm view on Meta::CPAN
package Activiti::Rest::Client;
use Activiti::Sane;
use Carp qw(confess);
use Moo;
use Data::Util qw(:check :validate);
use JSON qw(decode_json encode_json);
use URI::Escape qw(uri_escape);
use Activiti::Rest::Response;
our $VERSION = "0.1259";
#see: http://www.activiti.org/userguide
=head1 NAME
Activiti::Rest::Client - Low level client for the Activiti Rest API
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET repository/deployments/:deploymentId
=cut
sub deployment {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/repository/deployments/".uri_escape($args{deploymentId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 deployment_resources
List resources in a deployment
parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET repository/deployments/:deploymentId/resources
=cut
sub deployment_resources {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/repository/deployments/".uri_escape($args{deploymentId})."/resources",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 deployment_resource
Get a deployment resource
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET repository/deployments/:deploymentId/resources/:resourceId
=cut
sub deployment_resource {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/repository/deployments/".uri_escape($args{deploymentId})."/resources/".uri_escape($args{resourceId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 process_definitions
List of process definitions
parameters: see user guide (http://www.activiti.org/userguide/index.html#N13520)
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET repository/process-definitions/:processDefinitionId
=cut
sub process_definition {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/repository/process-definitions/".uri_escape($args{processDefinitionId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 process_definition_resource_data
Get a process definition resource content
parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET repository/process-definitions/:processDefinitionId/resourcedata
=cut
sub process_definition_resource_data {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/repository/process-definitions/".uri_escape($args{processDefinitionId})."/resourcedata",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 process_definition_model
Get a process definition BPMN model
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET repository/process-definitions/:processDefinitionId/model
=cut
sub process_definition_model {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/repository/process-definitions/".uri_escape($args{processDefinitionId})."/model",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 process_definition_identity_links
Get all candidate starters for a process-definition
parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
processDefinitionId
equal to rest call:
GET repository/process-definitions/:processDefinitionId/identitylinks
=cut
sub process_definition_identity_links {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/repository/process-definitions/".uri_escape($args{processDefinitionId})."/identitylinks",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 process_definition_identity_link
Get a candidate starter from a process definition
parameters: (see http://www.activiti.org/userguide/index.html#N138A9)
lib/Activiti/Rest/Client.pm view on Meta::CPAN
identityId
equal to rest call:
GET repository/process-definitions/:processDefinitionId/identitylinks/:family/:identityId
=cut
sub process_definition_identity_link {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/repository/process-definitions/".uri_escape($args{processDefinitionId})."/identitylinks/".uri_escape($args{family})."/".uri_escape($args{identityId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 models
Get a list of models
Parameters: see user guide (http://www.activiti.org/userguide/index.html#N1390A)
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET repository/models/:modelId
=cut
sub model {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/repository/models/".uri_escape($args{modelId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 process_instances
List of process instances
Parameters: see user guide (http://www.activiti.org/userguide/index.html#restProcessInstancesGet)
lib/Activiti/Rest/Client.pm view on Meta::CPAN
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);
}
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET runtime/process-instances/:processInstanceId/identitylinks
=cut
sub process_instance_identitylinks {
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:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
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:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
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
lib/Activiti/Rest/Client.pm view on Meta::CPAN
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)
lib/Activiti/Rest/Client.pm view on Meta::CPAN
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
lib/Activiti/Rest/Client.pm view on Meta::CPAN
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:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
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:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET repository/executions/:executionId/variables
=cut
sub execution_variables {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/executions/".uri_escape($args{executionId})."/variables",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 tasks
List of tasks
Parameters: see user guide (http://www.activiti.org/userguide/index.html#restTasksGet)
lib/Activiti/Rest/Client.pm view on Meta::CPAN
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:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
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
lib/Activiti/Rest/Client.pm view on Meta::CPAN
=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:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
=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,
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task_identity_links
Get all identity links for a task
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET runtime/tasks/:taskId/identitylinks
=cut
sub task_identity_links {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId})."/identitylinks",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task_identity_links_users
=head2 task_identity_links_groups
Get all identity links for a task for either groups or users
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET runtime/tasks/:taskId/identitylinks/(users|groups)
=cut
sub task_identity_links_users {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId})."/identitylinks/users",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub task_identity_links_groups {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId})."/identitylinks/groups",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub task_identity_link {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId})."/identitylinks/".uri_escape($args{family})."/".uri_escape($args{identityId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task_comments
Get all comments on a task
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET runtime/tasks/:taskId/comments
=cut
sub task_comments {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId})."/comments",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task_comment
Get a comments on a task
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET runtime/tasks/:taskId/comments/:commentId
=cut
sub task_comment {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId})."/comments/".uri_escape($args{commentId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task_events
Get all events for a task
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET runtime/tasks/:taskId/events
=cut
sub task_events {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId})."/events",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task_event
Get an event for a task
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET runtime/tasks/:taskId/events/:eventId
=cut
sub task_event {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId})."/events/".uri_escape($args{eventId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task_attachments
Get all attachments on a task
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET runtime/tasks/:taskId/attachments
=cut
sub task_attachments {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId})."/attachments",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task_attachment
Get an attachment on a task
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET runtime/tasks/:taskId/comments/:attachmentId
=cut
sub task_attachment {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId})."/attachments/".uri_escape($args{attachmentId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 task_attachment_content
Get the content for an attachment on a task
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET runtime/tasks/:taskId/attachments/:attachmentId/content
=cut
sub task_attachment_content {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/runtime/tasks/".uri_escape($args{taskId})."/attachments/".uri_escape($args{attachmentId})."/content",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 historic_process_instances
List of historic process instances
Parameters: see user guide (http://www.activiti.org/userguide/index.html#restHistoricProcessInstancesGet)
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET history/historic-process-instances/:processInstanceId
=cut
sub historic_process_instance {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/history/historic-process-instances/".uri_escape($args{processInstanceId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 delete_historic_process_instance
Delete a historic process instance
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
DELETE history/historic-process-instances/:processInstanceId
=cut
sub delete_historic_process_instance {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/history/historic-process-instances/".uri_escape($args{processInstanceId}),
params => {},
method => "DELETE"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 historic_process_instance_comments
Get all comments on a historic process instance
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET history/historic-process-instances/:processInstanceId/comments
=cut
sub historic_process_instance_comments {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/history/historic-process-instances/".uri_escape($args{processInstanceId})."/comments",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 historic_process_instance_comment
Get a comment on a historic process instance
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET history/historic-process-instances/:processInstanceId/comments/:commentId
=cut
sub historic_process_instance_comment {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/history/historic-process-instances/".uri_escape($args{processInstanceId})."/comments/".uri_escape($args{commentId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 historic_task_instances
Get historic task instances
Parameters: see user guide (http://www.activiti.org/userguide/index.html#restHistoricTaskInstancesGet)
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET history/historic-task-instances/:taskId
=cut
sub historic_task_instance {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/history/historic-task-instances/".uri_escape($args{taskInstanceId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head2 historic_task_instance_identity_links
Get the identity links of a historic task instance
Parameters:
lib/Activiti/Rest/Client.pm view on Meta::CPAN
equal to rest call:
GET history/historic-task-instances/:taskId/identitylinks
=cut
sub historic_task_instance_identity_links {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/history/historic-task-instances/".uri_escape($args{taskInstanceId})."/identitylinks",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub historic_activity_instances {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/history/historic-activity-instances",
params => \%args,
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub historic_activity_instance {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/history/historic-activity-instances/".uri_escape($args{activityInstanceId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub historic_detail {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/history/historic-detail",
params => \%args,
lib/Activiti/Rest/Client.pm view on Meta::CPAN
my $res = $self->ua->request(
path => "/identity/users",
params => \%args,
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub user {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/identity/users/".uri_escape($args{userId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub user_info {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/identity/users/".uri_escape($args{userId})."/info",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub groups {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/identity/groups",
params => \%args,
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub group {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/identity/groups/".uri_escape($args{groupId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
#forms
sub form {
my($self,%args)=@_;
my $res = $self->ua->request(
lib/Activiti/Rest/Client.pm view on Meta::CPAN
my $res = $self->ua->request(
path => "/management/jobs",
params => \%args,
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub job {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/management/jobs/".uri_escape($args{jobId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub job_exception_stacktrace {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/management/jobs/".uri_escape($args{jobId})."/exception-stacktrace",
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub delete_job {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/management/jobs/".uri_escape($args{jobId}),
params => {},
method => "DELETE"
);
Activiti::Rest::Response->from_http_response($res);
}
sub execute_job {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/management/jobs/".uri_escape($args{jobId}),
params => {},
method => "POST",
headers => {
'Content-Type' => "application/json",
Content => encode_json({ action => "execute" })
}
);
Activiti::Rest::Response->from_http_response($res);
}
lib/Activiti/Rest/Client.pm view on Meta::CPAN
path => "/management/deadletter-jobs",
params => \%args,
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub deadletter_job {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/management/deadletter-jobs/".uri_escape($args{jobId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
#always plain text, no matter what. Header "Content-Type" not be trusted.
sub deadletter_job_exception_stacktrace {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/management/deadletter-jobs/".uri_escape($args{jobId})."/exception-stacktrace",
params => {},
method => "GET",
headers => {
"Accept" => "text/plain"
}
);
Activiti::Rest::Response->from_http_response($res);
}
sub delete_deadletter_job {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/management/deadletter-jobs/".uri_escape($args{jobId}),
params => {},
method => "DELETE"
);
Activiti::Rest::Response->from_http_response($res);
}
sub execute_deadletter_job {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/management/deadletter-jobs/".uri_escape($args{jobId}),
params => {},
method => "POST",
headers => {
'Content-Type' => "application/json",
Content => encode_json({ action => "move" })
}
);
Activiti::Rest::Response->from_http_response($res);
}
lib/Activiti/Rest/Client.pm view on Meta::CPAN
path => "/management/timer-jobs",
params => \%args,
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub timer_job {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/management/timer-jobs/".uri_escape($args{jobId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub execute_timer_job {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/management/timer-jobs/".uri_escape($args{jobId}),
params => {},
method => "POST",
headers => {
'Content-Type' => "application/json",
Content => encode_json({ action => "move" })
}
);
Activiti::Rest::Response->from_http_response($res);
}
lib/Activiti/Rest/Client.pm view on Meta::CPAN
path => "/management/suspended-jobs",
params => \%args,
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
sub suspended_job {
my($self,%args)=@_;
my $res = $self->ua->request(
path => "/management/suspended-jobs/".uri_escape($args{jobId}),
params => {},
method => "GET"
);
Activiti::Rest::Response->from_http_response($res);
}
=head1 LICENSE AND COPYRIGHT
This program is free software; you can redistribute it and/or modify it
under the terms of either: the GNU General Public License as published
lib/Activiti/Rest/UserAgent/LWP.pm view on Meta::CPAN
package Activiti::Rest::UserAgent::LWP;
use Activiti::Sane;
use Carp qw(confess);
use Moo;
use LWP::UserAgent;
use URI::Escape qw(uri_escape);
use Data::Util qw(:check :validate);
with qw(Activiti::Rest::UserAgent);
has ua => (
is => 'ro',
lazy => 1,
builder => '_build_ua'
);
sub _build_ua {
lib/Activiti/Rest/UserAgent/LWP.pm view on Meta::CPAN
@headers = @{ _construct_params_as_array($headers) } if is_hash_ref($headers);
push @args,@headers;
$self->ua->put(@args);
}
sub _construct_query {
my $data = shift;
my @parts = ();
for my $key(keys %$data){
if(is_array_ref($data->{$key})){
for my $val(@{ $data->{$key} }){
push @parts,uri_escape($key)."=".uri_escape($val // "");
}
}else{
push @parts,uri_escape($key)."=".uri_escape($data->{$key} // "");
}
}
join("&",@parts);
}
sub _construct_params_as_array {
my $params = shift;
my @array = ();
for my $key(keys %$params){
if(is_array_ref($params->{$key})){
for my $val(@{ $params->{$key} }){