File Coverage

blib/lib/PLS/Server/Request/CancelRequest.pm
Criterion Covered Total %
statement 20 20 100.0
branch 2 4 50.0
condition 1 3 33.3
subroutine 5 5 100.0
pod 0 1 0.0
total 28 33 84.8


line stmt bran cond sub pod time code
1              
2             use strict;
3 9     9   45 use warnings;
  9         18  
  9         223  
4 9     9   36  
  9         10  
  9         188  
5             use parent 'PLS::Server::Request';
6 9     9   29  
  9         17  
  9         116  
7             use Scalar::Util qw(blessed);
8 9     9   607  
  9         17  
  9         1618  
9             =head1 NAME
10              
11             PLS::Server::Request::CancelRequest
12              
13             =head1 DESCRIPTION
14              
15             This is a notification message from the client to the server requesting
16             that a request be cancelled.
17              
18             =cut
19              
20             {
21             my ($self, $server) = @_;
22              
23 1     1 0 7 my $id = $self->{params}{id};
24             return unless (exists $server->{running_futures}{$id});
25 1         7 my $request_to_cancel = $server->{running_futures}{$id};
26 1 50       9  
27 1         4 return unless (blessed($request_to_cancel) and $request_to_cancel->isa('Future'));
28             $request_to_cancel->cancel();
29 1 50 33     20  
30 1         20 delete $server->{running_futures}{$id};
31              
32 1         409 return;
33             } ## end sub service
34 1         4  
35             1;