File Coverage

blib/lib/Paws/Shield.pm
Criterion Covered Total %
statement 3 3 100.0
branch n/a
condition n/a
subroutine 1 1 100.0
pod n/a
total 4 4 100.0


line stmt bran cond sub pod time code
1             package Paws::Shield;
2 1     1   12519 use Moose;
  1         3  
  1         13  
3             sub service { 'shield' }
4             sub version { '2016-06-02' }
5             sub target_prefix { 'AWSShield_20160616' }
6             sub json_version { "1.1" }
7             has max_attempts => (is => 'ro', isa => 'Int', default => 5);
8             has retry => (is => 'ro', isa => 'HashRef', default => sub {
9             { base => 'rand', type => 'exponential', growth_factor => 2 }
10             });
11             has retriables => (is => 'ro', isa => 'ArrayRef', default => sub { [
12             ] });
13              
14             with 'Paws::API::Caller', 'Paws::API::EndpointResolver', 'Paws::Net::V4Signature', 'Paws::Net::JsonCaller', 'Paws::Net::JsonResponse';
15              
16            
17             sub CreateProtection {
18             my $self = shift;
19             my $call_object = $self->new_with_coercions('Paws::Shield::CreateProtection', @_);
20             return $self->caller->do_call($self, $call_object);
21             }
22             sub CreateSubscription {
23             my $self = shift;
24             my $call_object = $self->new_with_coercions('Paws::Shield::CreateSubscription', @_);
25             return $self->caller->do_call($self, $call_object);
26             }
27             sub DeleteProtection {
28             my $self = shift;
29             my $call_object = $self->new_with_coercions('Paws::Shield::DeleteProtection', @_);
30             return $self->caller->do_call($self, $call_object);
31             }
32             sub DeleteSubscription {
33             my $self = shift;
34             my $call_object = $self->new_with_coercions('Paws::Shield::DeleteSubscription', @_);
35             return $self->caller->do_call($self, $call_object);
36             }
37             sub DescribeAttack {
38             my $self = shift;
39             my $call_object = $self->new_with_coercions('Paws::Shield::DescribeAttack', @_);
40             return $self->caller->do_call($self, $call_object);
41             }
42             sub DescribeProtection {
43             my $self = shift;
44             my $call_object = $self->new_with_coercions('Paws::Shield::DescribeProtection', @_);
45             return $self->caller->do_call($self, $call_object);
46             }
47             sub DescribeSubscription {
48             my $self = shift;
49             my $call_object = $self->new_with_coercions('Paws::Shield::DescribeSubscription', @_);
50             return $self->caller->do_call($self, $call_object);
51             }
52             sub ListAttacks {
53             my $self = shift;
54             my $call_object = $self->new_with_coercions('Paws::Shield::ListAttacks', @_);
55             return $self->caller->do_call($self, $call_object);
56             }
57             sub ListProtections {
58             my $self = shift;
59             my $call_object = $self->new_with_coercions('Paws::Shield::ListProtections', @_);
60             return $self->caller->do_call($self, $call_object);
61             }
62            
63              
64              
65             sub operations { qw/CreateProtection CreateSubscription DeleteProtection DeleteSubscription DescribeAttack DescribeProtection DescribeSubscription ListAttacks ListProtections / }
66              
67             1;
68              
69             ### main pod documentation begin ###
70              
71             =head1 NAME
72              
73             Paws::Shield - Perl Interface to AWS AWS Shield
74              
75             =head1 SYNOPSIS
76              
77             use Paws;
78              
79             my $obj = Paws->service('Shield');
80             my $res = $obj->Method(
81             Arg1 => $val1,
82             Arg2 => [ 'V1', 'V2' ],
83             # if Arg3 is an object, the HashRef will be used as arguments to the constructor
84             # of the arguments type
85             Arg3 => { Att1 => 'Val1' },
86             # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
87             # the constructor of the arguments type
88             Arg4 => [ { Att1 => 'Val1' }, { Att1 => 'Val2' } ],
89             );
90              
91             =head1 DESCRIPTION
92              
93             AWS Shield Advanced
94              
95             This is the I<AWS Shield Advanced API Reference>. This guide is for
96             developers who need detailed information about the AWS Shield Advanced
97             API actions, data types, and errors. For detailed information about AWS
98             WAF and AWS Shield Advanced features and an overview of how to use the
99             AWS WAF and AWS Shield Advanced APIs, see the AWS WAF and AWS Shield
100             Developer Guide.
101              
102             =head1 METHODS
103              
104             =head2 CreateProtection(Name => Str, ResourceArn => Str)
105              
106             Each argument is described in detail in: L<Paws::Shield::CreateProtection>
107              
108             Returns: a L<Paws::Shield::CreateProtectionResponse> instance
109              
110             Enables AWS Shield Advanced for a specific AWS resource. The resource
111             can be an Amazon CloudFront distribution, Elastic Load Balancing load
112             balancer, or an Amazon Route 53 hosted zone.
113              
114              
115             =head2 CreateSubscription()
116              
117             Each argument is described in detail in: L<Paws::Shield::CreateSubscription>
118              
119             Returns: a L<Paws::Shield::CreateSubscriptionResponse> instance
120              
121             Activates AWS Shield Advanced for an account.
122              
123              
124             =head2 DeleteProtection(ProtectionId => Str)
125              
126             Each argument is described in detail in: L<Paws::Shield::DeleteProtection>
127              
128             Returns: a L<Paws::Shield::DeleteProtectionResponse> instance
129              
130             Deletes an AWS Shield Advanced Protection.
131              
132              
133             =head2 DeleteSubscription()
134              
135             Each argument is described in detail in: L<Paws::Shield::DeleteSubscription>
136              
137             Returns: a L<Paws::Shield::DeleteSubscriptionResponse> instance
138              
139             Removes AWS Shield Advanced from an account.
140              
141              
142             =head2 DescribeAttack(AttackId => Str)
143              
144             Each argument is described in detail in: L<Paws::Shield::DescribeAttack>
145              
146             Returns: a L<Paws::Shield::DescribeAttackResponse> instance
147              
148             Describes the details of a DDoS attack.
149              
150              
151             =head2 DescribeProtection(ProtectionId => Str)
152              
153             Each argument is described in detail in: L<Paws::Shield::DescribeProtection>
154              
155             Returns: a L<Paws::Shield::DescribeProtectionResponse> instance
156              
157             Lists the details of a Protection object.
158              
159              
160             =head2 DescribeSubscription()
161              
162             Each argument is described in detail in: L<Paws::Shield::DescribeSubscription>
163              
164             Returns: a L<Paws::Shield::DescribeSubscriptionResponse> instance
165              
166             Provides details about the AWS Shield Advanced subscription for an
167             account.
168              
169              
170             =head2 ListAttacks([EndTime => L<Paws::Shield::TimeRange>, MaxResults => Int, NextToken => Str, ResourceArns => ArrayRef[Str|Undef], StartTime => L<Paws::Shield::TimeRange>])
171              
172             Each argument is described in detail in: L<Paws::Shield::ListAttacks>
173              
174             Returns: a L<Paws::Shield::ListAttacksResponse> instance
175              
176             Returns all ongoing DDoS attacks or all DDoS attacks during a specified
177             time period.
178              
179              
180             =head2 ListProtections([MaxResults => Int, NextToken => Str])
181              
182             Each argument is described in detail in: L<Paws::Shield::ListProtections>
183              
184             Returns: a L<Paws::Shield::ListProtectionsResponse> instance
185              
186             Lists all Protection objects for the account.
187              
188              
189              
190              
191             =head1 PAGINATORS
192              
193             Paginator methods are helpers that repetively call methods that return partial results
194              
195              
196              
197              
198             =head1 SEE ALSO
199              
200             This service class forms part of L<Paws>
201              
202             =head1 BUGS and CONTRIBUTIONS
203              
204             The source code is located here: https://github.com/pplu/aws-sdk-perl
205              
206             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
207              
208             =cut
209