com.pulumi.awsnative.sns.kotlin.outputs.TopicLoggingConfig.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.sns.kotlin.outputs
import com.pulumi.awsnative.sns.kotlin.enums.TopicLoggingConfigProtocol
import kotlin.String
import kotlin.Suppress
/**
*
* @property failureFeedbackRoleArn The IAM role ARN to be used when logging failed message deliveries in Amazon CloudWatch.
* @property protocol Indicates one of the supported protocols for the Amazon SNS topic.
* > At least one of the other three `LoggingConfig` properties is recommend along with `Protocol` .
* @property successFeedbackRoleArn The IAM role ARN to be used when logging successful message deliveries in Amazon CloudWatch.
* @property successFeedbackSampleRate The percentage of successful message deliveries to be logged in Amazon CloudWatch. Valid percentage values range from 0 to 100.
*/
public data class TopicLoggingConfig(
public val failureFeedbackRoleArn: String? = null,
public val protocol: TopicLoggingConfigProtocol,
public val successFeedbackRoleArn: String? = null,
public val successFeedbackSampleRate: String? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.awsnative.sns.outputs.TopicLoggingConfig): TopicLoggingConfig = TopicLoggingConfig(
failureFeedbackRoleArn = javaType.failureFeedbackRoleArn().map({ args0 -> args0 }).orElse(null),
protocol = javaType.protocol().let({ args0 ->
com.pulumi.awsnative.sns.kotlin.enums.TopicLoggingConfigProtocol.Companion.toKotlin(args0)
}),
successFeedbackRoleArn = javaType.successFeedbackRoleArn().map({ args0 -> args0 }).orElse(null),
successFeedbackSampleRate = javaType.successFeedbackSampleRate().map({ args0 ->
args0
}).orElse(null),
)
}
}