File Coverage

blib/lib/API/MailboxOrg/API/Spamprotect.pm
Criterion Covered Total %
statement 26 42 61.9
branch 0 4 0.0
condition n/a
subroutine 9 11 81.8
pod 2 2 100.0
total 37 59 62.7


line stmt bran cond sub pod time code
1              
2             # ABSTRACT: MailboxOrg::API::Spamprotect
3              
4             # ---
5             # This class is auto-generated by bin/get_mailbox_api.pl
6             # ---
7              
8             use v5.24;
9 2     2   1066  
  2         6  
10             use strict;
11 2     2   9 use warnings;
  2         4  
  2         36  
12 2     2   6  
  2         4  
  2         43  
13             use Moo;
14 2     2   8 use Types::Standard qw(Enum Str Int InstanceOf ArrayRef);
  2         4  
  2         14  
15 2     2   549 use API::MailboxOrg::Types qw(HashRefRestricted Boolean);
  2         4  
  2         25  
16 2     2   2084 use Params::ValidationCompiler qw(validation_for);
  2         4  
  2         12  
17 2     2   681  
  2         3  
  2         118  
18             extends 'API::MailboxOrg::APIBase';
19              
20             with 'MooX::Singleton';
21              
22             use feature 'signatures';
23 2     2   10 no warnings 'experimental::signatures';
  2         2  
  2         150  
24 2     2   9  
  2         3  
  2         777  
25             our $VERSION = '1.0.2'; # VERSION
26              
27             my %validators = (
28             'get' => validation_for(
29             params => {
30             mail => { type => Str, optional => 0 },
31              
32             },
33             ),
34             'set' => validation_for(
35             params => {
36             mail => { type => Str, optional => 0 },
37             greylist => { type => Enum[qw(0 1)], optional => 0 },
38             smtp_plausibility => { type => Enum[qw(0 1)], optional => 0 },
39             rbl => { type => Enum[qw(0 1)], optional => 0 },
40             bypass_banned_checks => { type => Enum[qw(0 1)], optional => 0 },
41             tag2level => { type => Str, optional => 0 },
42             killevel => { type => Enum[qw(reject route)], optional => 0 },
43             route_to => { type => Str, optional => 0 },
44              
45             },
46             ),
47              
48             );
49              
50              
51             my $validator = $validators{'get'};
52 0     0 1   %params = $validator->(%params) if $validator;
  0            
  0            
  0            
53 0            
54 0 0         my %opt = (needs_auth => 1);
55              
56 0           return $self->_request( 'mail.spamprotect.get', \%params, \%opt );
57             }
58 0            
59             my $validator = $validators{'set'};
60             %params = $validator->(%params) if $validator;
61 0     0 1    
  0            
  0            
  0            
62 0           my %opt = (needs_auth => 1);
63 0 0          
64             return $self->_request( 'mail.spamprotect.set', \%params, \%opt );
65 0           }
66              
67 0            
68             1;
69              
70              
71             =pod
72              
73             =encoding UTF-8
74              
75             =head1 NAME
76              
77             API::MailboxOrg::API::Spamprotect - MailboxOrg::API::Spamprotect
78              
79             =head1 VERSION
80              
81             version 1.0.2
82              
83             =head1 SYNOPSIS
84              
85             use API::MailboxOrg;
86              
87             my $user = '1234abc';
88             my $password = '1234abc';
89              
90             my $api = API::MailboxOrg->new(
91             user => $user,
92             password => $password,
93             );
94              
95             =head1 METHODS
96              
97             =head2 get
98              
99             Read spamprotection settings
100              
101             Available for admin, account, domain, mail
102              
103             Parameters:
104              
105             =over 4
106              
107             =item * mail
108              
109             =back
110              
111             returns: array
112              
113             $api->spamprotect->get(%params);
114              
115             =head2 set
116              
117             Sets the spamprotection settings
118              
119             Available for admin, account, domain, mail
120              
121             Parameters:
122              
123             =over 4
124              
125             =item * mail
126              
127             =item * greylist
128              
129             =item * smtp_plausibility
130              
131             =item * rbl
132              
133             =item * bypass_banned_checks
134              
135             =item * tag2level
136              
137             =item * killevel
138              
139             =item * route_to
140              
141             =back
142              
143             returns: array
144              
145             $api->spamprotect->set(%params);
146              
147             =head1 AUTHOR
148              
149             Renee Baecker <reneeb@cpan.org>
150              
151             =head1 COPYRIGHT AND LICENSE
152              
153             This software is Copyright (c) 2022 by Renee Baecker.
154              
155             This is free software, licensed under:
156              
157             The Artistic License 2.0 (GPL Compatible)
158              
159             =cut