![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.awsnative.events.kotlin.EndpointArgs.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.events.kotlin
import com.pulumi.awsnative.events.EndpointArgs.builder
import com.pulumi.awsnative.events.kotlin.inputs.EndpointEventBusArgs
import com.pulumi.awsnative.events.kotlin.inputs.EndpointEventBusArgsBuilder
import com.pulumi.awsnative.events.kotlin.inputs.EndpointReplicationConfigArgs
import com.pulumi.awsnative.events.kotlin.inputs.EndpointReplicationConfigArgsBuilder
import com.pulumi.awsnative.events.kotlin.inputs.EndpointRoutingConfigArgs
import com.pulumi.awsnative.events.kotlin.inputs.EndpointRoutingConfigArgsBuilder
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
/**
* Resource Type definition for AWS::Events::Endpoint.
* ## Example Usage
* ### Example
* No Java example available.
* ### Example
* No Java example available.
* @property description A description for the endpoint.
* @property eventBuses The event buses being used by the endpoint.
* *Exactly* : `2`
* @property name The name of the endpoint.
* @property replicationConfig Whether event replication was enabled or disabled for this endpoint. The default state is `ENABLED` which means you must supply a `RoleArn` . If you don't have a `RoleArn` or you don't want event replication enabled, set the state to `DISABLED` .
* @property roleArn The ARN of the role used by event replication for the endpoint.
* @property routingConfig The routing configuration of the endpoint.
*/
public data class EndpointArgs(
public val description: Output? = null,
public val eventBuses: Output>? = null,
public val name: Output? = null,
public val replicationConfig: Output? = null,
public val roleArn: Output? = null,
public val routingConfig: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.events.EndpointArgs =
com.pulumi.awsnative.events.EndpointArgs.builder()
.description(description?.applyValue({ args0 -> args0 }))
.eventBuses(
eventBuses?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.name(name?.applyValue({ args0 -> args0 }))
.replicationConfig(replicationConfig?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.roleArn(roleArn?.applyValue({ args0 -> args0 }))
.routingConfig(routingConfig?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [EndpointArgs].
*/
@PulumiTagMarker
public class EndpointArgsBuilder internal constructor() {
private var description: Output? = null
private var eventBuses: Output>? = null
private var name: Output? = null
private var replicationConfig: Output? = null
private var roleArn: Output? = null
private var routingConfig: Output? = null
/**
* @param value A description for the endpoint.
*/
@JvmName("jmdamumfshuwamxm")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value The event buses being used by the endpoint.
* *Exactly* : `2`
*/
@JvmName("xbybtvyuxqspgbkq")
public suspend fun eventBuses(`value`: Output>) {
this.eventBuses = value
}
@JvmName("sjikgfqfnwlllwad")
public suspend fun eventBuses(vararg values: Output) {
this.eventBuses = Output.all(values.asList())
}
/**
* @param values The event buses being used by the endpoint.
* *Exactly* : `2`
*/
@JvmName("gpdslvephwtttyup")
public suspend fun eventBuses(values: List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy