Activiti-Rest-Client

 view release on metacpan or  search on metacpan

MANIFEST  view on Meta::CPAN

cpanfile
dist.ini
lib/Activiti/Rest/Client.pm
lib/Activiti/Rest/Error.pm
lib/Activiti/Rest/Response.pm
lib/Activiti/Rest/UserAgent.pm
lib/Activiti/Rest/UserAgent/LWP.pm
lib/Activiti/Sane.pm
t/00-load.t
t/author-pod-syntax.t
test/delete_process_instance.pl
test/deployments.pl
test/form.pl
test/models.pl
test/process_definitions.pl
test/process_definitions_ids.pl
test/process_definitions_resourcedata.pl
test/query_process_instances.pl
test/query_tasks.pl
test/tasks.pl
test/users.pl

README  view on Meta::CPAN

PROJECT

    see http://www.activiti.org/userguide

SYNOPSIS

      my $client = Activiti::Rest::Client->new(
        url => 'http://kermit:kermit@localhost:8080/activiti-rest/service'
      );
    
      my $res = $client->process_definitions;
    
      die("no parsed content") unless $res->has_parsed_content;
    
      my $pdefs = $res->parsed_content;
    
      my @ids = map { $_->{id} } @{ $pdefs->{data} };
      for my $id(@ids){
        print Dumper($client->process_definition(processDefinitionId => $id)->parsed_content);
      }

CONSTRUCTOR parameters

 url

      base url of the activiti rest api
      activiti-rest uses basic http authentication, so username and password should be included in the url
    
      e.g.

README  view on Meta::CPAN

    
        deploymentId
        resourceId
    
      other parameters: see user guide (http://www.activiti.org/userguide/index.html#N1345B)
    
      equal to rest call:
    
        GET repository/deployments/:deploymentId/resources/:resourceId

 process_definitions

      List of process definitions
    
      parameters: see user guide (http://www.activiti.org/userguide/index.html#N13520)
    
      equal to rest call:
    
        GET repository/process-definitions

 process_definition

      Get a process definition
    
      parameters:
    
        processDefinitionId
    
      other parameters: see user guide (http://www.activiti.org/userguide/index.html#N13605)
    
      equal to rest call:
    
        GET repository/process-definitions/:processDefinitionId

 process_definition_resource_data

      Get a process definition resource content
    
      parameters:
    
        processDefinitionId
    
      equal to rest call:
    
        GET repository/process-definitions/:processDefinitionId/resourcedata

 process_definition_model

      Get a process definition BPMN model
    
      parameters:
    
        processDefinitionId
    
      equal to rest call:
    
        GET repository/process-definitions/:processDefinitionId/model

 process_definition_identity_links

      Get all candidate starters for a process-definition
    
      parameters:
    
        processDefinitionId
    
      equal to rest call:
    
        GET repository/process-definitions/:processDefinitionId/identitylinks

 process_definition_identity_link

      Get a candidate starter from a process definition
    
      parameters: (see http://www.activiti.org/userguide/index.html#N138A9)
    
        processDefinitionId
        family
        identityId
    
      equal to rest call:
    
        GET repository/process-definitions/:processDefinitionId/identitylinks/:family/:identityId

 models

      Get a list of models
    
      Parameters: see user guide (http://www.activiti.org/userguide/index.html#N1390A)
    
      equal to rest call:
    
        GET repository/models

README  view on Meta::CPAN

      Get a model
    
      Parameters:
    
        modelId
    
      equal to rest call:
    
        GET repository/models/:modelId

 process_instances

      List of process instances
    
      Parameters: see user guide (http://www.activiti.org/userguide/index.html#restProcessInstancesGet)
    
      equal to rest call:
    
        GET runtime/process-instances

 process_instance

      Get a process instance
    
      Parameters:
    
        processInstanceId
    
      equal to rest call:
    
        GET runtime/process-instances/:processInstanceId

 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

 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

 process_instance_identitylinks

      Get involved people for process instance
    
      Parameters:
    
        processInstanceId
    
      equal to rest call:
    
        GET runtime/process-instances/:processInstanceId/identitylinks

 process_instance_variables

      List of variables for a process instance
    
      Parameters:
    
        processInstanceId
    
      equal to rest call:
    
        GET runtime/process-instances/:processInstanceId/variables

 process_instance_variable

      Get a variable for a process instance
    
      Parameters:
    
        processInstanceId
        variableName
    
      equal to rest call:
    
        GET runtime/process-instances/:processInstanceId/variables/:variableName

 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

 executions

      List of executions
    
      Parameters: see user guide (http://www.activiti.org/userguide/index.html#restExecutionsGet)
    
      equal to rest call:

README  view on Meta::CPAN

    
      Parameters:
    
        taskId
        attachmentId
    
      equal to rest call:
    
        GET runtime/tasks/:taskId/attachments/:attachmentId/content

 historic_process_instances

      List of historic process instances
    
      Parameters: see user guide (http://www.activiti.org/userguide/index.html#restHistoricProcessInstancesGet)
    
      equal to rest call:
    
        GET history/historic-process-instances

 query_historic_process_instances

      Query for historic process instances
    
      Parameters: see user guide (http://www.activiti.org/userguide/index.html#N153C2)
    
      equal to rest call:
    
        POST history/historic-process-instances

 historic_process_instance

      Get a historic process instance
    
      Parameters:
    
        processInstanceId
    
      equal to rest call:
    
        GET history/historic-process-instances/:processInstanceId

 delete_historic_process_instance

      Delete a historic process instance
    
      Parameters:
    
        processInstanceId
    
      equal to rest call:
    
        DELETE history/historic-process-instances/:processInstanceId

 historic_process_instance_comments

      Get all comments on a historic process instance
    
      Parameters:
    
        processInstanceId
    
      equal to rest call:
    
        GET history/historic-process-instances/:processInstanceId/comments

 historic_process_instance_comment

      Get a comment on a historic process instance
    
      Parameters:
    
        processInstanceId
        commentId
    
      equal to rest call:
    
        GET history/historic-process-instances/:processInstanceId/comments/:commentId

 historic_task_instances

      Get historic task instances
    
      Parameters: see user guide (http://www.activiti.org/userguide/index.html#restHistoricTaskInstancesGet)
    
      equal to rest call:
    
        GET history/historic-task-instances

 historic_variable_instances

      Get historic variable instances, either from tasks or process instances
    
      Parameters: see user guide (http://www.activiti.org/userguide/index.html#restHistoricVariableInstancesGet)
    
      equal to rest call:
    
        GET history/historic-variable-instances

 query_historic_variable_instances

      Query historic variable instances, either from tasks or process instances
    
      Parameters: see user guide (http://www.activiti.org/userguide/index.html#N15B00)
    
      equal to rest call:
    
        POST query/historic-variable-instances

 historic_task_instance

      Get a historic task instance

lib/Activiti/Rest/Client.pm  view on Meta::CPAN

=head1 PROJECT

see http://www.activiti.org/userguide

=head1 SYNOPSIS

  my $client = Activiti::Rest::Client->new(
    url => 'http://kermit:kermit@localhost:8080/activiti-rest/service'
  );

  my $res = $client->process_definitions;

  die("no parsed content") unless $res->has_parsed_content;

  my $pdefs = $res->parsed_content;

  my @ids = map { $_->{id} } @{ $pdefs->{data} };
  for my $id(@ids){
    print Dumper($client->process_definition(processDefinitionId => $id)->parsed_content);
  }

=head1 CONSTRUCTOR parameters

=head2 url

  base url of the activiti rest api
  activiti-rest uses basic http authentication, so username and password should be included in the url

  e.g.

lib/Activiti/Rest/Client.pm  view on Meta::CPAN


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)

  equal to rest call:

    GET repository/process-definitions

=cut

sub process_definitions {
  my($self,%args)=@_;
  my $res = $self->ua->request(
    path => "/repository/process-definitions",
    params => \%args,
    method => "GET"
  );
  Activiti::Rest::Response->from_http_response($res);
}
=head2 process_definition

  Get a process definition

  parameters:

    processDefinitionId

  other parameters: see user guide (http://www.activiti.org/userguide/index.html#N13605)

  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:

    processDefinitionId

  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

  parameters:

    processDefinitionId

  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:

    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)

    processDefinitionId
    family
    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


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)

  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:

    processInstanceId

  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:

    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)

lib/Activiti/Rest/Client.pm  view on Meta::CPAN


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)

  equal to rest call:

    GET history/historic-process-instances

=cut

sub historic_process_instances {
  my($self,%args)=@_;
  my $res = $self->ua->request(
    path => "/history/historic-process-instances",
    params => \%args,
    method => "GET"
  );
  Activiti::Rest::Response->from_http_response($res);
}
=head2 query_historic_process_instances

  Query for historic process instances

  Parameters: see user guide (http://www.activiti.org/userguide/index.html#N153C2)

  equal to rest call:

    POST history/historic-process-instances

=cut
sub query_historic_process_instances {
  my($self,%args)=@_;
  my $res = $self->ua->request(
    path => "/query/historic-process-instances",
    params => {},
    method => "POST",
    headers => {
      'Content-Type' => "application/json",
      Content => encode_json($args{content})
    }
  );
  Activiti::Rest::Response->from_http_response($res);
}
=head2 historic_process_instance

  Get a historic process instance

  Parameters:

    processInstanceId

  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:

    processInstanceId

  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:

    processInstanceId

  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:

    processInstanceId
    commentId

  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

  my($self,%args)=@_;
  my $res = $self->ua->request(
    path => "/history/historic-task-instances",
    params => \%args,
    method => "GET"
  );
  Activiti::Rest::Response->from_http_response($res);
}
=head2 historic_variable_instances

  Get historic variable instances, either from tasks or process instances

  Parameters: see user guide (http://www.activiti.org/userguide/index.html#restHistoricVariableInstancesGet)

  equal to rest call:

    GET history/historic-variable-instances

=cut

sub historic_variable_instances {
    my($self,%args) = @_;
    my $res = $self->ua->request(
        path => "/history/historic-variable-instances",
        params => \%args,
        method => "GET"
    );
    Activiti::Rest::Response->from_http_response($res);
}
=head2 query_historic_variable_instances

  Query historic variable instances, either from tasks or process instances

  Parameters: see user guide (http://www.activiti.org/userguide/index.html#N15B00)

  equal to rest call:

    POST query/historic-variable-instances

=cut

sub query_historic_variable_instances {

lib/Activiti/Rest/Response.pm  view on Meta::CPAN

        error_message => $exception,
        exception => $exception
    };


    #The operation failed. The operation requires an Authentication header to be set. If this was present in the request, the supplied credentials are not valid or the user is not authorized to perform this operation.
    if($code eq "401"){
      Activiti::Rest::Error::UnAuthorized->throw($args);
    }

    #The operation is forbidden and should not be re-attempted. This does not imply an issue with authentication not authorization, it's an operation that is not allowed. Example: deleting a task that is part of a running process is not allowed and w...
    elsif($code eq "403"){
      Activiti::Rest::Error::Forbidden->throw($args);
    }

    #The operation failed.The requested resource was not found.
    elsif($code eq "404"){
      Activiti::Rest::Error::NotFound->throw($args);
    }

    #The operation failed. The used method is not allowed for this resource. Eg. trying to update (PUT) a deployment-resource will result in a 405 status.

test/delete_process_instance.pl  view on Meta::CPAN

use lib "$FindBin::Bin/../lib";
use Activiti::Rest::Client;
use Data::Dumper;

binmode STDOUT,":utf8";

my $client = Activiti::Rest::Client->new(
  url => 'http://rest:rest@andric.ugent.be:8888/activiti-rest/service'
);

my $res = $client->delete_historic_process_instance(processInstanceId => 418);

print Dumper($res->parsed_content);

test/form.pl  view on Meta::CPAN

use lib "$FindBin::Bin/../lib";
use Activiti::Rest::Client;
use Data::Dumper;

binmode STDOUT,":utf8";

my $client = Activiti::Rest::Client->new(
  url => 'http://kermit:kermit@localhost:8080/activiti-rest/service'
);

my $form = $client->form(processDefinitionId => "vacationRequest:1:33")->parsed_content;
print Dumper($form);

test/process_definitions.pl  view on Meta::CPAN

use lib "$FindBin::Bin/../lib";
use Activiti::Rest::Client;
use Data::Dumper;

binmode STDOUT,":utf8";

my $client = Activiti::Rest::Client->new(
  url => 'http://kermit:kermit@localhost:8080/activiti-rest/service'
);

my $res = $client->process_definitions;

die("no parsed content") unless $res->has_parsed_content;

my $pdefs = $res->parsed_content;

my @ids = map { $_->{id} } @{ $pdefs->{data} };
for my $id(@ids){
  print Dumper($client->process_definition(processDefinitionId => $id)->parsed_content);
}

test/process_definitions_ids.pl  view on Meta::CPAN

use lib "$FindBin::Bin/../lib";
use Activiti::Rest::Client;
use Data::Dumper;

binmode STDOUT,":utf8";

my $client = Activiti::Rest::Client->new(
  url => 'http://kermit:kermit@localhost:8080/activiti-rest/service'
);

my $pdefs = $client->process_definitions->parsed_content;
print $_."\n" for map { $_->{id} } @{ $pdefs->{data} };

test/process_definitions_resourcedata.pl  view on Meta::CPAN

use lib "$FindBin::Bin/../lib";
use Activiti::Rest::Client;
use Data::Dumper;

binmode STDOUT,":utf8";

my $client = Activiti::Rest::Client->new(
  url => 'http://kermit:kermit@localhost:8080/activiti-rest/service'
);

my $pdefs = $client->process_definitions->parsed_content;
my @ids = map { $_->{id} } @{ $pdefs->{data} };
for my $id(@ids){
  print $client->process_definition_resource_data(processDefinitionId => $id)->parsed_content;
}

test/query_process_instances.pl  view on Meta::CPAN

use lib "$FindBin::Bin/../lib";
use Activiti::Rest::Client;
use Data::Dumper;

binmode STDOUT,":utf8";

my $client = Activiti::Rest::Client->new(
  url => 'http://rest:rest@andric.ugent.be:8888/activiti-rest/service'
);

my $res = $client->query_process_instances(
  content => {
    "processDefinitionKey" => "CustomerRequest",
    includeProcessVariables => "true",
    "variables" => [],
    processInstanceId => 418    
#    [
#      {
#          "name" => "lastname";
#          "value" => "Spillemaeckers";
#          "operation" => "equals";
#          "type" => "string"
#      }
#    ]
  }
);

test/query_tasks.pl  view on Meta::CPAN

use Data::Dumper;

binmode STDOUT,":utf8";

my $client = Activiti::Rest::Client->new(
  url => 'http://rest:rest@andric.ugent.be:8888/activiti-rest/service'
);

my $res = $client->query_tasks(
  content => {
#    "processDefinitionKey" => "CustomerRequest",
#    includeProcessVariables => "true",  
    candidateGroup => "LWBIB"
    #processInstanceId => 418    
#    processInstanceVariables => [
#      {
#          "name" => "library",
#          "value" => "BIB",
#          "operation" => "equals",
#          "type" => "string"
#      }
#    ]
  }
);



( run in 0.429 second using v1.01-cache-2.11-cpan-8d75d55dd25 )