com.pulumi.awsnative.personalize.kotlin.DatasetGroupArgs.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.personalize.kotlin
import com.pulumi.awsnative.personalize.DatasetGroupArgs.builder
import com.pulumi.awsnative.personalize.kotlin.enums.DatasetGroupDomain
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* Resource Schema for AWS::Personalize::DatasetGroup.
* ## Example Usage
* ### Example
* No Java example available.
* ### Example
* No Java example available.
* @property domain The domain of a Domain dataset group.
* @property kmsKeyArn The Amazon Resource Name(ARN) of a AWS Key Management Service (KMS) key used to encrypt the datasets.
* @property name The name for the new dataset group.
* @property roleArn The ARN of the AWS Identity and Access Management (IAM) role that has permissions to access the AWS Key Management Service (KMS) key. Supplying an IAM role is only valid when also specifying a KMS key.
*/
public data class DatasetGroupArgs(
public val domain: Output? = null,
public val kmsKeyArn: Output? = null,
public val name: Output? = null,
public val roleArn: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.personalize.DatasetGroupArgs =
com.pulumi.awsnative.personalize.DatasetGroupArgs.builder()
.domain(domain?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.kmsKeyArn(kmsKeyArn?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 }))
.roleArn(roleArn?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [DatasetGroupArgs].
*/
@PulumiTagMarker
public class DatasetGroupArgsBuilder internal constructor() {
private var domain: Output? = null
private var kmsKeyArn: Output? = null
private var name: Output? = null
private var roleArn: Output? = null
/**
* @param value The domain of a Domain dataset group.
*/
@JvmName("fjmiefwfulbdeghq")
public suspend fun domain(`value`: Output) {
this.domain = value
}
/**
* @param value The Amazon Resource Name(ARN) of a AWS Key Management Service (KMS) key used to encrypt the datasets.
*/
@JvmName("arijktlimdsueeou")
public suspend fun kmsKeyArn(`value`: Output) {
this.kmsKeyArn = value
}
/**
* @param value The name for the new dataset group.
*/
@JvmName("dspuyslklbqbhgrw")
public suspend fun name(`value`: Output) {
this.name = value
}
/**
* @param value The ARN of the AWS Identity and Access Management (IAM) role that has permissions to access the AWS Key Management Service (KMS) key. Supplying an IAM role is only valid when also specifying a KMS key.
*/
@JvmName("issettjwipyehsyf")
public suspend fun roleArn(`value`: Output) {
this.roleArn = value
}
/**
* @param value The domain of a Domain dataset group.
*/
@JvmName("qlvmddqbaqpcnnav")
public suspend fun domain(`value`: DatasetGroupDomain?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.domain = mapped
}
/**
* @param value The Amazon Resource Name(ARN) of a AWS Key Management Service (KMS) key used to encrypt the datasets.
*/
@JvmName("sllmawcccbxipsmx")
public suspend fun kmsKeyArn(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.kmsKeyArn = mapped
}
/**
* @param value The name for the new dataset group.
*/
@JvmName("vtcrfajwtsaruibg")
public suspend fun name(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.name = mapped
}
/**
* @param value The ARN of the AWS Identity and Access Management (IAM) role that has permissions to access the AWS Key Management Service (KMS) key. Supplying an IAM role is only valid when also specifying a KMS key.
*/
@JvmName("xnrybqnsigubiqdx")
public suspend fun roleArn(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.roleArn = mapped
}
internal fun build(): DatasetGroupArgs = DatasetGroupArgs(
domain = domain,
kmsKeyArn = kmsKeyArn,
name = name,
roleArn = roleArn,
)
}