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

com.pulumi.aws.fms.kotlin.inputs.PolicyIncludeMapArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 6.57.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.aws.fms.kotlin.inputs

import com.pulumi.aws.fms.inputs.PolicyIncludeMapArgs.builder
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.collections.List
import kotlin.jvm.JvmName

/**
 *
 * @property accounts A list of AWS Organization member Accounts that you want to include for this AWS FMS Policy.
 * @property orgunits A list of IDs of the AWS Organizational Units that you want to include for this AWS FMS Policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time.
 * You can specify inclusions or exclusions, but not both. If you specify an `include_map`, AWS Firewall Manager applies the policy to all accounts specified by the `include_map`, and does not evaluate any `exclude_map` specifications. If you do not specify an `include_map`, then Firewall Manager applies the policy to all accounts except for those specified by the `exclude_map`.
 */
public data class PolicyIncludeMapArgs(
    public val accounts: Output>? = null,
    public val orgunits: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.aws.fms.inputs.PolicyIncludeMapArgs =
        com.pulumi.aws.fms.inputs.PolicyIncludeMapArgs.builder()
            .accounts(accounts?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .orgunits(orgunits?.applyValue({ args0 -> args0.map({ args0 -> args0 }) })).build()
}

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

    private var orgunits: Output>? = null

    /**
     * @param value A list of AWS Organization member Accounts that you want to include for this AWS FMS Policy.
     */
    @JvmName("uhhtrivinqswcbud")
    public suspend fun accounts(`value`: Output>) {
        this.accounts = value
    }

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

    /**
     * @param values A list of AWS Organization member Accounts that you want to include for this AWS FMS Policy.
     */
    @JvmName("pthplakpnlmkbbmi")
    public suspend fun accounts(values: List>) {
        this.accounts = Output.all(values)
    }

    /**
     * @param value A list of IDs of the AWS Organizational Units that you want to include for this AWS FMS Policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time.
     * You can specify inclusions or exclusions, but not both. If you specify an `include_map`, AWS Firewall Manager applies the policy to all accounts specified by the `include_map`, and does not evaluate any `exclude_map` specifications. If you do not specify an `include_map`, then Firewall Manager applies the policy to all accounts except for those specified by the `exclude_map`.
     */
    @JvmName("owwafjmweqassabi")
    public suspend fun orgunits(`value`: Output>) {
        this.orgunits = value
    }

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

    /**
     * @param values A list of IDs of the AWS Organizational Units that you want to include for this AWS FMS Policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time.
     * You can specify inclusions or exclusions, but not both. If you specify an `include_map`, AWS Firewall Manager applies the policy to all accounts specified by the `include_map`, and does not evaluate any `exclude_map` specifications. If you do not specify an `include_map`, then Firewall Manager applies the policy to all accounts except for those specified by the `exclude_map`.
     */
    @JvmName("jpwxteregldnqtta")
    public suspend fun orgunits(values: List>) {
        this.orgunits = Output.all(values)
    }

    /**
     * @param value A list of AWS Organization member Accounts that you want to include for this AWS FMS Policy.
     */
    @JvmName("jlhqxckehhvqptkv")
    public suspend fun accounts(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.accounts = mapped
    }

    /**
     * @param values A list of AWS Organization member Accounts that you want to include for this AWS FMS Policy.
     */
    @JvmName("scddlmnyenvnhcxs")
    public suspend fun accounts(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.accounts = mapped
    }

    /**
     * @param value A list of IDs of the AWS Organizational Units that you want to include for this AWS FMS Policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time.
     * You can specify inclusions or exclusions, but not both. If you specify an `include_map`, AWS Firewall Manager applies the policy to all accounts specified by the `include_map`, and does not evaluate any `exclude_map` specifications. If you do not specify an `include_map`, then Firewall Manager applies the policy to all accounts except for those specified by the `exclude_map`.
     */
    @JvmName("lmxaeemwkkqnfiok")
    public suspend fun orgunits(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.orgunits = mapped
    }

    /**
     * @param values A list of IDs of the AWS Organizational Units that you want to include for this AWS FMS Policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time.
     * You can specify inclusions or exclusions, but not both. If you specify an `include_map`, AWS Firewall Manager applies the policy to all accounts specified by the `include_map`, and does not evaluate any `exclude_map` specifications. If you do not specify an `include_map`, then Firewall Manager applies the policy to all accounts except for those specified by the `exclude_map`.
     */
    @JvmName("oubucolowxmtsrte")
    public suspend fun orgunits(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.orgunits = mapped
    }

    internal fun build(): PolicyIncludeMapArgs = PolicyIncludeMapArgs(
        accounts = accounts,
        orgunits = orgunits,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy