Class TopicState.Builder

  • Enclosing class:
    TopicState

    public static final class TopicState.Builder
    extends java.lang.Object
    • Constructor Detail

      • Builder

        public Builder()
      • Builder

        public Builder​(TopicState defaults)
    • Method Detail

      • applicationFailureFeedbackRoleArn

        public TopicState.Builder applicationFailureFeedbackRoleArn​(@Nullable
                                                                    com.pulumi.core.Output<java.lang.String> applicationFailureFeedbackRoleArn)
        Parameters:
        applicationFailureFeedbackRoleArn - IAM role for failure feedback
        Returns:
        builder
      • applicationFailureFeedbackRoleArn

        public TopicState.Builder applicationFailureFeedbackRoleArn​(java.lang.String applicationFailureFeedbackRoleArn)
        Parameters:
        applicationFailureFeedbackRoleArn - IAM role for failure feedback
        Returns:
        builder
      • applicationSuccessFeedbackRoleArn

        public TopicState.Builder applicationSuccessFeedbackRoleArn​(@Nullable
                                                                    com.pulumi.core.Output<java.lang.String> applicationSuccessFeedbackRoleArn)
        Parameters:
        applicationSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • applicationSuccessFeedbackRoleArn

        public TopicState.Builder applicationSuccessFeedbackRoleArn​(java.lang.String applicationSuccessFeedbackRoleArn)
        Parameters:
        applicationSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • applicationSuccessFeedbackSampleRate

        public TopicState.Builder applicationSuccessFeedbackSampleRate​(@Nullable
                                                                       com.pulumi.core.Output<java.lang.Integer> applicationSuccessFeedbackSampleRate)
        Parameters:
        applicationSuccessFeedbackSampleRate - Percentage of success to sample
        Returns:
        builder
      • applicationSuccessFeedbackSampleRate

        public TopicState.Builder applicationSuccessFeedbackSampleRate​(java.lang.Integer applicationSuccessFeedbackSampleRate)
        Parameters:
        applicationSuccessFeedbackSampleRate - Percentage of success to sample
        Returns:
        builder
      • archivePolicy

        public TopicState.Builder archivePolicy​(@Nullable
                                                com.pulumi.core.Output<java.lang.String> archivePolicy)
        Parameters:
        archivePolicy - The message archive policy for FIFO topics. More details in the [AWS documentation](https://docs.aws.amazon.com/sns/latest/dg/message-archiving-and-replay-topic-owner.html).
        Returns:
        builder
      • archivePolicy

        public TopicState.Builder archivePolicy​(java.lang.String archivePolicy)
        Parameters:
        archivePolicy - The message archive policy for FIFO topics. More details in the [AWS documentation](https://docs.aws.amazon.com/sns/latest/dg/message-archiving-and-replay-topic-owner.html).
        Returns:
        builder
      • arn

        public TopicState.Builder arn​(@Nullable
                                      com.pulumi.core.Output<java.lang.String> arn)
        Parameters:
        arn - The ARN of the SNS topic, as a more obvious property (clone of `id`)
        Returns:
        builder
      • arn

        public TopicState.Builder arn​(java.lang.String arn)
        Parameters:
        arn - The ARN of the SNS topic, as a more obvious property (clone of `id`)
        Returns:
        builder
      • beginningArchiveTime

        public TopicState.Builder beginningArchiveTime​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> beginningArchiveTime)
        Parameters:
        beginningArchiveTime - The oldest timestamp at which a FIFO topic subscriber can start a replay.
        Returns:
        builder
      • beginningArchiveTime

        public TopicState.Builder beginningArchiveTime​(java.lang.String beginningArchiveTime)
        Parameters:
        beginningArchiveTime - The oldest timestamp at which a FIFO topic subscriber can start a replay.
        Returns:
        builder
      • contentBasedDeduplication

        public TopicState.Builder contentBasedDeduplication​(@Nullable
                                                            com.pulumi.core.Output<java.lang.Boolean> contentBasedDeduplication)
        Parameters:
        contentBasedDeduplication - Enables content-based deduplication for FIFO topics. For more information, see the [related documentation](https://docs.aws.amazon.com/sns/latest/dg/fifo-message-dedup.html)
        Returns:
        builder
      • contentBasedDeduplication

        public TopicState.Builder contentBasedDeduplication​(java.lang.Boolean contentBasedDeduplication)
        Parameters:
        contentBasedDeduplication - Enables content-based deduplication for FIFO topics. For more information, see the [related documentation](https://docs.aws.amazon.com/sns/latest/dg/fifo-message-dedup.html)
        Returns:
        builder
      • deliveryPolicy

        public TopicState.Builder deliveryPolicy​(@Nullable
                                                 com.pulumi.core.Output<java.lang.String> deliveryPolicy)
        Parameters:
        deliveryPolicy - The SNS delivery policy. More details in the [AWS documentation](https://docs.aws.amazon.com/sns/latest/dg/DeliveryPolicies.html).
        Returns:
        builder
      • deliveryPolicy

        public TopicState.Builder deliveryPolicy​(java.lang.String deliveryPolicy)
        Parameters:
        deliveryPolicy - The SNS delivery policy. More details in the [AWS documentation](https://docs.aws.amazon.com/sns/latest/dg/DeliveryPolicies.html).
        Returns:
        builder
      • displayName

        public TopicState.Builder displayName​(@Nullable
                                              com.pulumi.core.Output<java.lang.String> displayName)
        Parameters:
        displayName - The display name for the topic
        Returns:
        builder
      • displayName

        public TopicState.Builder displayName​(java.lang.String displayName)
        Parameters:
        displayName - The display name for the topic
        Returns:
        builder
      • fifoThroughputScope

        public TopicState.Builder fifoThroughputScope​(@Nullable
                                                      com.pulumi.core.Output<java.lang.String> fifoThroughputScope)
        Parameters:
        fifoThroughputScope - Enables higher throughput for FIFO topics by adjusting the scope of deduplication. This attribute has two possible values, `Topic` and `MessageGroup`. For more information, see the [related documentation](https://docs.aws.amazon.com/sns/latest/dg/fifo-high-throughput.html#enable-high-throughput-on-fifo-topic).
        Returns:
        builder
      • fifoThroughputScope

        public TopicState.Builder fifoThroughputScope​(java.lang.String fifoThroughputScope)
        Parameters:
        fifoThroughputScope - Enables higher throughput for FIFO topics by adjusting the scope of deduplication. This attribute has two possible values, `Topic` and `MessageGroup`. For more information, see the [related documentation](https://docs.aws.amazon.com/sns/latest/dg/fifo-high-throughput.html#enable-high-throughput-on-fifo-topic).
        Returns:
        builder
      • fifoTopic

        public TopicState.Builder fifoTopic​(@Nullable
                                            com.pulumi.core.Output<java.lang.Boolean> fifoTopic)
        Parameters:
        fifoTopic - Boolean indicating whether or not to create a FIFO (first-in-first-out) topic. FIFO topics can't deliver messages to customer managed endpoints, such as email addresses, mobile apps, SMS, or HTTP(S) endpoints. These endpoint types aren't guaranteed to preserve strict message ordering. Default is `false`.
        Returns:
        builder
      • fifoTopic

        public TopicState.Builder fifoTopic​(java.lang.Boolean fifoTopic)
        Parameters:
        fifoTopic - Boolean indicating whether or not to create a FIFO (first-in-first-out) topic. FIFO topics can't deliver messages to customer managed endpoints, such as email addresses, mobile apps, SMS, or HTTP(S) endpoints. These endpoint types aren't guaranteed to preserve strict message ordering. Default is `false`.
        Returns:
        builder
      • firehoseFailureFeedbackRoleArn

        public TopicState.Builder firehoseFailureFeedbackRoleArn​(@Nullable
                                                                 com.pulumi.core.Output<java.lang.String> firehoseFailureFeedbackRoleArn)
        Parameters:
        firehoseFailureFeedbackRoleArn - IAM role for failure feedback
        Returns:
        builder
      • firehoseFailureFeedbackRoleArn

        public TopicState.Builder firehoseFailureFeedbackRoleArn​(java.lang.String firehoseFailureFeedbackRoleArn)
        Parameters:
        firehoseFailureFeedbackRoleArn - IAM role for failure feedback
        Returns:
        builder
      • firehoseSuccessFeedbackRoleArn

        public TopicState.Builder firehoseSuccessFeedbackRoleArn​(@Nullable
                                                                 com.pulumi.core.Output<java.lang.String> firehoseSuccessFeedbackRoleArn)
        Parameters:
        firehoseSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • firehoseSuccessFeedbackRoleArn

        public TopicState.Builder firehoseSuccessFeedbackRoleArn​(java.lang.String firehoseSuccessFeedbackRoleArn)
        Parameters:
        firehoseSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • firehoseSuccessFeedbackSampleRate

        public TopicState.Builder firehoseSuccessFeedbackSampleRate​(@Nullable
                                                                    com.pulumi.core.Output<java.lang.Integer> firehoseSuccessFeedbackSampleRate)
        Parameters:
        firehoseSuccessFeedbackSampleRate - Percentage of success to sample
        Returns:
        builder
      • firehoseSuccessFeedbackSampleRate

        public TopicState.Builder firehoseSuccessFeedbackSampleRate​(java.lang.Integer firehoseSuccessFeedbackSampleRate)
        Parameters:
        firehoseSuccessFeedbackSampleRate - Percentage of success to sample
        Returns:
        builder
      • httpFailureFeedbackRoleArn

        public TopicState.Builder httpFailureFeedbackRoleArn​(@Nullable
                                                             com.pulumi.core.Output<java.lang.String> httpFailureFeedbackRoleArn)
        Parameters:
        httpFailureFeedbackRoleArn - IAM role for failure feedback
        Returns:
        builder
      • httpFailureFeedbackRoleArn

        public TopicState.Builder httpFailureFeedbackRoleArn​(java.lang.String httpFailureFeedbackRoleArn)
        Parameters:
        httpFailureFeedbackRoleArn - IAM role for failure feedback
        Returns:
        builder
      • httpSuccessFeedbackRoleArn

        public TopicState.Builder httpSuccessFeedbackRoleArn​(@Nullable
                                                             com.pulumi.core.Output<java.lang.String> httpSuccessFeedbackRoleArn)
        Parameters:
        httpSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • httpSuccessFeedbackRoleArn

        public TopicState.Builder httpSuccessFeedbackRoleArn​(java.lang.String httpSuccessFeedbackRoleArn)
        Parameters:
        httpSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • httpSuccessFeedbackSampleRate

        public TopicState.Builder httpSuccessFeedbackSampleRate​(@Nullable
                                                                com.pulumi.core.Output<java.lang.Integer> httpSuccessFeedbackSampleRate)
        Parameters:
        httpSuccessFeedbackSampleRate - Percentage of success to sample
        Returns:
        builder
      • httpSuccessFeedbackSampleRate

        public TopicState.Builder httpSuccessFeedbackSampleRate​(java.lang.Integer httpSuccessFeedbackSampleRate)
        Parameters:
        httpSuccessFeedbackSampleRate - Percentage of success to sample
        Returns:
        builder
      • kmsMasterKeyId

        public TopicState.Builder kmsMasterKeyId​(@Nullable
                                                 com.pulumi.core.Output<java.lang.String> kmsMasterKeyId)
        Parameters:
        kmsMasterKeyId - The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see [Key Terms](https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms)
        Returns:
        builder
      • kmsMasterKeyId

        public TopicState.Builder kmsMasterKeyId​(java.lang.String kmsMasterKeyId)
        Parameters:
        kmsMasterKeyId - The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see [Key Terms](https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms)
        Returns:
        builder
      • lambdaFailureFeedbackRoleArn

        public TopicState.Builder lambdaFailureFeedbackRoleArn​(@Nullable
                                                               com.pulumi.core.Output<java.lang.String> lambdaFailureFeedbackRoleArn)
        Parameters:
        lambdaFailureFeedbackRoleArn - IAM role for failure feedback
        Returns:
        builder
      • lambdaFailureFeedbackRoleArn

        public TopicState.Builder lambdaFailureFeedbackRoleArn​(java.lang.String lambdaFailureFeedbackRoleArn)
        Parameters:
        lambdaFailureFeedbackRoleArn - IAM role for failure feedback
        Returns:
        builder
      • lambdaSuccessFeedbackRoleArn

        public TopicState.Builder lambdaSuccessFeedbackRoleArn​(@Nullable
                                                               com.pulumi.core.Output<java.lang.String> lambdaSuccessFeedbackRoleArn)
        Parameters:
        lambdaSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • lambdaSuccessFeedbackRoleArn

        public TopicState.Builder lambdaSuccessFeedbackRoleArn​(java.lang.String lambdaSuccessFeedbackRoleArn)
        Parameters:
        lambdaSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • lambdaSuccessFeedbackSampleRate

        public TopicState.Builder lambdaSuccessFeedbackSampleRate​(@Nullable
                                                                  com.pulumi.core.Output<java.lang.Integer> lambdaSuccessFeedbackSampleRate)
        Parameters:
        lambdaSuccessFeedbackSampleRate - Percentage of success to sample
        Returns:
        builder
      • lambdaSuccessFeedbackSampleRate

        public TopicState.Builder lambdaSuccessFeedbackSampleRate​(java.lang.Integer lambdaSuccessFeedbackSampleRate)
        Parameters:
        lambdaSuccessFeedbackSampleRate - Percentage of success to sample
        Returns:
        builder
      • maximumMessageSize

        public TopicState.Builder maximumMessageSize​(@Nullable
                                                     com.pulumi.core.Output<java.lang.Integer> maximumMessageSize)
        Parameters:
        maximumMessageSize - The maximum size, in bytes, of a message that can be published to the topic. Valid values are `1024` to `1048576` (1 MiB). The default is `262144` (256 KiB). A topic with a `maximumMessageSize` above 256 KiB must have 100 or fewer subscriptions, and each subscription must be an Amazon SQS, Amazon Data Firehose, or AWS Lambda subscription.
        Returns:
        builder
      • maximumMessageSize

        public TopicState.Builder maximumMessageSize​(java.lang.Integer maximumMessageSize)
        Parameters:
        maximumMessageSize - The maximum size, in bytes, of a message that can be published to the topic. Valid values are `1024` to `1048576` (1 MiB). The default is `262144` (256 KiB). A topic with a `maximumMessageSize` above 256 KiB must have 100 or fewer subscriptions, and each subscription must be an Amazon SQS, Amazon Data Firehose, or AWS Lambda subscription.
        Returns:
        builder
      • name

        public TopicState.Builder name​(@Nullable
                                       com.pulumi.core.Output<java.lang.String> name)
        Parameters:
        name - The name of the topic. Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long. For a FIFO (first-in-first-out) topic, the name must end with the `.fifo` suffix. If omitted, the provider will assign a random, unique name. Conflicts with `namePrefix`
        Returns:
        builder
      • name

        public TopicState.Builder name​(java.lang.String name)
        Parameters:
        name - The name of the topic. Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long. For a FIFO (first-in-first-out) topic, the name must end with the `.fifo` suffix. If omitted, the provider will assign a random, unique name. Conflicts with `namePrefix`
        Returns:
        builder
      • namePrefix

        public TopicState.Builder namePrefix​(@Nullable
                                             com.pulumi.core.Output<java.lang.String> namePrefix)
        Parameters:
        namePrefix - Creates a unique name beginning with the specified prefix. Conflicts with `name`
        Returns:
        builder
      • namePrefix

        public TopicState.Builder namePrefix​(java.lang.String namePrefix)
        Parameters:
        namePrefix - Creates a unique name beginning with the specified prefix. Conflicts with `name`
        Returns:
        builder
      • owner

        public TopicState.Builder owner​(@Nullable
                                        com.pulumi.core.Output<java.lang.String> owner)
        Parameters:
        owner - The AWS Account ID of the SNS topic owner
        Returns:
        builder
      • owner

        public TopicState.Builder owner​(java.lang.String owner)
        Parameters:
        owner - The AWS Account ID of the SNS topic owner
        Returns:
        builder
      • policy

        public TopicState.Builder policy​(@Nullable
                                         com.pulumi.core.Output<java.lang.String> policy)
        Parameters:
        policy - The fully-formed AWS policy as JSON.
        Returns:
        builder
      • policy

        public TopicState.Builder policy​(java.lang.String policy)
        Parameters:
        policy - The fully-formed AWS policy as JSON.
        Returns:
        builder
      • region

        public TopicState.Builder region​(@Nullable
                                         com.pulumi.core.Output<java.lang.String> region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder
      • region

        public TopicState.Builder region​(java.lang.String region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder
      • signatureVersion

        public TopicState.Builder signatureVersion​(@Nullable
                                                   com.pulumi.core.Output<java.lang.Integer> signatureVersion)
        Parameters:
        signatureVersion - If `SignatureVersion` should be [1 (SHA1) or 2 (SHA256)](https://docs.aws.amazon.com/sns/latest/dg/sns-verify-signature-of-message.html). The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS.
        Returns:
        builder
      • signatureVersion

        public TopicState.Builder signatureVersion​(java.lang.Integer signatureVersion)
        Parameters:
        signatureVersion - If `SignatureVersion` should be [1 (SHA1) or 2 (SHA256)](https://docs.aws.amazon.com/sns/latest/dg/sns-verify-signature-of-message.html). The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS.
        Returns:
        builder
      • sqsFailureFeedbackRoleArn

        public TopicState.Builder sqsFailureFeedbackRoleArn​(@Nullable
                                                            com.pulumi.core.Output<java.lang.String> sqsFailureFeedbackRoleArn)
        Parameters:
        sqsFailureFeedbackRoleArn - IAM role for failure feedback
        Returns:
        builder
      • sqsFailureFeedbackRoleArn

        public TopicState.Builder sqsFailureFeedbackRoleArn​(java.lang.String sqsFailureFeedbackRoleArn)
        Parameters:
        sqsFailureFeedbackRoleArn - IAM role for failure feedback
        Returns:
        builder
      • sqsSuccessFeedbackRoleArn

        public TopicState.Builder sqsSuccessFeedbackRoleArn​(@Nullable
                                                            com.pulumi.core.Output<java.lang.String> sqsSuccessFeedbackRoleArn)
        Parameters:
        sqsSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • sqsSuccessFeedbackRoleArn

        public TopicState.Builder sqsSuccessFeedbackRoleArn​(java.lang.String sqsSuccessFeedbackRoleArn)
        Parameters:
        sqsSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • sqsSuccessFeedbackSampleRate

        public TopicState.Builder sqsSuccessFeedbackSampleRate​(@Nullable
                                                               com.pulumi.core.Output<java.lang.Integer> sqsSuccessFeedbackSampleRate)
        Parameters:
        sqsSuccessFeedbackSampleRate - Percentage of success to sample
        Returns:
        builder
      • sqsSuccessFeedbackSampleRate

        public TopicState.Builder sqsSuccessFeedbackSampleRate​(java.lang.Integer sqsSuccessFeedbackSampleRate)
        Parameters:
        sqsSuccessFeedbackSampleRate - Percentage of success to sample
        Returns:
        builder
      • tags

        public TopicState.Builder tags​(@Nullable
                                       com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tags)
        Parameters:
        tags - Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • tags

        public TopicState.Builder tags​(java.util.Map<java.lang.String,​java.lang.String> tags)
        Parameters:
        tags - Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • tagsAll

        public TopicState.Builder tagsAll​(@Nullable
                                          com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll)
        Parameters:
        tagsAll - A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • tagsAll

        public TopicState.Builder tagsAll​(java.util.Map<java.lang.String,​java.lang.String> tagsAll)
        Parameters:
        tagsAll - A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • tracingConfig

        public TopicState.Builder tracingConfig​(@Nullable
                                                com.pulumi.core.Output<java.lang.String> tracingConfig)
        Parameters:
        tracingConfig - Tracing mode of an Amazon SNS topic. Valid values: `"PassThrough"`, `"Active"`.
        Returns:
        builder
      • tracingConfig

        public TopicState.Builder tracingConfig​(java.lang.String tracingConfig)
        Parameters:
        tracingConfig - Tracing mode of an Amazon SNS topic. Valid values: `"PassThrough"`, `"Active"`.
        Returns:
        builder