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

com.pulumi.azurenative.web.kotlin.inputs.VirtualApplicationArgs.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: 2.82.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.web.kotlin.inputs

import com.pulumi.azurenative.web.inputs.VirtualApplicationArgs.builder
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.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 * Virtual application in an app.
 * @property physicalPath Physical path.
 * @property preloadEnabled true if preloading is enabled; otherwise, false.
 * @property virtualDirectories Virtual directories for virtual application.
 * @property virtualPath Virtual path.
 */
public data class VirtualApplicationArgs(
    public val physicalPath: Output? = null,
    public val preloadEnabled: Output? = null,
    public val virtualDirectories: Output>? = null,
    public val virtualPath: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.web.inputs.VirtualApplicationArgs =
        com.pulumi.azurenative.web.inputs.VirtualApplicationArgs.builder()
            .physicalPath(physicalPath?.applyValue({ args0 -> args0 }))
            .preloadEnabled(preloadEnabled?.applyValue({ args0 -> args0 }))
            .virtualDirectories(
                virtualDirectories?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .virtualPath(virtualPath?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [VirtualApplicationArgs].
 */
@PulumiTagMarker
public class VirtualApplicationArgsBuilder internal constructor() {
    private var physicalPath: Output? = null

    private var preloadEnabled: Output? = null

    private var virtualDirectories: Output>? = null

    private var virtualPath: Output? = null

    /**
     * @param value Physical path.
     */
    @JvmName("klfcgnghmndfmhni")
    public suspend fun physicalPath(`value`: Output) {
        this.physicalPath = value
    }

    /**
     * @param value true if preloading is enabled; otherwise, false.
     */
    @JvmName("avkmwqrennfsveil")
    public suspend fun preloadEnabled(`value`: Output) {
        this.preloadEnabled = value
    }

    /**
     * @param value Virtual directories for virtual application.
     */
    @JvmName("ptdvqallwpqueocf")
    public suspend fun virtualDirectories(`value`: Output>) {
        this.virtualDirectories = value
    }

    @JvmName("darrlvxnsjatqmbb")
    public suspend fun virtualDirectories(vararg values: Output) {
        this.virtualDirectories = Output.all(values.asList())
    }

    /**
     * @param values Virtual directories for virtual application.
     */
    @JvmName("qslaqltkhgtjcwab")
    public suspend fun virtualDirectories(values: List>) {
        this.virtualDirectories = Output.all(values)
    }

    /**
     * @param value Virtual path.
     */
    @JvmName("yrdfyxdndwknjhvf")
    public suspend fun virtualPath(`value`: Output) {
        this.virtualPath = value
    }

    /**
     * @param value Physical path.
     */
    @JvmName("fngxfrfxtdmttjhy")
    public suspend fun physicalPath(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.physicalPath = mapped
    }

    /**
     * @param value true if preloading is enabled; otherwise, false.
     */
    @JvmName("sqvebjwygpvkmupp")
    public suspend fun preloadEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.preloadEnabled = mapped
    }

    /**
     * @param value Virtual directories for virtual application.
     */
    @JvmName("wqrxkdppjjxkauxa")
    public suspend fun virtualDirectories(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.virtualDirectories = mapped
    }

    /**
     * @param argument Virtual directories for virtual application.
     */
    @JvmName("mbemtuhixrydfeag")
    public suspend fun virtualDirectories(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            VirtualDirectoryArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.virtualDirectories = mapped
    }

    /**
     * @param argument Virtual directories for virtual application.
     */
    @JvmName("lgnesunalwfaewdy")
    public suspend fun virtualDirectories(vararg argument: suspend VirtualDirectoryArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            VirtualDirectoryArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.virtualDirectories = mapped
    }

    /**
     * @param argument Virtual directories for virtual application.
     */
    @JvmName("voqdbqlykeaqadkl")
    public suspend fun virtualDirectories(argument: suspend VirtualDirectoryArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(VirtualDirectoryArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.virtualDirectories = mapped
    }

    /**
     * @param values Virtual directories for virtual application.
     */
    @JvmName("frjyibtxvihrjobb")
    public suspend fun virtualDirectories(vararg values: VirtualDirectoryArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.virtualDirectories = mapped
    }

    /**
     * @param value Virtual path.
     */
    @JvmName("dsuwutpkdbwqedfm")
    public suspend fun virtualPath(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.virtualPath = mapped
    }

    internal fun build(): VirtualApplicationArgs = VirtualApplicationArgs(
        physicalPath = physicalPath,
        preloadEnabled = preloadEnabled,
        virtualDirectories = virtualDirectories,
        virtualPath = virtualPath,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy