Interface IQueue.Jsii$Default

All Superinterfaces:
software.constructs.IConstruct, software.constructs.IConstruct.Jsii$Default, software.constructs.IDependable, software.constructs.IDependable.Jsii$Default, IQueue, IResource, IResource.Jsii$Default, software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
IQueue.Jsii$Proxy
Enclosing interface:
IQueue

@Internal public static interface IQueue.Jsii$Default extends IQueue, IResource.Jsii$Default
Internal default implementation for IQueue.
  • Method Details

    • getNode

      @Stability(Stable) @NotNull default software.constructs.Node getNode()
      The tree node.
      Specified by:
      getNode in interface software.constructs.IConstruct
      Specified by:
      getNode in interface software.constructs.IConstruct.Jsii$Default
      Specified by:
      getNode in interface IResource.Jsii$Default
    • getEnv

      @Stability(Stable) @NotNull default ResourceEnvironment getEnv()
      The environment this resource belongs to.

      For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.

      Specified by:
      getEnv in interface IResource
      Specified by:
      getEnv in interface IResource.Jsii$Default
    • getStack

      @Stability(Stable) @NotNull default Stack getStack()
      The stack in which this resource is defined.
      Specified by:
      getStack in interface IResource
      Specified by:
      getStack in interface IResource.Jsii$Default
    • getFifo

      @Stability(Stable) @NotNull default Boolean getFifo()
      Whether this queue is an Amazon SQS FIFO queue.

      If false, this is a standard queue.

      Specified by:
      getFifo in interface IQueue
    • getQueueArn

      @Stability(Stable) @NotNull default String getQueueArn()
      The ARN of this queue.
      Specified by:
      getQueueArn in interface IQueue
    • getQueueName

      @Stability(Stable) @NotNull default String getQueueName()
      The name of this queue.
      Specified by:
      getQueueName in interface IQueue
    • getQueueUrl

      @Stability(Stable) @NotNull default String getQueueUrl()
      The URL of this queue.
      Specified by:
      getQueueUrl in interface IQueue
    • getEncryptionMasterKey

      @Stability(Stable) @Nullable default IKey getEncryptionMasterKey()
      If this queue is server-side encrypted, this is the KMS encryption key.
      Specified by:
      getEncryptionMasterKey in interface IQueue
    • getEncryptionType

      @Stability(Stable) @Nullable default QueueEncryption getEncryptionType()
      Whether the contents of the queue are encrypted, and by what type of key.
      Specified by:
      getEncryptionType in interface IQueue
    • applyRemovalPolicy

      @Stability(Stable) default void applyRemovalPolicy(@NotNull RemovalPolicy policy)
      Apply the given removal policy to this resource.

      The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.

      The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN).

      Specified by:
      applyRemovalPolicy in interface IResource
      Specified by:
      applyRemovalPolicy in interface IResource.Jsii$Default
      Parameters:
      policy - This parameter is required.
    • addToResourcePolicy

      @Stability(Stable) @NotNull default AddToResourcePolicyResult addToResourcePolicy(@NotNull PolicyStatement statement)
      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.

      Specified by:
      addToResourcePolicy in interface IQueue
      Parameters:
      statement - This parameter is required.
    • grant

      @Stability(Stable) @NotNull default Grant grant(@NotNull IGrantable grantee, @NotNull @NotNull String... queueActions)
      Grant the actions defined in queueActions to the identity Principal given on this SQS queue resource.

      Specified by:
      grant in interface IQueue
      Parameters:
      grantee - Principal to grant right to. This parameter is required.
      queueActions - The actions to grant. This parameter is required.
    • grantConsumeMessages

      @Stability(Stable) @NotNull default Grant grantConsumeMessages(@NotNull IGrantable grantee)
      Grant permissions to consume messages from a queue.

      This will grant the following permissions:

      • sqs:ChangeMessageVisibility
      • sqs:DeleteMessage
      • sqs:ReceiveMessage
      • sqs:GetQueueAttributes
      • sqs:GetQueueUrl

      Specified by:
      grantConsumeMessages in interface IQueue
      Parameters:
      grantee - Principal to grant consume rights to. This parameter is required.
    • grantPurge

      @Stability(Stable) @NotNull default Grant grantPurge(@NotNull IGrantable grantee)
      Grant an IAM principal permissions to purge all messages from the queue.

      This will grant the following permissions:

      • sqs:PurgeQueue
      • sqs:GetQueueAttributes
      • sqs:GetQueueUrl

      Specified by:
      grantPurge in interface IQueue
      Parameters:
      grantee - Principal to grant send rights to. This parameter is required.
    • grantSendMessages

      @Stability(Stable) @NotNull default Grant grantSendMessages(@NotNull IGrantable grantee)
      Grant access to send messages to a queue to the given identity.

      This will grant the following permissions:

      • sqs:SendMessage
      • sqs:GetQueueAttributes
      • sqs:GetQueueUrl

      Specified by:
      grantSendMessages in interface IQueue
      Parameters:
      grantee - Principal to grant send rights to. This parameter is required.
    • metric

      @Stability(Stable) @NotNull default Metric metric(@NotNull String metricName, @Nullable MetricOptions props)
      Return the given named metric for this Queue.

      Specified by:
      metric in interface IQueue
      Parameters:
      metricName - This parameter is required.
      props -
    • metricApproximateAgeOfOldestMessage

      @Stability(Stable) @NotNull default Metric metricApproximateAgeOfOldestMessage(@Nullable MetricOptions props)
      The approximate age of the oldest non-deleted message in the queue.

      Maximum over 5 minutes

      Specified by:
      metricApproximateAgeOfOldestMessage in interface IQueue
      Parameters:
      props -
    • metricApproximateNumberOfMessagesDelayed

      @Stability(Stable) @NotNull default Metric metricApproximateNumberOfMessagesDelayed(@Nullable MetricOptions props)
      The number of messages in the queue that are delayed and not available for reading immediately.

      Maximum over 5 minutes

      Specified by:
      metricApproximateNumberOfMessagesDelayed in interface IQueue
      Parameters:
      props -
    • metricApproximateNumberOfMessagesNotVisible

      @Stability(Stable) @NotNull default Metric metricApproximateNumberOfMessagesNotVisible(@Nullable MetricOptions props)
      The number of messages that are in flight.

      Maximum over 5 minutes

      Specified by:
      metricApproximateNumberOfMessagesNotVisible in interface IQueue
      Parameters:
      props -
    • metricApproximateNumberOfMessagesVisible

      @Stability(Stable) @NotNull default Metric metricApproximateNumberOfMessagesVisible(@Nullable MetricOptions props)
      The number of messages available for retrieval from the queue.

      Maximum over 5 minutes

      Specified by:
      metricApproximateNumberOfMessagesVisible in interface IQueue
      Parameters:
      props -
    • metricNumberOfEmptyReceives

      @Stability(Stable) @NotNull default Metric metricNumberOfEmptyReceives(@Nullable MetricOptions props)
      The number of ReceiveMessage API calls that did not return a message.

      Sum over 5 minutes

      Specified by:
      metricNumberOfEmptyReceives in interface IQueue
      Parameters:
      props -
    • metricNumberOfMessagesDeleted

      @Stability(Stable) @NotNull default Metric metricNumberOfMessagesDeleted(@Nullable MetricOptions props)
      The number of messages deleted from the queue.

      Sum over 5 minutes

      Specified by:
      metricNumberOfMessagesDeleted in interface IQueue
      Parameters:
      props -
    • metricNumberOfMessagesReceived

      @Stability(Stable) @NotNull default Metric metricNumberOfMessagesReceived(@Nullable MetricOptions props)
      The number of messages returned by calls to the ReceiveMessage action.

      Sum over 5 minutes

      Specified by:
      metricNumberOfMessagesReceived in interface IQueue
      Parameters:
      props -
    • metricNumberOfMessagesSent

      @Stability(Stable) @NotNull default Metric metricNumberOfMessagesSent(@Nullable MetricOptions props)
      The number of messages added to a queue.

      Sum over 5 minutes

      Specified by:
      metricNumberOfMessagesSent in interface IQueue
      Parameters:
      props -
    • metricSentMessageSize

      @Stability(Stable) @NotNull default Metric metricSentMessageSize(@Nullable MetricOptions props)
      The size of messages added to a queue.

      Average over 5 minutes

      Specified by:
      metricSentMessageSize in interface IQueue
      Parameters:
      props -