Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.appstream.kotlin
import com.pulumi.awsnative.appstream.ApplicationArgs.builder
import com.pulumi.awsnative.appstream.kotlin.inputs.ApplicationS3LocationArgs
import com.pulumi.awsnative.appstream.kotlin.inputs.ApplicationS3LocationArgsBuilder
import com.pulumi.awsnative.appstream.kotlin.inputs.ApplicationTag0PropertiesArgs
import com.pulumi.awsnative.appstream.kotlin.inputs.ApplicationTag1PropertiesArgs
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.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Resource Type definition for AWS::AppStream::Application
* @property appBlockArn The app block ARN with which the application should be associated.
* @property attributesToDelete A list of attributes to delete from an application.
* @property description The description of the application.
* @property displayName The display name of the application. This name is visible to users in the application catalog.
* @property iconS3Location The icon S3 location of the application.
* @property instanceFamilies The instance families the application supports.
* *Allowed Values* : `GENERAL_PURPOSE` | `GRAPHICS_G4`
* @property launchParameters The launch parameters of the application.
* @property launchPath The launch path of the application.
* @property name The name of the application. This name is visible to users when a name is not specified in the DisplayName property.
* *Pattern* : `^[a-zA-Z0-9][a-zA-Z0-9_.-]{0,100}$`
* @property platforms The platforms the application supports.
* *Allowed Values* : `WINDOWS_SERVER_2019` | `AMAZON_LINUX2`
* @property tags The tags of the application.
* @property workingDirectory The working directory of the application.
*/
public data class ApplicationArgs(
public val appBlockArn: Output? = null,
public val attributesToDelete: Output>? = null,
public val description: Output? = null,
public val displayName: Output? = null,
public val iconS3Location: Output? = null,
public val instanceFamilies: Output>? = null,
public val launchParameters: Output? = null,
public val launchPath: Output? = null,
public val name: Output? = null,
public val platforms: Output>? = null,
public val tags: Output>>? = null,
public val workingDirectory: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.appstream.ApplicationArgs =
com.pulumi.awsnative.appstream.ApplicationArgs.builder()
.appBlockArn(appBlockArn?.applyValue({ args0 -> args0 }))
.attributesToDelete(attributesToDelete?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.description(description?.applyValue({ args0 -> args0 }))
.displayName(displayName?.applyValue({ args0 -> args0 }))
.iconS3Location(iconS3Location?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.instanceFamilies(instanceFamilies?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.launchParameters(launchParameters?.applyValue({ args0 -> args0 }))
.launchPath(launchPath?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 }))
.platforms(platforms?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
.tags(
tags?.applyValue({ args0 ->
args0.map({ args0 ->
args0.transform({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}, { args0 -> args0.let({ args0 -> args0.toJava() }) })
})
}),
)
.workingDirectory(workingDirectory?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ApplicationArgs].
*/
@PulumiTagMarker
public class ApplicationArgsBuilder internal constructor() {
private var appBlockArn: Output? = null
private var attributesToDelete: Output>? = null
private var description: Output? = null
private var displayName: Output? = null
private var iconS3Location: Output? = null
private var instanceFamilies: Output>? = null
private var launchParameters: Output? = null
private var launchPath: Output? = null
private var name: Output? = null
private var platforms: Output>? = null
private var tags:
Output>>? = null
private var workingDirectory: Output? = null
/**
* @param value The app block ARN with which the application should be associated.
*/
@JvmName("fheqhttxflltkayy")
public suspend fun appBlockArn(`value`: Output) {
this.appBlockArn = value
}
/**
* @param value A list of attributes to delete from an application.
*/
@JvmName("efrslsfduexalpcl")
public suspend fun attributesToDelete(`value`: Output>) {
this.attributesToDelete = value
}
@JvmName("pjgsxrvaaruiohpn")
public suspend fun attributesToDelete(vararg values: Output) {
this.attributesToDelete = Output.all(values.asList())
}
/**
* @param values A list of attributes to delete from an application.
*/
@JvmName("cfiavyepkhtajvtf")
public suspend fun attributesToDelete(values: List