com.pulumi.awsnative.sso.kotlin.AssignmentArgs.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.sso.kotlin
import com.pulumi.awsnative.sso.AssignmentArgs.builder
import com.pulumi.awsnative.sso.kotlin.enums.AssignmentPrincipalType
import com.pulumi.awsnative.sso.kotlin.enums.AssignmentTargetType
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 Type definition for SSO assignmet
* @property instanceArn The sso instance that the permission set is owned.
* @property permissionSetArn The permission set that the assignemt will be assigned
* @property principalId The assignee's identifier, user id/group id
* @property principalType The assignee's type, user/group
* @property targetId The account id to be provisioned.
* @property targetType The type of resource to be provsioned to, only aws account now
*/
public data class AssignmentArgs(
public val instanceArn: Output? = null,
public val permissionSetArn: Output? = null,
public val principalId: Output? = null,
public val principalType: Output? = null,
public val targetId: Output? = null,
public val targetType: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.sso.AssignmentArgs =
com.pulumi.awsnative.sso.AssignmentArgs.builder()
.instanceArn(instanceArn?.applyValue({ args0 -> args0 }))
.permissionSetArn(permissionSetArn?.applyValue({ args0 -> args0 }))
.principalId(principalId?.applyValue({ args0 -> args0 }))
.principalType(principalType?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.targetId(targetId?.applyValue({ args0 -> args0 }))
.targetType(targetType?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [AssignmentArgs].
*/
@PulumiTagMarker
public class AssignmentArgsBuilder internal constructor() {
private var instanceArn: Output? = null
private var permissionSetArn: Output? = null
private var principalId: Output? = null
private var principalType: Output? = null
private var targetId: Output? = null
private var targetType: Output? = null
/**
* @param value The sso instance that the permission set is owned.
*/
@JvmName("eifaivpgpvdqaagb")
public suspend fun instanceArn(`value`: Output) {
this.instanceArn = value
}
/**
* @param value The permission set that the assignemt will be assigned
*/
@JvmName("yvupplhwrkwtqptb")
public suspend fun permissionSetArn(`value`: Output) {
this.permissionSetArn = value
}
/**
* @param value The assignee's identifier, user id/group id
*/
@JvmName("upepqmynqfqvpfru")
public suspend fun principalId(`value`: Output) {
this.principalId = value
}
/**
* @param value The assignee's type, user/group
*/
@JvmName("dlwgbdpkgrtcpyal")
public suspend fun principalType(`value`: Output) {
this.principalType = value
}
/**
* @param value The account id to be provisioned.
*/
@JvmName("xsauujvqmmfvydtv")
public suspend fun targetId(`value`: Output) {
this.targetId = value
}
/**
* @param value The type of resource to be provsioned to, only aws account now
*/
@JvmName("liuhtbtaewkxntpn")
public suspend fun targetType(`value`: Output) {
this.targetType = value
}
/**
* @param value The sso instance that the permission set is owned.
*/
@JvmName("wibpuxqtqknpnybi")
public suspend fun instanceArn(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.instanceArn = mapped
}
/**
* @param value The permission set that the assignemt will be assigned
*/
@JvmName("qktglycimahhxfra")
public suspend fun permissionSetArn(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.permissionSetArn = mapped
}
/**
* @param value The assignee's identifier, user id/group id
*/
@JvmName("xpqsxugglgtcolrs")
public suspend fun principalId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.principalId = mapped
}
/**
* @param value The assignee's type, user/group
*/
@JvmName("oymskwwogbgmlhun")
public suspend fun principalType(`value`: AssignmentPrincipalType?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.principalType = mapped
}
/**
* @param value The account id to be provisioned.
*/
@JvmName("nqubmqnnwfngmhve")
public suspend fun targetId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.targetId = mapped
}
/**
* @param value The type of resource to be provsioned to, only aws account now
*/
@JvmName("nwgbngfqniioahny")
public suspend fun targetType(`value`: AssignmentTargetType?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.targetType = mapped
}
internal fun build(): AssignmentArgs = AssignmentArgs(
instanceArn = instanceArn,
permissionSetArn = permissionSetArn,
principalId = principalId,
principalType = principalType,
targetId = targetId,
targetType = targetType,
)
}