com.pulumi.digitalocean.kotlin.inputs.AppSpecServiceLogDestinationArgs.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.AppSpecServiceLogDestinationArgs.builder
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.jvm.JvmName
/**
*
* @property datadog Datadog configuration.
* @property logtail Logtail configuration.
* @property name Name of the log destination. Minimum length: 2. Maximum length: 42.
* @property papertrail Papertrail configuration.
*/
public data class AppSpecServiceLogDestinationArgs(
public val datadog: Output? = null,
public val logtail: Output? = null,
public val name: Output,
public val papertrail: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.digitalocean.inputs.AppSpecServiceLogDestinationArgs =
com.pulumi.digitalocean.inputs.AppSpecServiceLogDestinationArgs.builder()
.datadog(datadog?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.logtail(logtail?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.name(name.applyValue({ args0 -> args0 }))
.papertrail(papertrail?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [AppSpecServiceLogDestinationArgs].
*/
@PulumiTagMarker
public class AppSpecServiceLogDestinationArgsBuilder internal constructor() {
private var datadog: Output? = null
private var logtail: Output? = null
private var name: Output? = null
private var papertrail: Output? = null
/**
* @param value Datadog configuration.
*/
@JvmName("mtwmsxxybegbofhg")
public suspend fun datadog(`value`: Output) {
this.datadog = value
}
/**
* @param value Logtail configuration.
*/
@JvmName("ntvihcvuqkulerst")
public suspend fun logtail(`value`: Output) {
this.logtail = value
}
/**
* @param value Name of the log destination. Minimum length: 2. Maximum length: 42.
*/
@JvmName("edfhpphieebjsjhq")
public suspend fun name(`value`: Output) {
this.name = value
}
/**
* @param value Papertrail configuration.
*/
@JvmName("qbvrnmwecsydyodp")
public suspend fun papertrail(`value`: Output) {
this.papertrail = value
}
/**
* @param value Datadog configuration.
*/
@JvmName("canoroeqolqkabjt")
public suspend fun datadog(`value`: AppSpecServiceLogDestinationDatadogArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.datadog = mapped
}
/**
* @param argument Datadog configuration.
*/
@JvmName("gdyqiaauygpgrmti")
public suspend fun datadog(argument: suspend AppSpecServiceLogDestinationDatadogArgsBuilder.() -> Unit) {
val toBeMapped = AppSpecServiceLogDestinationDatadogArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.datadog = mapped
}
/**
* @param value Logtail configuration.
*/
@JvmName("ylibsrnoqdjlkruf")
public suspend fun logtail(`value`: AppSpecServiceLogDestinationLogtailArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.logtail = mapped
}
/**
* @param argument Logtail configuration.
*/
@JvmName("pmkdgosurlaanbfb")
public suspend fun logtail(argument: suspend AppSpecServiceLogDestinationLogtailArgsBuilder.() -> Unit) {
val toBeMapped = AppSpecServiceLogDestinationLogtailArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.logtail = mapped
}
/**
* @param value Name of the log destination. Minimum length: 2. Maximum length: 42.
*/
@JvmName("yuvkljuuqhlvlovh")
public suspend fun name(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.name = mapped
}
/**
* @param value Papertrail configuration.
*/
@JvmName("krcqxplfwatgolbo")
public suspend fun papertrail(`value`: AppSpecServiceLogDestinationPapertrailArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.papertrail = mapped
}
/**
* @param argument Papertrail configuration.
*/
@JvmName("bnfuaufytrrgsfbn")
public suspend fun papertrail(argument: suspend AppSpecServiceLogDestinationPapertrailArgsBuilder.() -> Unit) {
val toBeMapped = AppSpecServiceLogDestinationPapertrailArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.papertrail = mapped
}
internal fun build(): AppSpecServiceLogDestinationArgs = AppSpecServiceLogDestinationArgs(
datadog = datadog,
logtail = logtail,
name = name ?: throw PulumiNullFieldException("name"),
papertrail = papertrail,
)
}