File Coverage

blib/lib/Paws/SQS/SendMessageBatchRequestEntry.pm
Criterion Covered Total %
statement 6 6 100.0
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 8 8 100.0


line stmt bran cond sub pod time code
1             package Paws::SQS::SendMessageBatchRequestEntry;
2 1     1   698 use Moose;
  1     2   4  
  1         11  
  2         1393  
  2         7  
  2         15  
3             has DelaySeconds => (is => 'ro', isa => 'Int');
4             has Id => (is => 'ro', isa => 'Str', required => 1);
5             has MessageAttributes => (is => 'ro', isa => 'Paws::SQS::MessageBodyAttributeMap', request_name => 'MessageAttribute', traits => ['NameInRequest']);
6             has MessageBody => (is => 'ro', isa => 'Str', required => 1);
7             has MessageDeduplicationId => (is => 'ro', isa => 'Str');
8             has MessageGroupId => (is => 'ro', isa => 'Str');
9             1;
10              
11             ### main pod documentation begin ###
12              
13             =head1 NAME
14              
15             Paws::SQS::SendMessageBatchRequestEntry
16              
17             =head1 USAGE
18              
19             This class represents one of two things:
20              
21             =head3 Arguments in a call to a service
22              
23             Use the attributes of this class as arguments to methods. You shouldn't make instances of this class.
24             Each attribute should be used as a named argument in the calls that expect this type of object.
25              
26             As an example, if Att1 is expected to be a Paws::SQS::SendMessageBatchRequestEntry object:
27              
28             $service_obj->Method(Att1 => { DelaySeconds => $value, ..., MessageGroupId => $value });
29              
30             =head3 Results returned from an API call
31              
32             Use accessors for each attribute. If Att1 is expected to be an Paws::SQS::SendMessageBatchRequestEntry object:
33              
34             $result = $service_obj->Method(...);
35             $result->Att1->DelaySeconds
36              
37             =head1 DESCRIPTION
38              
39             Contains the details of a single Amazon SQS message along with an
40             C<Id>.
41              
42             =head1 ATTRIBUTES
43              
44              
45             =head2 DelaySeconds => Int
46              
47             The length of time, in seconds, for which a specific message is
48             delayed. Valid values: 0 to 900. Maximum: 15 minutes. Messages with a
49             positive C<DelaySeconds> value become available for processing after
50             the delay period is finished. If you don't specify a value, the default
51             value for the queue is applied.
52              
53             When you set C<FifoQueue>, you can't set C<DelaySeconds> per message.
54             You can set this parameter only on a queue level.
55              
56              
57             =head2 B<REQUIRED> Id => Str
58              
59             An identifier for a message in this batch used to communicate the
60             result.
61              
62             The C<Id>s of a batch request need to be unique within a request
63              
64              
65             =head2 MessageAttributes => L<Paws::SQS::MessageBodyAttributeMap>
66              
67             Each message attribute consists of a C<Name>, C<Type>, and C<Value>.
68             For more information, see Message Attribute Items and Validation in the
69             I<Amazon SQS Developer Guide>.
70              
71              
72             =head2 B<REQUIRED> MessageBody => Str
73              
74             The body of the message.
75              
76              
77             =head2 MessageDeduplicationId => Str
78              
79             This parameter applies only to FIFO (first-in-first-out) queues.
80              
81             The token used for deduplication of messages within a 5-minute minimum
82             deduplication interval. If a message with a particular
83             C<MessageDeduplicationId> is sent successfully, subsequent messages
84             with the same C<MessageDeduplicationId> are accepted successfully but
85             aren't delivered. For more information, see Exactly-Once Processing in
86             the I<Amazon SQS Developer Guide>.
87              
88             =over
89              
90             =item *
91              
92             Every message must have a unique C<MessageDeduplicationId>,
93              
94             =over
95              
96             =item *
97              
98             You may provide a C<MessageDeduplicationId> explicitly.
99              
100             =item *
101              
102             If you aren't able to provide a C<MessageDeduplicationId> and you
103             enable C<ContentBasedDeduplication> for your queue, Amazon SQS uses a
104             SHA-256 hash to generate the C<MessageDeduplicationId> using the body
105             of the message (but not the attributes of the message).
106              
107             =item *
108              
109             If you don't provide a C<MessageDeduplicationId> and the queue doesn't
110             have C<ContentBasedDeduplication> set, the action fails with an error.
111              
112             =item *
113              
114             If the queue has C<ContentBasedDeduplication> set, your
115             C<MessageDeduplicationId> overrides the generated one.
116              
117             =back
118              
119             =item *
120              
121             When C<ContentBasedDeduplication> is in effect, messages with identical
122             content sent within the deduplication interval are treated as
123             duplicates and only one copy of the message is delivered.
124              
125             =item *
126              
127             If you send one message with C<ContentBasedDeduplication> enabled and
128             then another message with a C<MessageDeduplicationId> that is the same
129             as the one generated for the first C<MessageDeduplicationId>, the two
130             messages are treated as duplicates and only one copy of the message is
131             delivered.
132              
133             =back
134              
135             The C<MessageDeduplicationId> is available to the recipient of the
136             message (this can be useful for troubleshooting delivery issues).
137              
138             If a message is sent successfully but the acknowledgement is lost and
139             the message is resent with the same C<MessageDeduplicationId> after the
140             deduplication interval, Amazon SQS can't detect duplicate messages.
141              
142             The length of C<MessageDeduplicationId> is 128 characters.
143             C<MessageDeduplicationId> can contain alphanumeric characters (C<a-z>,
144             C<A-Z>, C<0-9>) and punctuation
145             (C<!"#$%&'()*+,-./:;E<lt>=E<gt>?@[\]^_`{|}~>).
146              
147             For best practices of using C<MessageDeduplicationId>, see Using the
148             MessageDeduplicationId Property in the I<Amazon Simple Queue Service
149             Developer Guide>.
150              
151              
152             =head2 MessageGroupId => Str
153              
154             This parameter applies only to FIFO (first-in-first-out) queues.
155              
156             The tag that specifies that a message belongs to a specific message
157             group. Messages that belong to the same message group are processed in
158             a FIFO manner (however, messages in different message groups might be
159             processed out of order). To interleave multiple ordered streams within
160             a single queue, use C<MessageGroupId> values (for example, session data
161             for multiple users). In this scenario, multiple readers can process the
162             queue, but the session data of each user is processed in a FIFO
163             fashion.
164              
165             =over
166              
167             =item *
168              
169             You must associate a non-empty C<MessageGroupId> with a message. If you
170             don't provide a C<MessageGroupId>, the action fails.
171              
172             =item *
173              
174             C<ReceiveMessage> might return messages with multiple C<MessageGroupId>
175             values. For each C<MessageGroupId>, the messages are sorted by time
176             sent. The caller can't specify a C<MessageGroupId>.
177              
178             =back
179              
180             The length of C<MessageGroupId> is 128 characters. Valid values are
181             alphanumeric characters and punctuation
182             C<(!"#$%&'()*+,-./:;E<lt>=E<gt>?@[\]^_`{|}~)>.
183              
184             For best practices of using C<MessageGroupId>, see Using the
185             MessageGroupId Property in the I<Amazon Simple Queue Service Developer
186             Guide>.
187              
188             C<MessageGroupId> is required for FIFO queues. You can't use it for
189             Standard queues.
190              
191              
192              
193             =head1 SEE ALSO
194              
195             This class forms part of L<Paws>, describing an object used in L<Paws::SQS>
196              
197             =head1 BUGS and CONTRIBUTIONS
198              
199             The source code is located here: https://github.com/pplu/aws-sdk-perl
200              
201             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
202              
203             =cut
204