File Coverage

blib/lib/API/Plesk/User.pm
Criterion Covered Total %
statement 16 35 45.7
branch 2 14 14.2
condition 0 10 0.0
subroutine 5 8 62.5
pod 4 4 100.0
total 27 71 38.0


line stmt bran cond sub pod time code
1              
2             package API::Plesk::User;
3              
4 1     1   3126 use strict;
  1         2  
  1         37  
5 1     1   7 use warnings;
  1         2  
  1         30  
6              
7 1     1   6 use Carp;
  1         1  
  1         91  
8              
9 1     1   5 use base 'API::Plesk::Component';
  1         2  
  1         605  
10              
11             my @gen_info_fields = qw(
12             cname
13             login
14             passwd
15             owner-guid
16             owner-external-id
17             name
18             contact-info
19             status
20             external-id
21             );
22              
23             sub add {
24 0     0 1 0 my ( $self, %params ) = @_;
25 0         0 my $bulk_send = delete $params{bulk_send};
26 0   0     0 my $gen_info = $params{gen_info} || confess "Required gen_info parameter!";
27 0   0     0 my $roles = $params{roles} || confess "Required roles parameter!";
28              
29 0         0 $self->check_required_params($gen_info, qw(name login passwd));
30            
31 0         0 my $unsorteddata = {
32             'gen-info' => $self->sort_params($params{gen_info}, @gen_info_fields),
33             roles => $roles,
34             };
35 0         0 my $data = $self->sort_params($unsorteddata, qw(gen-info roles));
36              
37 0 0       0 return $bulk_send ? $data :
38             $self->plesk->send('user', 'add', $data);
39             }
40              
41             sub get {
42 1     1 1 763 my ($self, %filter) = @_;
43 1         3 my $bulk_send = delete $filter{bulk_send};
44              
45 1 50       11 my $data = {
46             filter => @_ > 2 ? \%filter : '',
47             dataset => [ {'gen-info' => ''}, {roles => ''} ]
48             };
49              
50 1 50       27 return $bulk_send ? $data :
51             $self->plesk->send('user', 'get', $data);
52             }
53              
54             sub set {
55 0     0 1   my ( $self, %params ) = @_;
56 0           my $bulk_send = delete $params{bulk_send};
57 0   0       my $filter = $params{filter} || '';
58 0   0       my $gen_info = $params{gen_info} || '';
59              
60 0 0         $gen_info || confess "Required gen_info or stat parameter!";
61              
62 0           my $data = {
63             filter => $filter,
64             values => {
65             gen_info => $gen_info,
66             }
67             };
68              
69 0 0         return $bulk_send ? $data :
70             $self->plesk->send('user', 'set', $data);
71             }
72              
73             sub del {
74 0     0 1   my ($self, %filter) = @_;
75 0           my $bulk_send = delete $filter{bulk_send};
76              
77 0 0         my $data = {
78             filter => @_ > 2 ? \%filter : ''
79             };
80              
81 0 0         return $bulk_send ? $data :
82             $self->plesk->send('user', 'del', $data);
83             }
84              
85             1;
86              
87             __END__