com.pulumi.digitalocean.kotlin.inputs.LoadBalancerStickySessionsArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.digitalocean.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.digitalocean.inputs.LoadBalancerStickySessionsArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property cookieName The name to be used for the cookie sent to the client. This attribute is required when using `cookies` for the sticky sessions type.
* @property cookieTtlSeconds The number of seconds until the cookie set by the Load Balancer expires. This attribute is required when using `cookies` for the sticky sessions type.
* @property type An attribute indicating how and if requests from a client will be persistently served by the same backend Droplet. The possible values are `cookies` or `none`. If not specified, the default value is `none`.
*/
public data class LoadBalancerStickySessionsArgs(
public val cookieName: Output? = null,
public val cookieTtlSeconds: Output? = null,
public val type: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.digitalocean.inputs.LoadBalancerStickySessionsArgs =
com.pulumi.digitalocean.inputs.LoadBalancerStickySessionsArgs.builder()
.cookieName(cookieName?.applyValue({ args0 -> args0 }))
.cookieTtlSeconds(cookieTtlSeconds?.applyValue({ args0 -> args0 }))
.type(type?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [LoadBalancerStickySessionsArgs].
*/
@PulumiTagMarker
public class LoadBalancerStickySessionsArgsBuilder internal constructor() {
private var cookieName: Output? = null
private var cookieTtlSeconds: Output? = null
private var type: Output? = null
/**
* @param value The name to be used for the cookie sent to the client. This attribute is required when using `cookies` for the sticky sessions type.
*/
@JvmName("sqmikpaugknxuxmf")
public suspend fun cookieName(`value`: Output) {
this.cookieName = value
}
/**
* @param value The number of seconds until the cookie set by the Load Balancer expires. This attribute is required when using `cookies` for the sticky sessions type.
*/
@JvmName("moaxwsrxnslcbivt")
public suspend fun cookieTtlSeconds(`value`: Output) {
this.cookieTtlSeconds = value
}
/**
* @param value An attribute indicating how and if requests from a client will be persistently served by the same backend Droplet. The possible values are `cookies` or `none`. If not specified, the default value is `none`.
*/
@JvmName("uejbspfgnhmnlccj")
public suspend fun type(`value`: Output) {
this.type = value
}
/**
* @param value The name to be used for the cookie sent to the client. This attribute is required when using `cookies` for the sticky sessions type.
*/
@JvmName("dyhvpbpjruahmptr")
public suspend fun cookieName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.cookieName = mapped
}
/**
* @param value The number of seconds until the cookie set by the Load Balancer expires. This attribute is required when using `cookies` for the sticky sessions type.
*/
@JvmName("xajcdqbqbadkgdwo")
public suspend fun cookieTtlSeconds(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.cookieTtlSeconds = mapped
}
/**
* @param value An attribute indicating how and if requests from a client will be persistently served by the same backend Droplet. The possible values are `cookies` or `none`. If not specified, the default value is `none`.
*/
@JvmName("xwnmdlujuloodecd")
public suspend fun type(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.type = mapped
}
internal fun build(): LoadBalancerStickySessionsArgs = LoadBalancerStickySessionsArgs(
cookieName = cookieName,
cookieTtlSeconds = cookieTtlSeconds,
type = type,
)
}