awssqs

package
v1.128.0-devpreview Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 14, 2021 License: Apache-2.0 Imports: 9 Imported by: 13

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CfnQueuePolicy_CFN_RESOURCE_TYPE_NAME

func CfnQueuePolicy_CFN_RESOURCE_TYPE_NAME() *string

func CfnQueuePolicy_IsCfnElement

func CfnQueuePolicy_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnQueuePolicy_IsCfnResource

func CfnQueuePolicy_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnQueuePolicy_IsConstruct

func CfnQueuePolicy_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func CfnQueue_CFN_RESOURCE_TYPE_NAME

func CfnQueue_CFN_RESOURCE_TYPE_NAME() *string

func CfnQueue_IsCfnElement

func CfnQueue_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnQueue_IsCfnResource

func CfnQueue_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnQueue_IsConstruct

func CfnQueue_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func NewCfnQueuePolicy_Override

func NewCfnQueuePolicy_Override(c CfnQueuePolicy, scope awscdk.Construct, id *string, props *CfnQueuePolicyProps)

Create a new `AWS::SQS::QueuePolicy`.

func NewCfnQueue_Override

func NewCfnQueue_Override(c CfnQueue, scope awscdk.Construct, id *string, props *CfnQueueProps)

Create a new `AWS::SQS::Queue`.

func NewQueueBase_Override

func NewQueueBase_Override(q QueueBase, scope constructs.Construct, id *string, props *awscdk.ResourceProps)

Experimental.

func NewQueuePolicy_Override

func NewQueuePolicy_Override(q QueuePolicy, scope constructs.Construct, id *string, props *QueuePolicyProps)

Experimental.

func NewQueue_Override

func NewQueue_Override(q Queue, scope constructs.Construct, id *string, props *QueueProps)

Experimental.

func QueueBase_IsConstruct

func QueueBase_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func QueueBase_IsResource

func QueueBase_IsResource(construct awscdk.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func QueuePolicy_IsConstruct

func QueuePolicy_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func QueuePolicy_IsResource

func QueuePolicy_IsResource(construct awscdk.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

func Queue_IsConstruct

func Queue_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func Queue_IsResource

func Queue_IsResource(construct awscdk.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

Types

type CfnQueue

type CfnQueue interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttrQueueName() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	ContentBasedDeduplication() interface{}
	SetContentBasedDeduplication(val interface{})
	CreationStack() *[]*string
	DeduplicationScope() *string
	SetDeduplicationScope(val *string)
	DelaySeconds() *float64
	SetDelaySeconds(val *float64)
	FifoQueue() interface{}
	SetFifoQueue(val interface{})
	FifoThroughputLimit() *string
	SetFifoThroughputLimit(val *string)
	KmsDataKeyReusePeriodSeconds() *float64
	SetKmsDataKeyReusePeriodSeconds(val *float64)
	KmsMasterKeyId() *string
	SetKmsMasterKeyId(val *string)
	LogicalId() *string
	MaximumMessageSize() *float64
	SetMaximumMessageSize(val *float64)
	MessageRetentionPeriod() *float64
	SetMessageRetentionPeriod(val *float64)
	Node() awscdk.ConstructNode
	QueueName() *string
	SetQueueName(val *string)
	ReceiveMessageWaitTimeSeconds() *float64
	SetReceiveMessageWaitTimeSeconds(val *float64)
	RedriveAllowPolicy() interface{}
	SetRedriveAllowPolicy(val interface{})
	RedrivePolicy() interface{}
	SetRedrivePolicy(val interface{})
	Ref() *string
	Stack() awscdk.Stack
	Tags() awscdk.TagManager
	UpdatedProperites() *map[string]interface{}
	VisibilityTimeout() *float64
	SetVisibilityTimeout(val *float64)
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	OverrideLogicalId(newLogicalId *string)
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::SQS::Queue`.

func NewCfnQueue

func NewCfnQueue(scope awscdk.Construct, id *string, props *CfnQueueProps) CfnQueue

Create a new `AWS::SQS::Queue`.

type CfnQueuePolicy

type CfnQueuePolicy interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrId() *string
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	LogicalId() *string
	Node() awscdk.ConstructNode
	PolicyDocument() interface{}
	SetPolicyDocument(val interface{})
	Queues() *[]*string
	SetQueues(val *[]*string)
	Ref() *string
	Stack() awscdk.Stack
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	OverrideLogicalId(newLogicalId *string)
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::SQS::QueuePolicy`.

func NewCfnQueuePolicy

func NewCfnQueuePolicy(scope awscdk.Construct, id *string, props *CfnQueuePolicyProps) CfnQueuePolicy

Create a new `AWS::SQS::QueuePolicy`.

type CfnQueuePolicyProps

type CfnQueuePolicyProps struct {
	// `AWS::SQS::QueuePolicy.PolicyDocument`.
	PolicyDocument interface{} `json:"policyDocument"`
	// `AWS::SQS::QueuePolicy.Queues`.
	Queues *[]*string `json:"queues"`
}

Properties for defining a `AWS::SQS::QueuePolicy`.

type CfnQueueProps

type CfnQueueProps struct {
	// `AWS::SQS::Queue.ContentBasedDeduplication`.
	ContentBasedDeduplication interface{} `json:"contentBasedDeduplication"`
	// `AWS::SQS::Queue.DeduplicationScope`.
	DeduplicationScope *string `json:"deduplicationScope"`
	// `AWS::SQS::Queue.DelaySeconds`.
	DelaySeconds *float64 `json:"delaySeconds"`
	// `AWS::SQS::Queue.FifoQueue`.
	FifoQueue interface{} `json:"fifoQueue"`
	// `AWS::SQS::Queue.FifoThroughputLimit`.
	FifoThroughputLimit *string `json:"fifoThroughputLimit"`
	// `AWS::SQS::Queue.KmsDataKeyReusePeriodSeconds`.
	KmsDataKeyReusePeriodSeconds *float64 `json:"kmsDataKeyReusePeriodSeconds"`
	// `AWS::SQS::Queue.KmsMasterKeyId`.
	KmsMasterKeyId *string `json:"kmsMasterKeyId"`
	// `AWS::SQS::Queue.MaximumMessageSize`.
	MaximumMessageSize *float64 `json:"maximumMessageSize"`
	// `AWS::SQS::Queue.MessageRetentionPeriod`.
	MessageRetentionPeriod *float64 `json:"messageRetentionPeriod"`
	// `AWS::SQS::Queue.QueueName`.
	QueueName *string `json:"queueName"`
	// `AWS::SQS::Queue.ReceiveMessageWaitTimeSeconds`.
	ReceiveMessageWaitTimeSeconds *float64 `json:"receiveMessageWaitTimeSeconds"`
	// `AWS::SQS::Queue.RedriveAllowPolicy`.
	RedriveAllowPolicy interface{} `json:"redriveAllowPolicy"`
	// `AWS::SQS::Queue.RedrivePolicy`.
	RedrivePolicy interface{} `json:"redrivePolicy"`
	// `AWS::SQS::Queue.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `AWS::SQS::Queue.VisibilityTimeout`.
	VisibilityTimeout *float64 `json:"visibilityTimeout"`
}

Properties for defining a `AWS::SQS::Queue`.

type DeadLetterQueue

type DeadLetterQueue struct {
	// The number of times a message can be unsuccesfully dequeued before being moved to the dead-letter queue.
	// Experimental.
	MaxReceiveCount *float64 `json:"maxReceiveCount"`
	// The dead-letter queue to which Amazon SQS moves messages after the value of maxReceiveCount is exceeded.
	// Experimental.
	Queue IQueue `json:"queue"`
}

Dead letter queue settings. Experimental.

type DeduplicationScope

type DeduplicationScope string

What kind of deduplication scope to apply. Experimental.

const (
	DeduplicationScope_MESSAGE_GROUP DeduplicationScope = "MESSAGE_GROUP"
	DeduplicationScope_QUEUE         DeduplicationScope = "QUEUE"
)

type FifoThroughputLimit

type FifoThroughputLimit string

Whether the FIFO queue throughput quota applies to the entire queue or per message group. Experimental.

const (
	FifoThroughputLimit_PER_QUEUE            FifoThroughputLimit = "PER_QUEUE"
	FifoThroughputLimit_PER_MESSAGE_GROUP_ID FifoThroughputLimit = "PER_MESSAGE_GROUP_ID"
)

type IQueue

type IQueue interface {
	awscdk.IResource
	// Adds a statement to the IAM resource policy associated with this queue.
	//
	// If this queue was created in this stack (`new Queue`), a queue policy
	// will be automatically created upon the first call to `addToPolicy`. If
	// the queue is imported (`Queue.import`), then this is a no-op.
	// Experimental.
	AddToResourcePolicy(statement awsiam.PolicyStatement) *awsiam.AddToResourcePolicyResult
	// Grant the actions defined in queueActions to the identity Principal given on this SQS queue resource.
	// Experimental.
	Grant(grantee awsiam.IGrantable, queueActions ...*string) awsiam.Grant
	// Grant permissions to consume messages from a queue.
	//
	// This will grant the following permissions:
	//
	//    - sqs:ChangeMessageVisibility
	//    - sqs:DeleteMessage
	//    - sqs:ReceiveMessage
	//    - sqs:GetQueueAttributes
	//    - sqs:GetQueueUrl
	// Experimental.
	GrantConsumeMessages(grantee awsiam.IGrantable) awsiam.Grant
	// Grant an IAM principal permissions to purge all messages from the queue.
	//
	// This will grant the following permissions:
	//
	//   - sqs:PurgeQueue
	//   - sqs:GetQueueAttributes
	//   - sqs:GetQueueUrl
	// Experimental.
	GrantPurge(grantee awsiam.IGrantable) awsiam.Grant
	// Grant access to send messages to a queue to the given identity.
	//
	// This will grant the following permissions:
	//
	//   - sqs:SendMessage
	//   - sqs:GetQueueAttributes
	//   - sqs:GetQueueUrl
	// Experimental.
	GrantSendMessages(grantee awsiam.IGrantable) awsiam.Grant
	// Return the given named metric for this Queue.
	// Experimental.
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// The approximate age of the oldest non-deleted message in the queue.
	//
	// Maximum over 5 minutes
	// Experimental.
	MetricApproximateAgeOfOldestMessage(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// The number of messages in the queue that are delayed and not available for reading immediately.
	//
	// Maximum over 5 minutes
	// Experimental.
	MetricApproximateNumberOfMessagesDelayed(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// The number of messages that are in flight.
	//
	// Maximum over 5 minutes
	// Experimental.
	MetricApproximateNumberOfMessagesNotVisible(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// The number of messages available for retrieval from the queue.
	//
	// Maximum over 5 minutes
	// Experimental.
	MetricApproximateNumberOfMessagesVisible(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// The number of ReceiveMessage API calls that did not return a message.
	//
	// Sum over 5 minutes
	// Experimental.
	MetricNumberOfEmptyReceives(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// The number of messages deleted from the queue.
	//
	// Sum over 5 minutes
	// Experimental.
	MetricNumberOfMessagesDeleted(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// The number of messages returned by calls to the ReceiveMessage action.
	//
	// Sum over 5 minutes
	// Experimental.
	MetricNumberOfMessagesReceived(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// The number of messages added to a queue.
	//
	// Sum over 5 minutes
	// Experimental.
	MetricNumberOfMessagesSent(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// The size of messages added to a queue.
	//
	// Average over 5 minutes
	// Experimental.
	MetricSentMessageSize(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// If this queue is server-side encrypted, this is the KMS encryption key.
	// Experimental.
	EncryptionMasterKey() awskms.IKey
	// Whether this queue is an Amazon SQS FIFO queue.
	//
	// If false, this is a standard queue.
	// Experimental.
	Fifo() *bool
	// The ARN of this queue.
	// Experimental.
	QueueArn() *string
	// The name of this queue.
	// Experimental.
	QueueName() *string
	// The URL of this queue.
	// Experimental.
	QueueUrl() *string
}

Represents an SQS queue. Experimental.

func Queue_FromQueueArn

func Queue_FromQueueArn(scope constructs.Construct, id *string, queueArn *string) IQueue

Import an existing SQS queue provided an ARN. Experimental.

func Queue_FromQueueAttributes

func Queue_FromQueueAttributes(scope constructs.Construct, id *string, attrs *QueueAttributes) IQueue

Import an existing queue. Experimental.

type Queue

type Queue interface {
	QueueBase
	AutoCreatePolicy() *bool
	EncryptionMasterKey() awskms.IKey
	Env() *awscdk.ResourceEnvironment
	Fifo() *bool
	Node() awscdk.ConstructNode
	PhysicalName() *string
	QueueArn() *string
	QueueName() *string
	QueueUrl() *string
	Stack() awscdk.Stack
	AddToResourcePolicy(statement awsiam.PolicyStatement) *awsiam.AddToResourcePolicyResult
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	Grant(grantee awsiam.IGrantable, actions ...*string) awsiam.Grant
	GrantConsumeMessages(grantee awsiam.IGrantable) awsiam.Grant
	GrantPurge(grantee awsiam.IGrantable) awsiam.Grant
	GrantSendMessages(grantee awsiam.IGrantable) awsiam.Grant
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricApproximateAgeOfOldestMessage(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricApproximateNumberOfMessagesDelayed(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricApproximateNumberOfMessagesNotVisible(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricApproximateNumberOfMessagesVisible(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricNumberOfEmptyReceives(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricNumberOfMessagesDeleted(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricNumberOfMessagesReceived(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricNumberOfMessagesSent(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricSentMessageSize(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	Prepare()
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
}

A new Amazon SQS queue. Experimental.

func NewQueue

func NewQueue(scope constructs.Construct, id *string, props *QueueProps) Queue

Experimental.

type QueueAttributes

type QueueAttributes struct {
	// The ARN of the queue.
	// Experimental.
	QueueArn *string `json:"queueArn"`
	// Whether this queue is an Amazon SQS FIFO queue. If false, this is a standard queue.
	//
	// In case of a FIFO queue which is imported from a token, this value has to be explicitly set to true.
	// Experimental.
	Fifo *bool `json:"fifo"`
	// KMS encryption key, if this queue is server-side encrypted by a KMS key.
	// Experimental.
	KeyArn *string `json:"keyArn"`
	// The name of the queue.
	// Experimental.
	QueueName *string `json:"queueName"`
	// The URL of the queue.
	// See: https://docs.aws.amazon.com/sdk-for-net/v2/developer-guide/QueueURL.html
	//
	// Experimental.
	QueueUrl *string `json:"queueUrl"`
}

Reference to a queue. Experimental.

type QueueBase

type QueueBase interface {
	awscdk.Resource
	IQueue
	AutoCreatePolicy() *bool
	EncryptionMasterKey() awskms.IKey
	Env() *awscdk.ResourceEnvironment
	Fifo() *bool
	Node() awscdk.ConstructNode
	PhysicalName() *string
	QueueArn() *string
	QueueName() *string
	QueueUrl() *string
	Stack() awscdk.Stack
	AddToResourcePolicy(statement awsiam.PolicyStatement) *awsiam.AddToResourcePolicyResult
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	Grant(grantee awsiam.IGrantable, actions ...*string) awsiam.Grant
	GrantConsumeMessages(grantee awsiam.IGrantable) awsiam.Grant
	GrantPurge(grantee awsiam.IGrantable) awsiam.Grant
	GrantSendMessages(grantee awsiam.IGrantable) awsiam.Grant
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricApproximateAgeOfOldestMessage(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricApproximateNumberOfMessagesDelayed(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricApproximateNumberOfMessagesNotVisible(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricApproximateNumberOfMessagesVisible(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricNumberOfEmptyReceives(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricNumberOfMessagesDeleted(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricNumberOfMessagesReceived(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricNumberOfMessagesSent(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricSentMessageSize(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	Prepare()
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
}

Reference to a new or existing Amazon SQS queue. Experimental.

type QueueEncryption

type QueueEncryption string

What kind of encryption to apply to this queue. Experimental.

const (
	QueueEncryption_UNENCRYPTED QueueEncryption = "UNENCRYPTED"
	QueueEncryption_KMS_MANAGED QueueEncryption = "KMS_MANAGED"
	QueueEncryption_KMS         QueueEncryption = "KMS"
)

type QueuePolicy

type QueuePolicy interface {
	awscdk.Resource
	Document() awsiam.PolicyDocument
	Env() *awscdk.ResourceEnvironment
	Node() awscdk.ConstructNode
	PhysicalName() *string
	QueuePolicyId() *string
	Stack() awscdk.Stack
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	Prepare()
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
}

Applies a policy to SQS queues. Experimental.

func NewQueuePolicy

func NewQueuePolicy(scope constructs.Construct, id *string, props *QueuePolicyProps) QueuePolicy

Experimental.

type QueuePolicyProps

type QueuePolicyProps struct {
	// The set of queues this policy applies to.
	// Experimental.
	Queues *[]IQueue `json:"queues"`
}

Properties to associate SQS queues with a policy. Experimental.

type QueueProps

type QueueProps struct {
	// Specifies whether to enable content-based deduplication.
	//
	// 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.)
	// Experimental.
	ContentBasedDeduplication *bool `json:"contentBasedDeduplication"`
	// The length of time that Amazon SQS reuses a data key before calling KMS again.
	//
	// The value must be an integer between 60 (1 minute) and 86,400 (24
	// hours). The default is 300 (5 minutes).
	// Experimental.
	DataKeyReuse awscdk.Duration `json:"dataKeyReuse"`
	// Send messages to this queue if they were unsuccessfully dequeued a number of times.
	// Experimental.
	DeadLetterQueue *DeadLetterQueue `json:"deadLetterQueue"`
	// For high throughput for FIFO queues, specifies whether message deduplication occurs at the message group or queue level.
	//
	// (Only applies to FIFO queues.)
	// Experimental.
	DeduplicationScope DeduplicationScope `json:"deduplicationScope"`
	// The time in seconds that the delivery of all messages in the queue is delayed.
	//
	// You can specify an integer value of 0 to 900 (15 minutes). The default
	// value is 0.
	// Experimental.
	DeliveryDelay awscdk.Duration `json:"deliveryDelay"`
	// Whether the contents of the queue are encrypted, and by what type of key.
	//
	// Be aware that encryption is not available in all regions, please see the docs
	// for current availability details.
	// Experimental.
	Encryption QueueEncryption `json:"encryption"`
	// External KMS master key to use for queue encryption.
	//
	// 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".
	// Experimental.
	EncryptionMasterKey awskms.IKey `json:"encryptionMasterKey"`
	// Whether this a first-in-first-out (FIFO) queue.
	// Experimental.
	Fifo *bool `json:"fifo"`
	// For high throughput for FIFO queues, specifies whether the FIFO queue throughput quota applies to the entire queue or per message group.
	//
	// (Only applies to FIFO queues.)
	// Experimental.
	FifoThroughputLimit FifoThroughputLimit `json:"fifoThroughputLimit"`
	// The limit of how many bytes that a message can contain before Amazon SQS rejects it.
	//
	// You can specify an integer value from 1024 bytes (1 KiB) to 262144 bytes
	// (256 KiB). The default value is 262144 (256 KiB).
	// Experimental.
	MaxMessageSizeBytes *float64 `json:"maxMessageSizeBytes"`
	// A name for the queue.
	//
	// If specified and this is a FIFO queue, must end in the string '.fifo'.
	// Experimental.
	QueueName *string `json:"queueName"`
	// Default wait time for ReceiveMessage calls.
	//
	// 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.
	// Experimental.
	ReceiveMessageWaitTime awscdk.Duration `json:"receiveMessageWaitTime"`
	// Policy to apply when the user pool is removed from the stack.
	//
	// 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.
	// Experimental.
	RemovalPolicy awscdk.RemovalPolicy `json:"removalPolicy"`
	// The number of seconds that Amazon SQS retains a message.
	//
	// You can specify an integer value from 60 seconds (1 minute) to 1209600
	// seconds (14 days). The default value is 345600 seconds (4 days).
	// Experimental.
	RetentionPeriod awscdk.Duration `json:"retentionPeriod"`
	// Timeout of processing a single message.
	//
	// 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.
	// Experimental.
	VisibilityTimeout awscdk.Duration `json:"visibilityTimeout"`
}

Properties for creating a new Queue. Experimental.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL