File Coverage

blib/lib/API/Plesk/ServicePlan.pm
Criterion Covered Total %
statement 32 32 100.0
branch 4 8 50.0
condition 2 4 50.0
subroutine 8 8 100.0
pod 2 3 66.6
total 48 55 87.2


line stmt bran cond sub pod time code
1              
2             package API::Plesk::ServicePlan;
3              
4 1     1   2502 use strict;
  1         2  
  1         38  
5 1     1   5 use warnings;
  1         1  
  1         26  
6              
7 1     1   4 use Carp;
  1         2  
  1         68  
8 1     1   4 use Data::Dumper;
  1         7  
  1         44  
9 1     1   3 use base 'API::Plesk::Component';
  1         2  
  1         480  
10              
11             my @header_fields = qw(
12             owner-id
13             owner-login
14             );
15              
16             my @other_fields = qw(
17             mail
18             limits
19             log-rotation
20             preferences
21             hosting
22             performance
23             permissions
24             external-id
25             name
26             );
27              
28             my @main_fields = ( @header_fields, @other_fields );
29              
30             sub get {
31 1     1 1 3 my ($self, %params) = @_;
32 1         3 my $bulk_send = delete $params{bulk_send};
33              
34 1   50     4 my $filter = delete $params{filter} || '';
35 1         4 my $data = [
36             { filter => $filter },
37 1         3 @{ $self->sort_params( \%params, @main_fields ) },
38             ];
39              
40 1 50       9 return $bulk_send ? $data :
41             $self->plesk->send('service-plan', 'get', $data);
42             }
43              
44             sub set {
45 1     1 0 5 my ( $self, %params ) = @_;
46 1         4 my $bulk_send = delete $params{bulk_send};
47 1   50     4 my $filter = delete $params{filter} || '';
48            
49 1         7 $self->check_hosting(\%params);
50              
51 1         7 my $data = [
52             { filter => $filter },
53 1         2 @{$self->sort_params(\%params, @main_fields)},
54             ];
55              
56 1 50       23 return $bulk_send ? $data :
57             $self->plesk->send('service-plan', 'set', $data);
58             }
59              
60             sub del {
61 1     1 1 3 my ($self, %filter) = @_;
62 1         3 my $bulk_send = delete $filter{bulk_send};
63              
64 1 50       4 my $data = {
65             filter => @_ > 2 ? \%filter : ''
66             };
67              
68 1 50       7 return $bulk_send ? $data :
69             $self->plesk->send('service-plan', 'del', $data);
70             }
71              
72             1;
73              
74             __END__