/* * Copyright 2010-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ package com.amazonaws.services.sqs.model; import java.io.Serializable; import com.amazonaws.AmazonWebServiceRequest; /** *
* Sets the value of one or more queue attributes. When you change a queue's
* attributes, the change can take up to 60 seconds for most of the attributes
* to propagate throughout the SQS system. Changes made to the
* MessageRetentionPeriod
attribute can take up to 15 minutes.
*
* In the future, new attributes might be added. When you write code that calls * this action, we recommend structuring your code so that it can handle new * attributes gracefully. *
** The URL of the Amazon SQS queue to take action on. *
** Queue URLs are case-sensitive. *
*/ private String queueUrl; /** ** A map of attributes to set. *
*
* The following lists the names, descriptions, and values of the special
* request parameters that the SetQueueAttributes
action uses:
*
* DelaySeconds
- The number of seconds for which the delivery
* of all messages in the queue is delayed. An integer from 0 to 900 (15
* minutes). The default is 0 (zero).
*
* MaximumMessageSize
- The limit of how many bytes a message
* can contain before Amazon SQS rejects it. An integer from 1,024 bytes (1
* KiB) up to 262,144 bytes (256 KiB). The default is 262,144 (256 KiB).
*
* MessageRetentionPeriod
- The number of seconds for which
* Amazon SQS retains a message. An integer representing seconds, from 60 (1
* minute) to 120,9600 (14 days). The default is 345,600 (4 days).
*
* Policy
- The queue's policy. A valid AWS policy. For more
* information about policy structure, see Overview of AWS IAM Policies in the Amazon IAM User Guide.
*
* ReceiveMessageWaitTimeSeconds
- The number of seconds for
* which a ReceiveMessage action will wait for a message to arrive.
* An integer from 0 to 20 (seconds). The default is 0.
*
* RedrivePolicy
- The parameters for the dead letter queue
* functionality of the source queue. For more information about the redrive
* policy and dead letter queues, see Using Amazon SQS Dead Letter Queues in the Amazon SQS Developer
* Guide.
*
* The dead letter queue of a FIFO queue must also be a FIFO queue. * Similarly, the dead letter queue of a standard queue must also be a * standard queue. *
*
* VisibilityTimeout
- The visibility timeout for the queue. An
* integer from 0 to 43200 (12 hours). The default is 30. For more
* information about the visibility timeout, see Visibility Timeout in the Amazon SQS Developer Guide.
*
* The following attribute applies only to FIFO (first-in-first-out) queues: *
*
* ContentBasedDeduplication
- Enables content-based
* deduplication. For more information, see Exactly-Once Processing in the Amazon SQS Developer Guide.
*
* Every message must have a unique MessageDeduplicationId
,
*
* You may provide a MessageDeduplicationId
explicitly.
*
* If you aren't able to provide a MessageDeduplicationId
and
* you enable ContentBasedDeduplication
for your queue, Amazon
* SQS uses a SHA-256 hash to generate the
* MessageDeduplicationId
using the body of the message (but
* not the attributes of the message).
*
* If you don't provide a MessageDeduplicationId
and the queue
* doesn't have ContentBasedDeduplication
set, the action fails
* with an error.
*
* If the queue has ContentBasedDeduplication
set, your
* MessageDeduplicationId
overrides the generated one.
*
* When ContentBasedDeduplication
is in effect, messages with
* identical content sent within the deduplication interval are treated as
* duplicates and only one copy of the message is delivered.
*
* You can also use ContentBasedDeduplication
for messages with
* identical content to be treated as duplicates.
*
* If you send one message with ContentBasedDeduplication
* enabled and then another message with a
* MessageDeduplicationId
that is the same as the one generated
* for the first MessageDeduplicationId
, the two messages are
* treated as duplicates and only one copy of the message is delivered.
*
* Any other valid special request parameters that are specified (such as
* ApproximateNumberOfMessages
,
* ApproximateNumberOfMessagesDelayed
,
* ApproximateNumberOfMessagesNotVisible
,
* CreatedTimestamp
, LastModifiedTimestamp
, and
* QueueArn
) will be ignored.
*
* The URL of the Amazon SQS queue to take action on. *
** Queue URLs are case-sensitive. *
* @param attributes* A map of attributes to set. *
*
* The following lists the names, descriptions, and values of the
* special request parameters that the
* SetQueueAttributes
action uses:
*
* DelaySeconds
- The number of seconds for which
* the delivery of all messages in the queue is delayed. An
* integer from 0 to 900 (15 minutes). The default is 0 (zero).
*
* MaximumMessageSize
- The limit of how many bytes
* a message can contain before Amazon SQS rejects it. An integer
* from 1,024 bytes (1 KiB) up to 262,144 bytes (256 KiB). The
* default is 262,144 (256 KiB).
*
* MessageRetentionPeriod
- The number of seconds
* for which Amazon SQS retains a message. An integer
* representing seconds, from 60 (1 minute) to 120,9600 (14
* days). The default is 345,600 (4 days).
*
* Policy
- The queue's policy. A valid AWS policy.
* For more information about policy structure, see Overview of AWS IAM Policies in the Amazon IAM User
* Guide.
*
* ReceiveMessageWaitTimeSeconds
- The number of
* seconds for which a ReceiveMessage action will wait for
* a message to arrive. An integer from 0 to 20 (seconds). The
* default is 0.
*
* RedrivePolicy
- The parameters for the dead
* letter queue functionality of the source queue. For more
* information about the redrive policy and dead letter queues,
* see Using Amazon SQS Dead Letter Queues in the Amazon SQS
* Developer Guide.
*
* The dead letter queue of a FIFO queue must also be a FIFO * queue. Similarly, the dead letter queue of a standard queue * must also be a standard queue. *
*
* VisibilityTimeout
- The visibility timeout for
* the queue. An integer from 0 to 43200 (12 hours). The default
* is 30. For more information about the visibility timeout, see
* Visibility Timeout in the Amazon SQS Developer
* Guide.
*
* The following attribute applies only to FIFO (first-in-first-out) queues: *
*
* ContentBasedDeduplication
- Enables content-based
* deduplication. For more information, see Exactly-Once Processing in the Amazon SQS Developer
* Guide.
*
* Every message must have a unique
* MessageDeduplicationId
,
*
* You may provide a MessageDeduplicationId
* explicitly.
*
* If you aren't able to provide a
* MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your queue, Amazon
* SQS uses a SHA-256 hash to generate the
* MessageDeduplicationId
using the body of the
* message (but not the attributes of the message).
*
* If you don't provide a MessageDeduplicationId
and
* the queue doesn't have ContentBasedDeduplication
* set, the action fails with an error.
*
* If the queue has ContentBasedDeduplication
set,
* your MessageDeduplicationId
overrides the
* generated one.
*
* When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication
* interval are treated as duplicates and only one copy of the
* message is delivered.
*
* You can also use ContentBasedDeduplication
for
* messages with identical content to be treated as duplicates.
*
* If you send one message with
* ContentBasedDeduplication
enabled and then
* another message with a MessageDeduplicationId
* that is the same as the one generated for the first
* MessageDeduplicationId
, the two messages are
* treated as duplicates and only one copy of the message is
* delivered.
*
* Any other valid special request parameters that are specified
* (such as ApproximateNumberOfMessages
,
* ApproximateNumberOfMessagesDelayed
,
* ApproximateNumberOfMessagesNotVisible
,
* CreatedTimestamp
,
* LastModifiedTimestamp
, and QueueArn
)
* will be ignored.
*
* The URL of the Amazon SQS queue to take action on. *
** Queue URLs are case-sensitive. *
* * @return* The URL of the Amazon SQS queue to take action on. *
** Queue URLs are case-sensitive. *
*/ public String getQueueUrl() { return queueUrl; } /** ** The URL of the Amazon SQS queue to take action on. *
** Queue URLs are case-sensitive. *
* * @param queueUrl* The URL of the Amazon SQS queue to take action on. *
** Queue URLs are case-sensitive. *
*/ public void setQueueUrl(String queueUrl) { this.queueUrl = queueUrl; } /** ** The URL of the Amazon SQS queue to take action on. *
** Queue URLs are case-sensitive. *
** Returns a reference to this object so that method calls can be chained * together. * * @param queueUrl
* The URL of the Amazon SQS queue to take action on. *
** Queue URLs are case-sensitive. *
* @return A reference to this updated object so that method calls can be * chained together. */ public SetQueueAttributesRequest withQueueUrl(String queueUrl) { this.queueUrl = queueUrl; return this; } /** ** A map of attributes to set. *
*
* The following lists the names, descriptions, and values of the special
* request parameters that the SetQueueAttributes
action uses:
*
* DelaySeconds
- The number of seconds for which the delivery
* of all messages in the queue is delayed. An integer from 0 to 900 (15
* minutes). The default is 0 (zero).
*
* MaximumMessageSize
- The limit of how many bytes a message
* can contain before Amazon SQS rejects it. An integer from 1,024 bytes (1
* KiB) up to 262,144 bytes (256 KiB). The default is 262,144 (256 KiB).
*
* MessageRetentionPeriod
- The number of seconds for which
* Amazon SQS retains a message. An integer representing seconds, from 60 (1
* minute) to 120,9600 (14 days). The default is 345,600 (4 days).
*
* Policy
- The queue's policy. A valid AWS policy. For more
* information about policy structure, see Overview of AWS IAM Policies in the Amazon IAM User Guide.
*
* ReceiveMessageWaitTimeSeconds
- The number of seconds for
* which a ReceiveMessage action will wait for a message to arrive.
* An integer from 0 to 20 (seconds). The default is 0.
*
* RedrivePolicy
- The parameters for the dead letter queue
* functionality of the source queue. For more information about the redrive
* policy and dead letter queues, see Using Amazon SQS Dead Letter Queues in the Amazon SQS Developer
* Guide.
*
* The dead letter queue of a FIFO queue must also be a FIFO queue. * Similarly, the dead letter queue of a standard queue must also be a * standard queue. *
*
* VisibilityTimeout
- The visibility timeout for the queue. An
* integer from 0 to 43200 (12 hours). The default is 30. For more
* information about the visibility timeout, see Visibility Timeout in the Amazon SQS Developer Guide.
*
* The following attribute applies only to FIFO (first-in-first-out) queues: *
*
* ContentBasedDeduplication
- Enables content-based
* deduplication. For more information, see Exactly-Once Processing in the Amazon SQS Developer Guide.
*
* Every message must have a unique MessageDeduplicationId
,
*
* You may provide a MessageDeduplicationId
explicitly.
*
* If you aren't able to provide a MessageDeduplicationId
and
* you enable ContentBasedDeduplication
for your queue, Amazon
* SQS uses a SHA-256 hash to generate the
* MessageDeduplicationId
using the body of the message (but
* not the attributes of the message).
*
* If you don't provide a MessageDeduplicationId
and the queue
* doesn't have ContentBasedDeduplication
set, the action fails
* with an error.
*
* If the queue has ContentBasedDeduplication
set, your
* MessageDeduplicationId
overrides the generated one.
*
* When ContentBasedDeduplication
is in effect, messages with
* identical content sent within the deduplication interval are treated as
* duplicates and only one copy of the message is delivered.
*
* You can also use ContentBasedDeduplication
for messages with
* identical content to be treated as duplicates.
*
* If you send one message with ContentBasedDeduplication
* enabled and then another message with a
* MessageDeduplicationId
that is the same as the one generated
* for the first MessageDeduplicationId
, the two messages are
* treated as duplicates and only one copy of the message is delivered.
*
* Any other valid special request parameters that are specified (such as
* ApproximateNumberOfMessages
,
* ApproximateNumberOfMessagesDelayed
,
* ApproximateNumberOfMessagesNotVisible
,
* CreatedTimestamp
, LastModifiedTimestamp
, and
* QueueArn
) will be ignored.
*
* A map of attributes to set. *
*
* The following lists the names, descriptions, and values of the
* special request parameters that the
* SetQueueAttributes
action uses:
*
* DelaySeconds
- The number of seconds for which the
* delivery of all messages in the queue is delayed. An integer from
* 0 to 900 (15 minutes). The default is 0 (zero).
*
* MaximumMessageSize
- The limit of how many bytes a
* message can contain before Amazon SQS rejects it. An integer from
* 1,024 bytes (1 KiB) up to 262,144 bytes (256 KiB). The default is
* 262,144 (256 KiB).
*
* MessageRetentionPeriod
- The number of seconds for
* which Amazon SQS retains a message. An integer representing
* seconds, from 60 (1 minute) to 120,9600 (14 days). The default is
* 345,600 (4 days).
*
* Policy
- The queue's policy. A valid AWS policy. For
* more information about policy structure, see Overview of AWS IAM Policies in the Amazon IAM User
* Guide.
*
* ReceiveMessageWaitTimeSeconds
- The number of
* seconds for which a ReceiveMessage action will wait for a
* message to arrive. An integer from 0 to 20 (seconds). The default
* is 0.
*
* RedrivePolicy
- The parameters for the dead letter
* queue functionality of the source queue. For more information
* about the redrive policy and dead letter queues, see Using Amazon SQS Dead Letter Queues in the Amazon SQS
* Developer Guide.
*
* The dead letter queue of a FIFO queue must also be a FIFO queue. * Similarly, the dead letter queue of a standard queue must also be * a standard queue. *
*
* VisibilityTimeout
- The visibility timeout for the
* queue. An integer from 0 to 43200 (12 hours). The default is 30.
* For more information about the visibility timeout, see Visibility Timeout in the Amazon SQS Developer Guide.
*
* The following attribute applies only to FIFO (first-in-first-out) queues: *
*
* ContentBasedDeduplication
- Enables content-based
* deduplication. For more information, see Exactly-Once Processing in the Amazon SQS Developer
* Guide.
*
* Every message must have a unique
* MessageDeduplicationId
,
*
* You may provide a MessageDeduplicationId
explicitly.
*
* If you aren't able to provide a
* MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your queue, Amazon SQS
* uses a SHA-256 hash to generate the
* MessageDeduplicationId
using the body of the message
* (but not the attributes of the message).
*
* If you don't provide a MessageDeduplicationId
and
* the queue doesn't have ContentBasedDeduplication
* set, the action fails with an error.
*
* If the queue has ContentBasedDeduplication
set, your
* MessageDeduplicationId
overrides the generated one.
*
* When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication
* interval are treated as duplicates and only one copy of the
* message is delivered.
*
* You can also use ContentBasedDeduplication
for
* messages with identical content to be treated as duplicates.
*
* If you send one message with
* ContentBasedDeduplication
enabled and then another
* message with a MessageDeduplicationId
that is the
* same as the one generated for the first
* MessageDeduplicationId
, the two messages are treated
* as duplicates and only one copy of the message is delivered.
*
* Any other valid special request parameters that are specified
* (such as ApproximateNumberOfMessages
,
* ApproximateNumberOfMessagesDelayed
,
* ApproximateNumberOfMessagesNotVisible
,
* CreatedTimestamp
, LastModifiedTimestamp
* , and QueueArn
) will be ignored.
*
* A map of attributes to set. *
*
* The following lists the names, descriptions, and values of the special
* request parameters that the SetQueueAttributes
action uses:
*
* DelaySeconds
- The number of seconds for which the delivery
* of all messages in the queue is delayed. An integer from 0 to 900 (15
* minutes). The default is 0 (zero).
*
* MaximumMessageSize
- The limit of how many bytes a message
* can contain before Amazon SQS rejects it. An integer from 1,024 bytes (1
* KiB) up to 262,144 bytes (256 KiB). The default is 262,144 (256 KiB).
*
* MessageRetentionPeriod
- The number of seconds for which
* Amazon SQS retains a message. An integer representing seconds, from 60 (1
* minute) to 120,9600 (14 days). The default is 345,600 (4 days).
*
* Policy
- The queue's policy. A valid AWS policy. For more
* information about policy structure, see Overview of AWS IAM Policies in the Amazon IAM User Guide.
*
* ReceiveMessageWaitTimeSeconds
- The number of seconds for
* which a ReceiveMessage action will wait for a message to arrive.
* An integer from 0 to 20 (seconds). The default is 0.
*
* RedrivePolicy
- The parameters for the dead letter queue
* functionality of the source queue. For more information about the redrive
* policy and dead letter queues, see Using Amazon SQS Dead Letter Queues in the Amazon SQS Developer
* Guide.
*
* The dead letter queue of a FIFO queue must also be a FIFO queue. * Similarly, the dead letter queue of a standard queue must also be a * standard queue. *
*
* VisibilityTimeout
- The visibility timeout for the queue. An
* integer from 0 to 43200 (12 hours). The default is 30. For more
* information about the visibility timeout, see Visibility Timeout in the Amazon SQS Developer Guide.
*
* The following attribute applies only to FIFO (first-in-first-out) queues: *
*
* ContentBasedDeduplication
- Enables content-based
* deduplication. For more information, see Exactly-Once Processing in the Amazon SQS Developer Guide.
*
* Every message must have a unique MessageDeduplicationId
,
*
* You may provide a MessageDeduplicationId
explicitly.
*
* If you aren't able to provide a MessageDeduplicationId
and
* you enable ContentBasedDeduplication
for your queue, Amazon
* SQS uses a SHA-256 hash to generate the
* MessageDeduplicationId
using the body of the message (but
* not the attributes of the message).
*
* If you don't provide a MessageDeduplicationId
and the queue
* doesn't have ContentBasedDeduplication
set, the action fails
* with an error.
*
* If the queue has ContentBasedDeduplication
set, your
* MessageDeduplicationId
overrides the generated one.
*
* When ContentBasedDeduplication
is in effect, messages with
* identical content sent within the deduplication interval are treated as
* duplicates and only one copy of the message is delivered.
*
* You can also use ContentBasedDeduplication
for messages with
* identical content to be treated as duplicates.
*
* If you send one message with ContentBasedDeduplication
* enabled and then another message with a
* MessageDeduplicationId
that is the same as the one generated
* for the first MessageDeduplicationId
, the two messages are
* treated as duplicates and only one copy of the message is delivered.
*
* Any other valid special request parameters that are specified (such as
* ApproximateNumberOfMessages
,
* ApproximateNumberOfMessagesDelayed
,
* ApproximateNumberOfMessagesNotVisible
,
* CreatedTimestamp
, LastModifiedTimestamp
, and
* QueueArn
) will be ignored.
*
* A map of attributes to set. *
*
* The following lists the names, descriptions, and values of the
* special request parameters that the
* SetQueueAttributes
action uses:
*
* DelaySeconds
- The number of seconds for which
* the delivery of all messages in the queue is delayed. An
* integer from 0 to 900 (15 minutes). The default is 0 (zero).
*
* MaximumMessageSize
- The limit of how many bytes
* a message can contain before Amazon SQS rejects it. An integer
* from 1,024 bytes (1 KiB) up to 262,144 bytes (256 KiB). The
* default is 262,144 (256 KiB).
*
* MessageRetentionPeriod
- The number of seconds
* for which Amazon SQS retains a message. An integer
* representing seconds, from 60 (1 minute) to 120,9600 (14
* days). The default is 345,600 (4 days).
*
* Policy
- The queue's policy. A valid AWS policy.
* For more information about policy structure, see Overview of AWS IAM Policies in the Amazon IAM User
* Guide.
*
* ReceiveMessageWaitTimeSeconds
- The number of
* seconds for which a ReceiveMessage action will wait for
* a message to arrive. An integer from 0 to 20 (seconds). The
* default is 0.
*
* RedrivePolicy
- The parameters for the dead
* letter queue functionality of the source queue. For more
* information about the redrive policy and dead letter queues,
* see Using Amazon SQS Dead Letter Queues in the Amazon SQS
* Developer Guide.
*
* The dead letter queue of a FIFO queue must also be a FIFO * queue. Similarly, the dead letter queue of a standard queue * must also be a standard queue. *
*
* VisibilityTimeout
- The visibility timeout for
* the queue. An integer from 0 to 43200 (12 hours). The default
* is 30. For more information about the visibility timeout, see
* Visibility Timeout in the Amazon SQS Developer
* Guide.
*
* The following attribute applies only to FIFO (first-in-first-out) queues: *
*
* ContentBasedDeduplication
- Enables content-based
* deduplication. For more information, see Exactly-Once Processing in the Amazon SQS Developer
* Guide.
*
* Every message must have a unique
* MessageDeduplicationId
,
*
* You may provide a MessageDeduplicationId
* explicitly.
*
* If you aren't able to provide a
* MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your queue, Amazon
* SQS uses a SHA-256 hash to generate the
* MessageDeduplicationId
using the body of the
* message (but not the attributes of the message).
*
* If you don't provide a MessageDeduplicationId
and
* the queue doesn't have ContentBasedDeduplication
* set, the action fails with an error.
*
* If the queue has ContentBasedDeduplication
set,
* your MessageDeduplicationId
overrides the
* generated one.
*
* When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication
* interval are treated as duplicates and only one copy of the
* message is delivered.
*
* You can also use ContentBasedDeduplication
for
* messages with identical content to be treated as duplicates.
*
* If you send one message with
* ContentBasedDeduplication
enabled and then
* another message with a MessageDeduplicationId
* that is the same as the one generated for the first
* MessageDeduplicationId
, the two messages are
* treated as duplicates and only one copy of the message is
* delivered.
*
* Any other valid special request parameters that are specified
* (such as ApproximateNumberOfMessages
,
* ApproximateNumberOfMessagesDelayed
,
* ApproximateNumberOfMessagesNotVisible
,
* CreatedTimestamp
,
* LastModifiedTimestamp
, and QueueArn
)
* will be ignored.
*
* A map of attributes to set. *
*
* The following lists the names, descriptions, and values of the special
* request parameters that the SetQueueAttributes
action uses:
*
* DelaySeconds
- The number of seconds for which the delivery
* of all messages in the queue is delayed. An integer from 0 to 900 (15
* minutes). The default is 0 (zero).
*
* MaximumMessageSize
- The limit of how many bytes a message
* can contain before Amazon SQS rejects it. An integer from 1,024 bytes (1
* KiB) up to 262,144 bytes (256 KiB). The default is 262,144 (256 KiB).
*
* MessageRetentionPeriod
- The number of seconds for which
* Amazon SQS retains a message. An integer representing seconds, from 60 (1
* minute) to 120,9600 (14 days). The default is 345,600 (4 days).
*
* Policy
- The queue's policy. A valid AWS policy. For more
* information about policy structure, see Overview of AWS IAM Policies in the Amazon IAM User Guide.
*
* ReceiveMessageWaitTimeSeconds
- The number of seconds for
* which a ReceiveMessage action will wait for a message to arrive.
* An integer from 0 to 20 (seconds). The default is 0.
*
* RedrivePolicy
- The parameters for the dead letter queue
* functionality of the source queue. For more information about the redrive
* policy and dead letter queues, see Using Amazon SQS Dead Letter Queues in the Amazon SQS Developer
* Guide.
*
* The dead letter queue of a FIFO queue must also be a FIFO queue. * Similarly, the dead letter queue of a standard queue must also be a * standard queue. *
*
* VisibilityTimeout
- The visibility timeout for the queue. An
* integer from 0 to 43200 (12 hours). The default is 30. For more
* information about the visibility timeout, see Visibility Timeout in the Amazon SQS Developer Guide.
*
* The following attribute applies only to FIFO (first-in-first-out) queues: *
*
* ContentBasedDeduplication
- Enables content-based
* deduplication. For more information, see Exactly-Once Processing in the Amazon SQS Developer Guide.
*
* Every message must have a unique MessageDeduplicationId
,
*
* You may provide a MessageDeduplicationId
explicitly.
*
* If you aren't able to provide a MessageDeduplicationId
and
* you enable ContentBasedDeduplication
for your queue, Amazon
* SQS uses a SHA-256 hash to generate the
* MessageDeduplicationId
using the body of the message (but
* not the attributes of the message).
*
* If you don't provide a MessageDeduplicationId
and the queue
* doesn't have ContentBasedDeduplication
set, the action fails
* with an error.
*
* If the queue has ContentBasedDeduplication
set, your
* MessageDeduplicationId
overrides the generated one.
*
* When ContentBasedDeduplication
is in effect, messages with
* identical content sent within the deduplication interval are treated as
* duplicates and only one copy of the message is delivered.
*
* You can also use ContentBasedDeduplication
for messages with
* identical content to be treated as duplicates.
*
* If you send one message with ContentBasedDeduplication
* enabled and then another message with a
* MessageDeduplicationId
that is the same as the one generated
* for the first MessageDeduplicationId
, the two messages are
* treated as duplicates and only one copy of the message is delivered.
*
* Any other valid special request parameters that are specified (such as
* ApproximateNumberOfMessages
,
* ApproximateNumberOfMessagesDelayed
,
* ApproximateNumberOfMessagesNotVisible
,
* CreatedTimestamp
, LastModifiedTimestamp
, and
* QueueArn
) will be ignored.
*
* Returns a reference to this object so that method calls can be chained * together. * * @param attributes
* A map of attributes to set. *
*
* The following lists the names, descriptions, and values of the
* special request parameters that the
* SetQueueAttributes
action uses:
*
* DelaySeconds
- The number of seconds for which
* the delivery of all messages in the queue is delayed. An
* integer from 0 to 900 (15 minutes). The default is 0 (zero).
*
* MaximumMessageSize
- The limit of how many bytes
* a message can contain before Amazon SQS rejects it. An integer
* from 1,024 bytes (1 KiB) up to 262,144 bytes (256 KiB). The
* default is 262,144 (256 KiB).
*
* MessageRetentionPeriod
- The number of seconds
* for which Amazon SQS retains a message. An integer
* representing seconds, from 60 (1 minute) to 120,9600 (14
* days). The default is 345,600 (4 days).
*
* Policy
- The queue's policy. A valid AWS policy.
* For more information about policy structure, see Overview of AWS IAM Policies in the Amazon IAM User
* Guide.
*
* ReceiveMessageWaitTimeSeconds
- The number of
* seconds for which a ReceiveMessage action will wait for
* a message to arrive. An integer from 0 to 20 (seconds). The
* default is 0.
*
* RedrivePolicy
- The parameters for the dead
* letter queue functionality of the source queue. For more
* information about the redrive policy and dead letter queues,
* see Using Amazon SQS Dead Letter Queues in the Amazon SQS
* Developer Guide.
*
* The dead letter queue of a FIFO queue must also be a FIFO * queue. Similarly, the dead letter queue of a standard queue * must also be a standard queue. *
*
* VisibilityTimeout
- The visibility timeout for
* the queue. An integer from 0 to 43200 (12 hours). The default
* is 30. For more information about the visibility timeout, see
* Visibility Timeout in the Amazon SQS Developer
* Guide.
*
* The following attribute applies only to FIFO (first-in-first-out) queues: *
*
* ContentBasedDeduplication
- Enables content-based
* deduplication. For more information, see Exactly-Once Processing in the Amazon SQS Developer
* Guide.
*
* Every message must have a unique
* MessageDeduplicationId
,
*
* You may provide a MessageDeduplicationId
* explicitly.
*
* If you aren't able to provide a
* MessageDeduplicationId
and you enable
* ContentBasedDeduplication
for your queue, Amazon
* SQS uses a SHA-256 hash to generate the
* MessageDeduplicationId
using the body of the
* message (but not the attributes of the message).
*
* If you don't provide a MessageDeduplicationId
and
* the queue doesn't have ContentBasedDeduplication
* set, the action fails with an error.
*
* If the queue has ContentBasedDeduplication
set,
* your MessageDeduplicationId
overrides the
* generated one.
*
* When ContentBasedDeduplication
is in effect,
* messages with identical content sent within the deduplication
* interval are treated as duplicates and only one copy of the
* message is delivered.
*
* You can also use ContentBasedDeduplication
for
* messages with identical content to be treated as duplicates.
*
* If you send one message with
* ContentBasedDeduplication
enabled and then
* another message with a MessageDeduplicationId
* that is the same as the one generated for the first
* MessageDeduplicationId
, the two messages are
* treated as duplicates and only one copy of the message is
* delivered.
*
* Any other valid special request parameters that are specified
* (such as ApproximateNumberOfMessages
,
* ApproximateNumberOfMessagesDelayed
,
* ApproximateNumberOfMessagesNotVisible
,
* CreatedTimestamp
,
* LastModifiedTimestamp
, and QueueArn
)
* will be ignored.
*
* A map of attributes to set. *
*
* The following lists the names, descriptions, and values of the special
* request parameters that the SetQueueAttributes
action uses:
*
* DelaySeconds
- The number of seconds for which the delivery
* of all messages in the queue is delayed. An integer from 0 to 900 (15
* minutes). The default is 0 (zero).
*
* MaximumMessageSize
- The limit of how many bytes a message
* can contain before Amazon SQS rejects it. An integer from 1,024 bytes (1
* KiB) up to 262,144 bytes (256 KiB). The default is 262,144 (256 KiB).
*
* MessageRetentionPeriod
- The number of seconds for which
* Amazon SQS retains a message. An integer representing seconds, from 60 (1
* minute) to 120,9600 (14 days). The default is 345,600 (4 days).
*
* Policy
- The queue's policy. A valid AWS policy. For more
* information about policy structure, see Overview of AWS IAM Policies in the Amazon IAM User Guide.
*
* ReceiveMessageWaitTimeSeconds
- The number of seconds for
* which a ReceiveMessage action will wait for a message to arrive.
* An integer from 0 to 20 (seconds). The default is 0.
*
* RedrivePolicy
- The parameters for the dead letter queue
* functionality of the source queue. For more information about the redrive
* policy and dead letter queues, see Using Amazon SQS Dead Letter Queues in the Amazon SQS Developer
* Guide.
*
* The dead letter queue of a FIFO queue must also be a FIFO queue. * Similarly, the dead letter queue of a standard queue must also be a * standard queue. *
*
* VisibilityTimeout
- The visibility timeout for the queue. An
* integer from 0 to 43200 (12 hours). The default is 30. For more
* information about the visibility timeout, see Visibility Timeout in the Amazon SQS Developer Guide.
*
* The following attribute applies only to FIFO (first-in-first-out) queues: *
*
* ContentBasedDeduplication
- Enables content-based
* deduplication. For more information, see Exactly-Once Processing in the Amazon SQS Developer Guide.
*
* Every message must have a unique MessageDeduplicationId
,
*
* You may provide a MessageDeduplicationId
explicitly.
*
* If you aren't able to provide a MessageDeduplicationId
and
* you enable ContentBasedDeduplication
for your queue, Amazon
* SQS uses a SHA-256 hash to generate the
* MessageDeduplicationId
using the body of the message (but
* not the attributes of the message).
*
* If you don't provide a MessageDeduplicationId
and the queue
* doesn't have ContentBasedDeduplication
set, the action fails
* with an error.
*
* If the queue has ContentBasedDeduplication
set, your
* MessageDeduplicationId
overrides the generated one.
*
* When ContentBasedDeduplication
is in effect, messages with
* identical content sent within the deduplication interval are treated as
* duplicates and only one copy of the message is delivered.
*
* You can also use ContentBasedDeduplication
for messages with
* identical content to be treated as duplicates.
*
* If you send one message with ContentBasedDeduplication
* enabled and then another message with a
* MessageDeduplicationId
that is the same as the one generated
* for the first MessageDeduplicationId
, the two messages are
* treated as duplicates and only one copy of the message is delivered.
*
* Any other valid special request parameters that are specified (such as
* ApproximateNumberOfMessages
,
* ApproximateNumberOfMessagesDelayed
,
* ApproximateNumberOfMessagesNotVisible
,
* CreatedTimestamp
, LastModifiedTimestamp
, and
* QueueArn
) will be ignored.
*
* The method adds a new key-value pair into Attributes parameter, and
* returns a reference to this object so that method calls can be chained
* together.
*
* @param key The key of the entry to be added into Attributes.
* @param value The corresponding value of the entry to be added into
* Attributes.
* @return A reference to this updated object so that method calls can be
* chained together.
*/
public SetQueueAttributesRequest addAttributesEntry(String key, String value) {
if (null == this.attributes) {
this.attributes = new java.util.HashMap
* Returns a reference to this object so that method calls can be chained
* together.
*/
public SetQueueAttributesRequest clearAttributesEntries() {
this.attributes = null;
return this;
}
/**
* Returns a string representation of this object; useful for testing and
* debugging.
*
* @return A string representation of this object.
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getQueueUrl() != null)
sb.append("QueueUrl: " + getQueueUrl() + ",");
if (getAttributes() != null)
sb.append("Attributes: " + getAttributes());
sb.append("}");
return sb.toString();
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getQueueUrl() == null) ? 0 : getQueueUrl().hashCode());
hashCode = prime * hashCode + ((getAttributes() == null) ? 0 : getAttributes().hashCode());
return hashCode;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof SetQueueAttributesRequest == false)
return false;
SetQueueAttributesRequest other = (SetQueueAttributesRequest) obj;
if (other.getQueueUrl() == null ^ this.getQueueUrl() == null)
return false;
if (other.getQueueUrl() != null && other.getQueueUrl().equals(this.getQueueUrl()) == false)
return false;
if (other.getAttributes() == null ^ this.getAttributes() == null)
return false;
if (other.getAttributes() != null
&& other.getAttributes().equals(this.getAttributes()) == false)
return false;
return true;
}
}