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

com.pulumi.azurenative.datafactory.kotlin.inputs.SSISLogLocationArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.datafactory.kotlin.inputs

import com.pulumi.azurenative.datafactory.inputs.SSISLogLocationArgs.builder
import com.pulumi.azurenative.datafactory.kotlin.enums.SsisLogLocationType
import com.pulumi.core.Either
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.Any
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 * SSIS package execution log location
 * @property accessCredential The package execution log access credential.
 * @property logPath The SSIS package execution log path. Type: string (or Expression with resultType string).
 * @property logRefreshInterval Specifies the interval to refresh log. The default interval is 5 minutes. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
 * @property type The type of SSIS log location.
 */
public data class SSISLogLocationArgs(
    public val accessCredential: Output? = null,
    public val logPath: Output,
    public val logRefreshInterval: Output? = null,
    public val type: Output>,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.datafactory.inputs.SSISLogLocationArgs =
        com.pulumi.azurenative.datafactory.inputs.SSISLogLocationArgs.builder()
            .accessCredential(accessCredential?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .logPath(logPath.applyValue({ args0 -> args0 }))
            .logRefreshInterval(logRefreshInterval?.applyValue({ args0 -> args0 }))
            .type(
                type.applyValue({ args0 ->
                    args0.transform({ args0 -> args0 }, { args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            ).build()
}

/**
 * Builder for [SSISLogLocationArgs].
 */
@PulumiTagMarker
public class SSISLogLocationArgsBuilder internal constructor() {
    private var accessCredential: Output? = null

    private var logPath: Output? = null

    private var logRefreshInterval: Output? = null

    private var type: Output>? = null

    /**
     * @param value The package execution log access credential.
     */
    @JvmName("byhxmhyedmvaftbu")
    public suspend fun accessCredential(`value`: Output) {
        this.accessCredential = value
    }

    /**
     * @param value The SSIS package execution log path. Type: string (or Expression with resultType string).
     */
    @JvmName("hxmkajktyrqgbxfn")
    public suspend fun logPath(`value`: Output) {
        this.logPath = value
    }

    /**
     * @param value Specifies the interval to refresh log. The default interval is 5 minutes. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
     */
    @JvmName("cnsvqfupayeguqqt")
    public suspend fun logRefreshInterval(`value`: Output) {
        this.logRefreshInterval = value
    }

    /**
     * @param value The type of SSIS log location.
     */
    @JvmName("khoaaldqbwjitpsk")
    public suspend fun type(`value`: Output>) {
        this.type = value
    }

    /**
     * @param value The package execution log access credential.
     */
    @JvmName("wayrjerhqlfagkcb")
    public suspend fun accessCredential(`value`: SSISAccessCredentialArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.accessCredential = mapped
    }

    /**
     * @param argument The package execution log access credential.
     */
    @JvmName("hgquhimteleeyork")
    public suspend fun accessCredential(argument: suspend SSISAccessCredentialArgsBuilder.() -> Unit) {
        val toBeMapped = SSISAccessCredentialArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.accessCredential = mapped
    }

    /**
     * @param value The SSIS package execution log path. Type: string (or Expression with resultType string).
     */
    @JvmName("bafywoqkqxrlnago")
    public suspend fun logPath(`value`: Any) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.logPath = mapped
    }

    /**
     * @param value Specifies the interval to refresh log. The default interval is 5 minutes. Type: string (or Expression with resultType string), pattern: ((\d+)\.)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])).
     */
    @JvmName("ealkxtxjhtpouacw")
    public suspend fun logRefreshInterval(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.logRefreshInterval = mapped
    }

    /**
     * @param value The type of SSIS log location.
     */
    @JvmName("xiyxvnhtrffkyqjq")
    public suspend fun type(`value`: Either) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.type = mapped
    }

    /**
     * @param value The type of SSIS log location.
     */
    @JvmName("waaytlltqgogaldq")
    public fun type(`value`: String) {
        val toBeMapped = Either.ofLeft(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.type = mapped
    }

    /**
     * @param value The type of SSIS log location.
     */
    @JvmName("whxojrnjsccdlqlc")
    public fun type(`value`: SsisLogLocationType) {
        val toBeMapped = Either.ofRight(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.type = mapped
    }

    internal fun build(): SSISLogLocationArgs = SSISLogLocationArgs(
        accessCredential = accessCredential,
        logPath = logPath ?: throw PulumiNullFieldException("logPath"),
        logRefreshInterval = logRefreshInterval,
        type = type ?: throw PulumiNullFieldException("type"),
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy