
com.pulumi.awsnative.rolesanywhere.kotlin.inputs.TrustAnchorNotificationSettingArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.rolesanywhere.kotlin.inputs
import com.pulumi.awsnative.rolesanywhere.inputs.TrustAnchorNotificationSettingArgs.builder
import com.pulumi.awsnative.rolesanywhere.kotlin.enums.TrustAnchorNotificationChannel
import com.pulumi.awsnative.rolesanywhere.kotlin.enums.TrustAnchorNotificationEvent
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Boolean
import kotlin.Double
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property channel The specified channel of notification. IAM Roles Anywhere uses CloudWatch metrics, EventBridge, and AWS Health Dashboard to notify for an event.
* > In the absence of a specific channel, IAM Roles Anywhere applies this setting to 'ALL' channels.
* @property enabled Indicates whether the notification setting is enabled.
* @property event The event to which this notification setting is applied.
* @property threshold The number of days before a notification event. This value is required for a notification setting that is enabled.
*/
public data class TrustAnchorNotificationSettingArgs(
public val channel: Output? = null,
public val enabled: Output,
public val event: Output,
public val threshold: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.rolesanywhere.inputs.TrustAnchorNotificationSettingArgs =
com.pulumi.awsnative.rolesanywhere.inputs.TrustAnchorNotificationSettingArgs.builder()
.channel(channel?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.enabled(enabled.applyValue({ args0 -> args0 }))
.event(event.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.threshold(threshold?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [TrustAnchorNotificationSettingArgs].
*/
@PulumiTagMarker
public class TrustAnchorNotificationSettingArgsBuilder internal constructor() {
private var channel: Output? = null
private var enabled: Output? = null
private var event: Output? = null
private var threshold: Output? = null
/**
* @param value The specified channel of notification. IAM Roles Anywhere uses CloudWatch metrics, EventBridge, and AWS Health Dashboard to notify for an event.
* > In the absence of a specific channel, IAM Roles Anywhere applies this setting to 'ALL' channels.
*/
@JvmName("gfddjnrcujlcbkpf")
public suspend fun channel(`value`: Output) {
this.channel = value
}
/**
* @param value Indicates whether the notification setting is enabled.
*/
@JvmName("oemuonbtjobhamim")
public suspend fun enabled(`value`: Output) {
this.enabled = value
}
/**
* @param value The event to which this notification setting is applied.
*/
@JvmName("dhwvvqfulpwoegvq")
public suspend fun event(`value`: Output) {
this.event = value
}
/**
* @param value The number of days before a notification event. This value is required for a notification setting that is enabled.
*/
@JvmName("bujdioliliaycpuc")
public suspend fun threshold(`value`: Output) {
this.threshold = value
}
/**
* @param value The specified channel of notification. IAM Roles Anywhere uses CloudWatch metrics, EventBridge, and AWS Health Dashboard to notify for an event.
* > In the absence of a specific channel, IAM Roles Anywhere applies this setting to 'ALL' channels.
*/
@JvmName("aoaxbgnsceghwwjy")
public suspend fun channel(`value`: TrustAnchorNotificationChannel?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.channel = mapped
}
/**
* @param value Indicates whether the notification setting is enabled.
*/
@JvmName("vohnxajcyxjcxbxy")
public suspend fun enabled(`value`: Boolean) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.enabled = mapped
}
/**
* @param value The event to which this notification setting is applied.
*/
@JvmName("otqekxsicnvabfun")
public suspend fun event(`value`: TrustAnchorNotificationEvent) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.event = mapped
}
/**
* @param value The number of days before a notification event. This value is required for a notification setting that is enabled.
*/
@JvmName("ojepwjgyabqusoos")
public suspend fun threshold(`value`: Double?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.threshold = mapped
}
internal fun build(): TrustAnchorNotificationSettingArgs = TrustAnchorNotificationSettingArgs(
channel = channel,
enabled = enabled ?: throw PulumiNullFieldException("enabled"),
event = event ?: throw PulumiNullFieldException("event"),
threshold = threshold,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy