Class TopicArgs.Builder

  • Enclosing class:
    TopicArgs

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

      • Builder

        public Builder()
      • Builder

        public Builder​(TopicArgs defaults)
    • Method Detail

      • applicationFailureFeedbackRoleArn

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

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

        public TopicArgs.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 TopicArgs.Builder applicationSuccessFeedbackRoleArn​(java.lang.String applicationSuccessFeedbackRoleArn)
        Parameters:
        applicationSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • applicationSuccessFeedbackSampleRate

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

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

        public TopicArgs.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 TopicArgs.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
      • contentBasedDeduplication

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

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

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

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

        public TopicArgs.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 TopicArgs.Builder firehoseSuccessFeedbackRoleArn​(java.lang.String firehoseSuccessFeedbackRoleArn)
        Parameters:
        firehoseSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • firehoseSuccessFeedbackSampleRate

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

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

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

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

        public TopicArgs.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 TopicArgs.Builder httpSuccessFeedbackRoleArn​(java.lang.String httpSuccessFeedbackRoleArn)
        Parameters:
        httpSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • httpSuccessFeedbackSampleRate

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

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

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

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

        public TopicArgs.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 TopicArgs.Builder lambdaSuccessFeedbackRoleArn​(java.lang.String lambdaSuccessFeedbackRoleArn)
        Parameters:
        lambdaSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • lambdaSuccessFeedbackSampleRate

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

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

        public TopicArgs.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 TopicArgs.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 TopicArgs.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 TopicArgs.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 TopicArgs.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 TopicArgs.Builder namePrefix​(java.lang.String namePrefix)
        Parameters:
        namePrefix - Creates a unique name beginning with the specified prefix. Conflicts with `name`
        Returns:
        builder
      • policy

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

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

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

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

        public TopicArgs.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 TopicArgs.Builder sqsSuccessFeedbackRoleArn​(java.lang.String sqsSuccessFeedbackRoleArn)
        Parameters:
        sqsSuccessFeedbackRoleArn - The IAM role permitted to receive success feedback for this topic
        Returns:
        builder
      • sqsSuccessFeedbackSampleRate

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

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

        public TopicArgs.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 TopicArgs.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
      • tracingConfig

        public TopicArgs.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 TopicArgs.Builder tracingConfig​(java.lang.String tracingConfig)
        Parameters:
        tracingConfig - Tracing mode of an Amazon SNS topic. Valid values: `"PassThrough"`, `"Active"`.
        Returns:
        builder