All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azure.dashboard.kotlin.inputs.GrafanaSmtpArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 6.21.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.dashboard.kotlin.inputs

import com.pulumi.azure.dashboard.inputs.GrafanaSmtpArgs.builder
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 kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property enabled Whether to enable the smtp setting of the Grafana instance. Defaults to `false`.
 * @property fromAddress Address used when sending emails.
 * @property fromName Name used when sending emails. Defaults to `Azure Managed Grafana Notification`.
 * @property host SMTP server hostname with port, e.g. test.email.net:587
 * @property password Password of SMTP authentication.
 * @property startTlsPolicy Whether to use TLS when connecting to SMTP server. Possible values are `OpportunisticStartTLS`, `NoStartTLS`, `MandatoryStartTLS`.
 * @property user User of SMTP authentication.
 * @property verificationSkipEnabled Whether verify SSL for SMTP server. Defaults to `false`.
 */
public data class GrafanaSmtpArgs(
    public val enabled: Output? = null,
    public val fromAddress: Output,
    public val fromName: Output? = null,
    public val host: Output,
    public val password: Output,
    public val startTlsPolicy: Output,
    public val user: Output,
    public val verificationSkipEnabled: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azure.dashboard.inputs.GrafanaSmtpArgs =
        com.pulumi.azure.dashboard.inputs.GrafanaSmtpArgs.builder()
            .enabled(enabled?.applyValue({ args0 -> args0 }))
            .fromAddress(fromAddress.applyValue({ args0 -> args0 }))
            .fromName(fromName?.applyValue({ args0 -> args0 }))
            .host(host.applyValue({ args0 -> args0 }))
            .password(password.applyValue({ args0 -> args0 }))
            .startTlsPolicy(startTlsPolicy.applyValue({ args0 -> args0 }))
            .user(user.applyValue({ args0 -> args0 }))
            .verificationSkipEnabled(verificationSkipEnabled?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [GrafanaSmtpArgs].
 */
@PulumiTagMarker
public class GrafanaSmtpArgsBuilder internal constructor() {
    private var enabled: Output? = null

    private var fromAddress: Output? = null

    private var fromName: Output? = null

    private var host: Output? = null

    private var password: Output? = null

    private var startTlsPolicy: Output? = null

    private var user: Output? = null

    private var verificationSkipEnabled: Output? = null

    /**
     * @param value Whether to enable the smtp setting of the Grafana instance. Defaults to `false`.
     */
    @JvmName("ojqlujkdxtcgxmgm")
    public suspend fun enabled(`value`: Output) {
        this.enabled = value
    }

    /**
     * @param value Address used when sending emails.
     */
    @JvmName("emgbsjrqjuvywufb")
    public suspend fun fromAddress(`value`: Output) {
        this.fromAddress = value
    }

    /**
     * @param value Name used when sending emails. Defaults to `Azure Managed Grafana Notification`.
     */
    @JvmName("xmurkafpmghcaepu")
    public suspend fun fromName(`value`: Output) {
        this.fromName = value
    }

    /**
     * @param value SMTP server hostname with port, e.g. test.email.net:587
     */
    @JvmName("rjuasccqfisbpirr")
    public suspend fun host(`value`: Output) {
        this.host = value
    }

    /**
     * @param value Password of SMTP authentication.
     */
    @JvmName("lcxmqfdvukjrnoah")
    public suspend fun password(`value`: Output) {
        this.password = value
    }

    /**
     * @param value Whether to use TLS when connecting to SMTP server. Possible values are `OpportunisticStartTLS`, `NoStartTLS`, `MandatoryStartTLS`.
     */
    @JvmName("ssyqexussytgxrql")
    public suspend fun startTlsPolicy(`value`: Output) {
        this.startTlsPolicy = value
    }

    /**
     * @param value User of SMTP authentication.
     */
    @JvmName("qnxlcitmramibgno")
    public suspend fun user(`value`: Output) {
        this.user = value
    }

    /**
     * @param value Whether verify SSL for SMTP server. Defaults to `false`.
     */
    @JvmName("kdhupdtlyevswpkq")
    public suspend fun verificationSkipEnabled(`value`: Output) {
        this.verificationSkipEnabled = value
    }

    /**
     * @param value Whether to enable the smtp setting of the Grafana instance. Defaults to `false`.
     */
    @JvmName("kiimgsfhprnhjnrt")
    public suspend fun enabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.enabled = mapped
    }

    /**
     * @param value Address used when sending emails.
     */
    @JvmName("rqhoaafngajmkgaa")
    public suspend fun fromAddress(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.fromAddress = mapped
    }

    /**
     * @param value Name used when sending emails. Defaults to `Azure Managed Grafana Notification`.
     */
    @JvmName("yruphjwjfekhcrdk")
    public suspend fun fromName(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.fromName = mapped
    }

    /**
     * @param value SMTP server hostname with port, e.g. test.email.net:587
     */
    @JvmName("eludnsatlpmnxomi")
    public suspend fun host(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.host = mapped
    }

    /**
     * @param value Password of SMTP authentication.
     */
    @JvmName("cqenfkogkaaxlgdu")
    public suspend fun password(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.password = mapped
    }

    /**
     * @param value Whether to use TLS when connecting to SMTP server. Possible values are `OpportunisticStartTLS`, `NoStartTLS`, `MandatoryStartTLS`.
     */
    @JvmName("llkhamtmikbcylld")
    public suspend fun startTlsPolicy(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.startTlsPolicy = mapped
    }

    /**
     * @param value User of SMTP authentication.
     */
    @JvmName("dfnxqfnfnprcbmsx")
    public suspend fun user(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.user = mapped
    }

    /**
     * @param value Whether verify SSL for SMTP server. Defaults to `false`.
     */
    @JvmName("uahkncmrvevbpaga")
    public suspend fun verificationSkipEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.verificationSkipEnabled = mapped
    }

    internal fun build(): GrafanaSmtpArgs = GrafanaSmtpArgs(
        enabled = enabled,
        fromAddress = fromAddress ?: throw PulumiNullFieldException("fromAddress"),
        fromName = fromName,
        host = host ?: throw PulumiNullFieldException("host"),
        password = password ?: throw PulumiNullFieldException("password"),
        startTlsPolicy = startTlsPolicy ?: throw PulumiNullFieldException("startTlsPolicy"),
        user = user ?: throw PulumiNullFieldException("user"),
        verificationSkipEnabled = verificationSkipEnabled,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy