All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azurenative.security.kotlin.inputs.AwsOrganizationalDataMasterArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.security.kotlin.inputs

import com.pulumi.azurenative.security.inputs.AwsOrganizationalDataMasterArgs.builder
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.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 * The AWS organization data for the master account
 * @property excludedAccountIds If the multi cloud account is of membership type organization, list of accounts excluded from offering
 * @property organizationMembershipType The multi cloud account's membership type in the organization
 * Expected value is 'Organization'.
 * @property stacksetName If the multi cloud account is of membership type organization, this will be the name of the onboarding stackset
 */
public data class AwsOrganizationalDataMasterArgs(
    public val excludedAccountIds: Output>? = null,
    public val organizationMembershipType: Output,
    public val stacksetName: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.security.inputs.AwsOrganizationalDataMasterArgs =
        com.pulumi.azurenative.security.inputs.AwsOrganizationalDataMasterArgs.builder()
            .excludedAccountIds(excludedAccountIds?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .organizationMembershipType(organizationMembershipType.applyValue({ args0 -> args0 }))
            .stacksetName(stacksetName?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [AwsOrganizationalDataMasterArgs].
 */
@PulumiTagMarker
public class AwsOrganizationalDataMasterArgsBuilder internal constructor() {
    private var excludedAccountIds: Output>? = null

    private var organizationMembershipType: Output? = null

    private var stacksetName: Output? = null

    /**
     * @param value If the multi cloud account is of membership type organization, list of accounts excluded from offering
     */
    @JvmName("ddsaygywxaiiabap")
    public suspend fun excludedAccountIds(`value`: Output>) {
        this.excludedAccountIds = value
    }

    @JvmName("fhktfqnjfttxnywx")
    public suspend fun excludedAccountIds(vararg values: Output) {
        this.excludedAccountIds = Output.all(values.asList())
    }

    /**
     * @param values If the multi cloud account is of membership type organization, list of accounts excluded from offering
     */
    @JvmName("nlvrogrrobljvslu")
    public suspend fun excludedAccountIds(values: List>) {
        this.excludedAccountIds = Output.all(values)
    }

    /**
     * @param value The multi cloud account's membership type in the organization
     * Expected value is 'Organization'.
     */
    @JvmName("waxaphvspalwknbq")
    public suspend fun organizationMembershipType(`value`: Output) {
        this.organizationMembershipType = value
    }

    /**
     * @param value If the multi cloud account is of membership type organization, this will be the name of the onboarding stackset
     */
    @JvmName("hkxhbwgptnftfuyp")
    public suspend fun stacksetName(`value`: Output) {
        this.stacksetName = value
    }

    /**
     * @param value If the multi cloud account is of membership type organization, list of accounts excluded from offering
     */
    @JvmName("dichspfpmbxlxynx")
    public suspend fun excludedAccountIds(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.excludedAccountIds = mapped
    }

    /**
     * @param values If the multi cloud account is of membership type organization, list of accounts excluded from offering
     */
    @JvmName("bjyhfipvlppfvjfg")
    public suspend fun excludedAccountIds(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.excludedAccountIds = mapped
    }

    /**
     * @param value The multi cloud account's membership type in the organization
     * Expected value is 'Organization'.
     */
    @JvmName("xnnugnowgarsfphr")
    public suspend fun organizationMembershipType(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.organizationMembershipType = mapped
    }

    /**
     * @param value If the multi cloud account is of membership type organization, this will be the name of the onboarding stackset
     */
    @JvmName("jogffctuvhxbknqt")
    public suspend fun stacksetName(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.stacksetName = mapped
    }

    internal fun build(): AwsOrganizationalDataMasterArgs = AwsOrganizationalDataMasterArgs(
        excludedAccountIds = excludedAccountIds,
        organizationMembershipType = organizationMembershipType ?: throw
            PulumiNullFieldException("organizationMembershipType"),
        stacksetName = stacksetName,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy