com.pulumi.awsnative.s3.kotlin.MultiRegionAccessPointArgs.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.s3.kotlin
import com.pulumi.awsnative.s3.MultiRegionAccessPointArgs.builder
import com.pulumi.awsnative.s3.kotlin.inputs.MultiRegionAccessPointPublicAccessBlockConfigurationArgs
import com.pulumi.awsnative.s3.kotlin.inputs.MultiRegionAccessPointPublicAccessBlockConfigurationArgsBuilder
import com.pulumi.awsnative.s3.kotlin.inputs.MultiRegionAccessPointRegionArgs
import com.pulumi.awsnative.s3.kotlin.inputs.MultiRegionAccessPointRegionArgsBuilder
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
/**
* AWS::S3::MultiRegionAccessPoint is an Amazon S3 resource type that dynamically routes S3 requests to easily satisfy geographic compliance requirements based on customer-defined routing policies.
* @property name The name you want to assign to this Multi Region Access Point.
* @property publicAccessBlockConfiguration The PublicAccessBlock configuration that you want to apply to this Multi Region Access Point. You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status 'The Meaning of Public' in the Amazon Simple Storage Service Developer Guide.
* @property regions The list of buckets that you want to associate this Multi Region Access Point with.
*/
public data class MultiRegionAccessPointArgs(
public val name: Output? = null,
public val publicAccessBlockConfiguration: Output? = null,
public val regions: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.s3.MultiRegionAccessPointArgs =
com.pulumi.awsnative.s3.MultiRegionAccessPointArgs.builder()
.name(name?.applyValue({ args0 -> args0 }))
.publicAccessBlockConfiguration(
publicAccessBlockConfiguration?.applyValue({ args0 ->
args0.let({ args0 -> args0.toJava() })
}),
)
.regions(
regions?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
).build()
}
/**
* Builder for [MultiRegionAccessPointArgs].
*/
@PulumiTagMarker
public class MultiRegionAccessPointArgsBuilder internal constructor() {
private var name: Output? = null
private var publicAccessBlockConfiguration:
Output? = null
private var regions: Output>? = null
/**
* @param value The name you want to assign to this Multi Region Access Point.
*/
@JvmName("dbqhwoyyydgewoeg")
public suspend fun name(`value`: Output) {
this.name = value
}
/**
* @param value The PublicAccessBlock configuration that you want to apply to this Multi Region Access Point. You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status 'The Meaning of Public' in the Amazon Simple Storage Service Developer Guide.
*/
@JvmName("kuvbkhrbvvqyldue")
public suspend fun publicAccessBlockConfiguration(`value`: Output) {
this.publicAccessBlockConfiguration = value
}
/**
* @param value The list of buckets that you want to associate this Multi Region Access Point with.
*/
@JvmName("jcygsoovddvtkrrl")
public suspend fun regions(`value`: Output>) {
this.regions = value
}
@JvmName("vuypqnlptyvauync")
public suspend fun regions(vararg values: Output) {
this.regions = Output.all(values.asList())
}
/**
* @param values The list of buckets that you want to associate this Multi Region Access Point with.
*/
@JvmName("dvdsqoenwogqorqp")
public suspend fun regions(values: List