Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
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.ssmcontacts.kotlin
import com.pulumi.awsnative.kotlin.inputs.TagArgs
import com.pulumi.awsnative.kotlin.inputs.TagArgsBuilder
import com.pulumi.awsnative.ssmcontacts.RotationArgs.builder
import com.pulumi.awsnative.ssmcontacts.kotlin.inputs.RotationRecurrenceSettingsArgs
import com.pulumi.awsnative.ssmcontacts.kotlin.inputs.RotationRecurrenceSettingsArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Resource Type definition for AWS::SSMContacts::Rotation.
* @property contactIds Members of the rotation
* @property name Name of the Rotation
* @property recurrence Information about the rule that specifies when shift team members rotate.
* @property startTime Start time of the first shift of Oncall Schedule
* @property tags Optional metadata to assign to the rotation. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For more information, see [Tagging Incident Manager resources](https://docs.aws.amazon.com/incident-manager/latest/userguide/tagging.html) in the *Incident Manager User Guide* .
* @property timeZoneId TimeZone Identifier for the Oncall Schedule
*/
public data class RotationArgs(
public val contactIds: Output>? = null,
public val name: Output? = null,
public val recurrence: Output? = null,
public val startTime: Output? = null,
public val tags: Output>? = null,
public val timeZoneId: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.ssmcontacts.RotationArgs =
com.pulumi.awsnative.ssmcontacts.RotationArgs.builder()
.contactIds(contactIds?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.name(name?.applyValue({ args0 -> args0 }))
.recurrence(recurrence?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.startTime(startTime?.applyValue({ args0 -> args0 }))
.tags(tags?.applyValue({ args0 -> args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) }) }))
.timeZoneId(timeZoneId?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [RotationArgs].
*/
@PulumiTagMarker
public class RotationArgsBuilder internal constructor() {
private var contactIds: Output>? = null
private var name: Output? = null
private var recurrence: Output? = null
private var startTime: Output? = null
private var tags: Output>? = null
private var timeZoneId: Output? = null
/**
* @param value Members of the rotation
*/
@JvmName("pfetwklbmrjclcyw")
public suspend fun contactIds(`value`: Output>) {
this.contactIds = value
}
@JvmName("vkcanyifqxttwrja")
public suspend fun contactIds(vararg values: Output) {
this.contactIds = Output.all(values.asList())
}
/**
* @param values Members of the rotation
*/
@JvmName("omdxlnelsxgeepxa")
public suspend fun contactIds(values: List