File Coverage

blib/lib/API/Plesk/Site.pm
Criterion Covered Total %
statement 34 47 72.3
branch 4 20 20.0
condition 2 5 40.0
subroutine 8 10 80.0
pod 5 5 100.0
total 53 87 60.9


line stmt bran cond sub pod time code
1              
2             package API::Plesk::Site;
3              
4 1     1   2523 use strict;
  1         3  
  1         36  
5 1     1   6 use warnings;
  1         2  
  1         25  
6              
7 1     1   5 use Carp;
  1         1  
  1         73  
8 1     1   4 use Data::Dumper;
  1         2  
  1         58  
9              
10 1     1   6 use base 'API::Plesk::Component';
  1         2  
  1         547  
11              
12             #TODO
13             sub add {
14 1     1 1 4 my ( $self, %params ) = @_;
15 1         2 my $bulk_send = delete $params{bulk_send};
16 1   33     5 my $gen_setup = $params{gen_setup} || confess "Required gen_setup parameter!";
17              
18 1         6 my @fields = (
19             'name',
20             [qw(webspace-name webspace-id webspace-guid)]
21             );
22              
23 1         11 $self->check_required_params($gen_setup, @fields);
24 1         19 $self->check_hosting(\%params);
25              
26 1         7 $params{gen_setup} = $self->sort_params($gen_setup, @fields);
27            
28 1         4 my $data = $self->sort_params(\%params, qw(gen_setup hosting prefs));
29              
30 1 50       13 return $bulk_send ? $data :
31             $self->plesk->send('site', 'add', $data);
32             }
33              
34             sub get {
35 0     0 1 0 my ($self, %filter) = @_;
36 0         0 my $bulk_send = delete $filter{bulk_send};
37 0         0 my $dataset = {gen_info => ''};
38            
39 0 0       0 if ( my $add = delete $filter{dataset} ) {
40 0 0       0 $dataset = { map { ( $_ => '' ) } ref $add ? @$add : ($add) };
  0         0  
41 0         0 $dataset->{gen_info} = '';
42             }
43              
44 0 0       0 my $data = {
45             filter => @_ > 2 ? \%filter : '',
46             dataset => $dataset,
47             };
48              
49 0 0       0 return $bulk_send ? $data :
50             $self->plesk->send('site', 'get', $data);
51             }
52              
53             sub set {
54 1     1 1 5 my ( $self, %params ) = @_;
55 1         3 my $bulk_send = delete $params{bulk_send};
56 1   50     4 my $filter = delete $params{filter} || '';
57            
58 1         5 $self->check_hosting(\%params);
59              
60              
61 1         4 my $data = {
62             filter => $filter,
63             values => $self->sort_params(\%params, qw(gen_setup prefs hosting disk_usage)),
64             };
65              
66 1 50       28 return $bulk_send ? $data :
67             $self->plesk->send('site', 'set', $data);
68             }
69              
70             sub del {
71 1     1 1 3 my ($self, %filter) = @_;
72 1         3 my $bulk_send = delete $filter{bulk_send};
73              
74 1 50       5 my $data = {
75             filter => @_ > 2 ? \%filter : ''
76             };
77              
78 1 50       6 return $bulk_send ? $data :
79             $self->plesk->send('site', 'del', $data);
80             }
81              
82             sub get_physical_hosting_descriptor {
83 0     0 1   my ( $self, %filter ) = @_;
84 0           my $bulk_send = delete $filter{bulk_send};
85            
86 0 0         my $data = {
87             filter => @_ > 2 ? \%filter : ''
88             };
89              
90 0 0         return $bulk_send ? $data :
91             $self->plesk->send(
92             'site',
93             'get-physical-hosting-descriptor',
94             $data
95             );
96             }
97              
98             1;
99              
100             __END__