com.pulumi.awsnative.osis.kotlin.inputs.PipelineVpcOptionsArgs.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.osis.kotlin.inputs
import com.pulumi.awsnative.osis.inputs.PipelineVpcOptionsArgs.builder
import com.pulumi.awsnative.osis.kotlin.enums.PipelineVpcOptionsVpcEndpointManagement
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 com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Container for the values required to configure VPC access for the pipeline. If you don't specify these values, OpenSearch Ingestion Service creates the pipeline with a public endpoint.
* @property securityGroupIds A list of security groups associated with the VPC endpoint.
* @property subnetIds A list of subnet IDs associated with the VPC endpoint.
* @property vpcAttachmentOptions Options for attaching a VPC to the pipeline.
* @property vpcEndpointManagement Defines whether you or Amazon OpenSearch Ingestion service create and manage the VPC endpoint configured for the pipeline.
*/
public data class PipelineVpcOptionsArgs(
public val securityGroupIds: Output>? = null,
public val subnetIds: Output>,
public val vpcAttachmentOptions: Output? =
null,
public val vpcEndpointManagement: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.osis.inputs.PipelineVpcOptionsArgs =
com.pulumi.awsnative.osis.inputs.PipelineVpcOptionsArgs.builder()
.securityGroupIds(securityGroupIds?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.subnetIds(subnetIds.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.vpcAttachmentOptions(
vpcAttachmentOptions?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.vpcEndpointManagement(
vpcEndpointManagement?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [PipelineVpcOptionsArgs].
*/
@PulumiTagMarker
public class PipelineVpcOptionsArgsBuilder internal constructor() {
private var securityGroupIds: Output>? = null
private var subnetIds: Output>? = null
private var vpcAttachmentOptions: Output? =
null
private var vpcEndpointManagement: Output? = null
/**
* @param value A list of security groups associated with the VPC endpoint.
*/
@JvmName("mbkamdjsbklivqwc")
public suspend fun securityGroupIds(`value`: Output>) {
this.securityGroupIds = value
}
@JvmName("txytlhmvgmboaomc")
public suspend fun securityGroupIds(vararg values: Output) {
this.securityGroupIds = Output.all(values.asList())
}
/**
* @param values A list of security groups associated with the VPC endpoint.
*/
@JvmName("bgydjyltebbhvtca")
public suspend fun securityGroupIds(values: List