com.pulumi.awsnative.datazone.kotlin.DomainArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.datazone.kotlin
import com.pulumi.awsnative.datazone.DomainArgs.builder
import com.pulumi.awsnative.datazone.kotlin.inputs.DomainSingleSignOnArgs
import com.pulumi.awsnative.datazone.kotlin.inputs.DomainSingleSignOnArgsBuilder
import com.pulumi.awsnative.kotlin.inputs.TagArgs
import com.pulumi.awsnative.kotlin.inputs.TagArgsBuilder
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
/**
* A domain is an organizing entity for connecting together assets, users, and their projects
* @property description The description of the Amazon DataZone domain.
* @property domainExecutionRole The domain execution role that is created when an Amazon DataZone domain is created. The domain execution role is created in the AWS account that houses the Amazon DataZone domain.
* @property kmsKeyIdentifier The identifier of the AWS Key Management Service (KMS) key that is used to encrypt the Amazon DataZone domain, metadata, and reporting data.
* @property name The name of the Amazon DataZone domain.
* @property singleSignOn The single-sign on configuration of the Amazon DataZone domain.
* @property tags The tags specified for the Amazon DataZone domain.
*/
public data class DomainArgs(
public val description: Output? = null,
public val domainExecutionRole: Output? = null,
public val kmsKeyIdentifier: Output? = null,
public val name: Output? = null,
public val singleSignOn: Output? = null,
public val tags: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.datazone.DomainArgs =
com.pulumi.awsnative.datazone.DomainArgs.builder()
.description(description?.applyValue({ args0 -> args0 }))
.domainExecutionRole(domainExecutionRole?.applyValue({ args0 -> args0 }))
.kmsKeyIdentifier(kmsKeyIdentifier?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 }))
.singleSignOn(singleSignOn?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.tags(
tags?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
).build()
}
/**
* Builder for [DomainArgs].
*/
@PulumiTagMarker
public class DomainArgsBuilder internal constructor() {
private var description: Output? = null
private var domainExecutionRole: Output? = null
private var kmsKeyIdentifier: Output? = null
private var name: Output? = null
private var singleSignOn: Output? = null
private var tags: Output>? = null
/**
* @param value The description of the Amazon DataZone domain.
*/
@JvmName("dyaikrbdhuajupfj")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value The domain execution role that is created when an Amazon DataZone domain is created. The domain execution role is created in the AWS account that houses the Amazon DataZone domain.
*/
@JvmName("uhdlumjyhblqbsac")
public suspend fun domainExecutionRole(`value`: Output) {
this.domainExecutionRole = value
}
/**
* @param value The identifier of the AWS Key Management Service (KMS) key that is used to encrypt the Amazon DataZone domain, metadata, and reporting data.
*/
@JvmName("jmhqbjdrxvjjplcm")
public suspend fun kmsKeyIdentifier(`value`: Output) {
this.kmsKeyIdentifier = value
}
/**
* @param value The name of the Amazon DataZone domain.
*/
@JvmName("eqabpvhuevulwytx")
public suspend fun name(`value`: Output) {
this.name = value
}
/**
* @param value The single-sign on configuration of the Amazon DataZone domain.
*/
@JvmName("ohidpeesvkuvugwp")
public suspend fun singleSignOn(`value`: Output) {
this.singleSignOn = value
}
/**
* @param value The tags specified for the Amazon DataZone domain.
*/
@JvmName("tfnyxwriivdmggup")
public suspend fun tags(`value`: Output>) {
this.tags = value
}
@JvmName("xxiqihvyqjxvxocr")
public suspend fun tags(vararg values: Output) {
this.tags = Output.all(values.asList())
}
/**
* @param values The tags specified for the Amazon DataZone domain.
*/
@JvmName("xdkxkthcomgkflnc")
public suspend fun tags(values: List