File Coverage

blib/lib/Paws/SQS/CreateQueue.pm
Criterion Covered Total %
statement 12 12 100.0
branch n/a
condition n/a
subroutine 4 4 100.0
pod n/a
total 16 16 100.0


line stmt bran cond sub pod time code
1              
2             package Paws::SQS::CreateQueue;
3 1     1   349 use Moose;
  1     2   3  
  1         7  
  2         691  
  2         3  
  2         10  
4             has Attributes => (is => 'ro', isa => 'Paws::SQS::QueueAttributeMap', traits => ['NameInRequest'], request_name => 'Attribute' );
5             has QueueName => (is => 'ro', isa => 'Str', required => 1);
6              
7 1     1   5419 use MooseX::ClassAttribute;
  1     2   2  
  1         6  
  2         11652  
  2         5  
  2         17  
8              
9             class_has _api_call => (isa => 'Str', is => 'ro', default => 'CreateQueue');
10             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::SQS::CreateQueueResult');
11             class_has _result_key => (isa => 'Str', is => 'ro', default => 'CreateQueueResult');
12             1;
13              
14             ### main pod documentation begin ###
15              
16             =head1 NAME
17              
18             Paws::SQS::CreateQueue - Arguments for method CreateQueue on Paws::SQS
19              
20             =head1 DESCRIPTION
21              
22             This class represents the parameters used for calling the method CreateQueue on the
23             Amazon Simple Queue Service service. Use the attributes of this class
24             as arguments to method CreateQueue.
25              
26             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateQueue.
27              
28             As an example:
29              
30             $service_obj->CreateQueue(Att1 => $value1, Att2 => $value2, ...);
31              
32             Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object.
33              
34             =head1 ATTRIBUTES
35              
36              
37             =head2 Attributes => L<Paws::SQS::QueueAttributeMap>
38              
39             A map of attributes with their corresponding values.
40              
41             The following lists the names, descriptions, and values of the special
42             request parameters that the C<CreateQueue> action uses:
43              
44             =over
45              
46             =item *
47              
48             C<DelaySeconds> - The length of time, in seconds, for which the
49             delivery of all messages in the queue is delayed. Valid values: An
50             integer from 0 to 900 seconds (15 minutes). The default is 0 (zero).
51              
52             =item *
53              
54             C<MaximumMessageSize> - The limit of how many bytes a message can
55             contain before Amazon SQS rejects it. Valid values: An integer from
56             1,024 bytes (1 KiB) to 262,144 bytes (256 KiB). The default is 262,144
57             (256 KiB).
58              
59             =item *
60              
61             C<MessageRetentionPeriod> - The length of time, in seconds, for which
62             Amazon SQS retains a message. Valid values: An integer from 60 seconds
63             (1 minute) to 1,209,600 seconds (14 days). The default is 345,600 (4
64             days).
65              
66             =item *
67              
68             C<Policy> - The queue's policy. A valid AWS policy. For more
69             information about policy structure, see Overview of AWS IAM Policies in
70             the I<Amazon IAM User Guide>.
71              
72             =item *
73              
74             C<ReceiveMessageWaitTimeSeconds> - The length of time, in seconds, for
75             which a C< ReceiveMessage > action waits for a message to arrive. Valid
76             values: An integer from 0 to 20 (seconds). The default is 0 (zero).
77              
78             =item *
79              
80             C<RedrivePolicy> - The string that includes the parameters for the
81             dead-letter queue functionality of the source queue. For more
82             information about the redrive policy and dead-letter queues, see Using
83             Amazon SQS Dead-Letter Queues in the I<Amazon SQS Developer Guide>.
84              
85             =over
86              
87             =item *
88              
89             C<deadLetterTargetArn> - The Amazon Resource Name (ARN) of the
90             dead-letter queue to which Amazon SQS moves messages after the value of
91             C<maxReceiveCount> is exceeded.
92              
93             =item *
94              
95             C<maxReceiveCount> - The number of times a message is delivered to the
96             source queue before being moved to the dead-letter queue.
97              
98             =back
99              
100             The dead-letter queue of a FIFO queue must also be a FIFO queue.
101             Similarly, the dead-letter queue of a standard queue must also be a
102             standard queue.
103              
104             =item *
105              
106             C<VisibilityTimeout> - The visibility timeout for the queue. Valid
107             values: An integer from 0 to 43,200 (12 hours). The default is 30. For
108             more information about the visibility timeout, see Visibility Timeout
109             in the I<Amazon SQS Developer Guide>.
110              
111             =back
112              
113             The following attributes apply only to server-side-encryption:
114              
115             =over
116              
117             =item *
118              
119             C<KmsMasterKeyId> - The ID of an AWS-managed customer master key (CMK)
120             for Amazon SQS or a custom CMK. For more information, see Key Terms.
121             While the alias of the AWS-managed CMK for Amazon SQS is always
122             C<alias/aws/sqs>, the alias of a custom CMK can, for example, be
123             C<alias/I<MyAlias> >. For more examples, see KeyId in the I<AWS Key
124             Management Service API Reference>.
125              
126             =item *
127              
128             C<KmsDataKeyReusePeriodSeconds> - The length of time, in seconds, for
129             which Amazon SQS can reuse a data key to encrypt or decrypt messages
130             before calling AWS KMS again. An integer representing seconds, between
131             60 seconds (1 minute) and 86,400 seconds (24 hours). The default is 300
132             (5 minutes). A shorter time period provides better security but results
133             in more calls to KMS which might incur charges after Free Tier. For
134             more information, see How Does the Data Key Reuse Period Work?.
135              
136             =back
137              
138             The following attributes apply only to FIFO (first-in-first-out)
139             queues:
140              
141             =over
142              
143             =item *
144              
145             C<FifoQueue> - Designates a queue as FIFO. Valid values: C<true>,
146             C<false>. You can provide this attribute only during queue creation.
147             You can't change it for an existing queue. When you set this attribute,
148             you must also provide the C<MessageGroupId> for your messages
149             explicitly.
150              
151             For more information, see FIFO Queue Logic in the I<Amazon SQS
152             Developer Guide>.
153              
154             =item *
155              
156             C<ContentBasedDeduplication> - Enables content-based deduplication.
157             Valid values: C<true>, C<false>. For more information, see Exactly-Once
158             Processing in the I<Amazon SQS Developer Guide>.
159              
160             =over
161              
162             =item *
163              
164             Every message must have a unique C<MessageDeduplicationId>,
165              
166             =over
167              
168             =item *
169              
170             You may provide a C<MessageDeduplicationId> explicitly.
171              
172             =item *
173              
174             If you aren't able to provide a C<MessageDeduplicationId> and you
175             enable C<ContentBasedDeduplication> for your queue, Amazon SQS uses a
176             SHA-256 hash to generate the C<MessageDeduplicationId> using the body
177             of the message (but not the attributes of the message).
178              
179             =item *
180              
181             If you don't provide a C<MessageDeduplicationId> and the queue doesn't
182             have C<ContentBasedDeduplication> set, the action fails with an error.
183              
184             =item *
185              
186             If the queue has C<ContentBasedDeduplication> set, your
187             C<MessageDeduplicationId> overrides the generated one.
188              
189             =back
190              
191             =item *
192              
193             When C<ContentBasedDeduplication> is in effect, messages with identical
194             content sent within the deduplication interval are treated as
195             duplicates and only one copy of the message is delivered.
196              
197             =item *
198              
199             If you send one message with C<ContentBasedDeduplication> enabled and
200             then another message with a C<MessageDeduplicationId> that is the same
201             as the one generated for the first C<MessageDeduplicationId>, the two
202             messages are treated as duplicates and only one copy of the message is
203             delivered.
204              
205             =back
206              
207             =back
208              
209             Any other valid special request parameters (such as the following) are
210             ignored:
211              
212             =over
213              
214             =item *
215              
216             C<ApproximateNumberOfMessages>
217              
218             =item *
219              
220             C<ApproximateNumberOfMessagesDelayed>
221              
222             =item *
223              
224             C<ApproximateNumberOfMessagesNotVisible>
225              
226             =item *
227              
228             C<CreatedTimestamp>
229              
230             =item *
231              
232             C<LastModifiedTimestamp>
233              
234             =item *
235              
236             C<QueueArn>
237              
238             =back
239              
240              
241              
242              
243             =head2 B<REQUIRED> QueueName => Str
244              
245             The name of the new queue. The following limits apply to this name:
246              
247             =over
248              
249             =item *
250              
251             A queue name can have up to 80 characters.
252              
253             =item *
254              
255             Valid values: alphanumeric characters, hyphens (C<->), and underscores
256             (C<_>).
257              
258             =item *
259              
260             A FIFO queue name must end with the C<.fifo> suffix.
261              
262             =back
263              
264             Queue names are case-sensitive.
265              
266              
267              
268              
269             =head1 SEE ALSO
270              
271             This class forms part of L<Paws>, documenting arguments for method CreateQueue in L<Paws::SQS>
272              
273             =head1 BUGS and CONTRIBUTIONS
274              
275             The source code is located here: https://github.com/pplu/aws-sdk-perl
276              
277             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
278              
279             =cut
280