Modifier and Type | Method and Description |
---|---|
Queue |
build() |
Queue.Builder |
contentBasedDeduplication(java.lang.Boolean contentBasedDeduplication)
Specifies whether to enable content-based deduplication.
|
static Queue.Builder |
create(software.constructs.Construct scope,
java.lang.String id) |
Queue.Builder |
dataKeyReuse(Duration dataKeyReuse)
The length of time that Amazon SQS reuses a data key before calling KMS again.
|
Queue.Builder |
deadLetterQueue(DeadLetterQueue deadLetterQueue)
Send messages to this queue if they were unsuccessfully dequeued a number of times.
|
Queue.Builder |
deduplicationScope(DeduplicationScope deduplicationScope)
For high throughput for FIFO queues, specifies whether message deduplication occurs at the message group or queue level.
|
Queue.Builder |
deliveryDelay(Duration deliveryDelay)
The time in seconds that the delivery of all messages in the queue is delayed.
|
Queue.Builder |
encryption(QueueEncryption encryption)
Whether the contents of the queue are encrypted, and by what type of key.
|
Queue.Builder |
encryptionMasterKey(IKey encryptionMasterKey)
External KMS master key to use for queue encryption.
|
Queue.Builder |
fifo(java.lang.Boolean fifo)
Whether this a first-in-first-out (FIFO) queue.
|
Queue.Builder |
fifoThroughputLimit(FifoThroughputLimit fifoThroughputLimit)
For high throughput for FIFO queues, specifies whether the FIFO queue throughput quota applies to the entire queue or per message group.
|
Queue.Builder |
maxMessageSizeBytes(java.lang.Number maxMessageSizeBytes)
The limit of how many bytes that a message can contain before Amazon SQS rejects it.
|
Queue.Builder |
queueName(java.lang.String queueName)
A name for the queue.
|
Queue.Builder |
receiveMessageWaitTime(Duration receiveMessageWaitTime)
Default wait time for ReceiveMessage calls.
|
Queue.Builder |
removalPolicy(RemovalPolicy removalPolicy)
Policy to apply when the queue is removed from the stack.
|
Queue.Builder |
retentionPeriod(Duration retentionPeriod)
The number of seconds that Amazon SQS retains a message.
|
Queue.Builder |
visibilityTimeout(Duration visibilityTimeout)
Timeout of processing a single message.
|
public static Queue.Builder create(software.constructs.Construct scope, java.lang.String id)
scope
- This parameter is required.id
- This parameter is required.Queue.Builder
.public Queue.Builder contentBasedDeduplication(java.lang.Boolean contentBasedDeduplication)
During the deduplication interval (5 minutes), Amazon SQS treats messages that are sent with identical content (excluding attributes) as duplicates and delivers only one copy of the message.
If you don't enable content-based deduplication and you want to deduplicate messages, provide an explicit deduplication ID in your SendMessage() call.
(Only applies to FIFO queues.)
Default: false
contentBasedDeduplication
- Specifies whether to enable content-based deduplication. This parameter is required.this
public Queue.Builder dataKeyReuse(Duration dataKeyReuse)
The value must be an integer between 60 (1 minute) and 86,400 (24 hours). The default is 300 (5 minutes).
Default: Duration.minutes(5)
dataKeyReuse
- The length of time that Amazon SQS reuses a data key before calling KMS again. This parameter is required.this
public Queue.Builder deadLetterQueue(DeadLetterQueue deadLetterQueue)
Default: no dead-letter queue
deadLetterQueue
- Send messages to this queue if they were unsuccessfully dequeued a number of times. This parameter is required.this
public Queue.Builder deduplicationScope(DeduplicationScope deduplicationScope)
(Only applies to FIFO queues.)
Default: DeduplicationScope.QUEUE
deduplicationScope
- For high throughput for FIFO queues, specifies whether message deduplication occurs at the message group or queue level. This parameter is required.this
public Queue.Builder deliveryDelay(Duration deliveryDelay)
You can specify an integer value of 0 to 900 (15 minutes). The default value is 0.
Default: 0
deliveryDelay
- The time in seconds that the delivery of all messages in the queue is delayed. This parameter is required.this
public Queue.Builder encryption(QueueEncryption encryption)
Be aware that encryption is not available in all regions, please see the docs for current availability details.
Default: Unencrypted
encryption
- Whether the contents of the queue are encrypted, and by what type of key. This parameter is required.this
public Queue.Builder encryptionMasterKey(IKey encryptionMasterKey)
Individual messages will be encrypted using data keys. The data keys in
turn will be encrypted using this key, and reused for a maximum of
dataKeyReuseSecs
seconds.
If the 'encryptionMasterKey' property is set, 'encryption' type will be implicitly set to "KMS".
Default: If encryption is set to KMS and not specified, a key will be created.
encryptionMasterKey
- External KMS master key to use for queue encryption. This parameter is required.this
public Queue.Builder fifo(java.lang.Boolean fifo)
Default: false, unless queueName ends in '.fifo' or 'contentBasedDeduplication' is true.
fifo
- Whether this a first-in-first-out (FIFO) queue. This parameter is required.this
public Queue.Builder fifoThroughputLimit(FifoThroughputLimit fifoThroughputLimit)
(Only applies to FIFO queues.)
Default: FifoThroughputLimit.PER_QUEUE
fifoThroughputLimit
- For high throughput for FIFO queues, specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. This parameter is required.this
public Queue.Builder maxMessageSizeBytes(java.lang.Number maxMessageSizeBytes)
You can specify an integer value from 1024 bytes (1 KiB) to 262144 bytes (256 KiB). The default value is 262144 (256 KiB).
Default: 256KiB
maxMessageSizeBytes
- The limit of how many bytes that a message can contain before Amazon SQS rejects it. This parameter is required.this
public Queue.Builder queueName(java.lang.String queueName)
If specified and this is a FIFO queue, must end in the string '.fifo'.
Default: CloudFormation-generated name
queueName
- A name for the queue. This parameter is required.this
public Queue.Builder receiveMessageWaitTime(Duration receiveMessageWaitTime)
Does not wait if set to 0, otherwise waits this amount of seconds by default for messages to arrive.
For more information, see Amazon SQS Long Poll.
Default: 0
receiveMessageWaitTime
- Default wait time for ReceiveMessage calls. This parameter is required.this
public Queue.Builder removalPolicy(RemovalPolicy removalPolicy)
Even though queues are technically stateful, their contents are transient and it
is common to add and remove Queues while rearchitecting your application. The
default is therefore DESTROY
. Change it to RETAIN
if the messages are so
valuable that accidentally losing them would be unacceptable.
Default: RemovalPolicy.DESTROY
removalPolicy
- Policy to apply when the queue is removed from the stack. This parameter is required.this
public Queue.Builder retentionPeriod(Duration retentionPeriod)
You can specify an integer value from 60 seconds (1 minute) to 1209600 seconds (14 days). The default value is 345600 seconds (4 days).
Default: Duration.days(4)
retentionPeriod
- The number of seconds that Amazon SQS retains a message. This parameter is required.this
public Queue.Builder visibilityTimeout(Duration visibilityTimeout)
After dequeuing, the processor has this much time to handle the message and delete it from the queue before it becomes visible again for dequeueing by another processor.
Values must be from 0 to 43200 seconds (12 hours). If you don't specify a value, AWS CloudFormation uses the default value of 30 seconds.
Default: Duration.seconds(30)
visibilityTimeout
- Timeout of processing a single message. This parameter is required.this
public Queue build()