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

com.pulumi.gcp.firebase.kotlin.outputs.ExtensionsInstanceConfig.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: 8.10.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.firebase.kotlin.outputs

import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.collections.Map

/**
 *
 * @property allowedEventTypes List of extension events selected by consumer that extension is allowed to
 * emit, identified by their types.
 * @property createTime (Output)
 * The time at which the Extension Instance Config was created.
 * @property eventarcChannel Fully qualified Eventarc resource name that consumers should use for event triggers.
 * @property extensionRef The ref of the Extension from the Registry (e.g. publisher-id/awesome-extension)
 * @property extensionVersion The version of the Extension from the Registry (e.g. 1.0.3). If left blank, latest is assumed.
 * @property name (Output)
 * The unique identifier for this configuration.
 * @property params Environment variables that may be configured for the Extension
 * @property populatedPostinstallContent (Output)
 * Postinstall instructions to be shown for this Extension, with
 * template strings representing function and parameter values substituted
 * with actual values. These strings include: ${param:FOO},
 * ${function:myFunc.url},
 * ${function:myFunc.name}, and ${function:myFunc.location}
 * - - -
 * @property systemParams Params whose values are only available at deployment time.
 * Unlike other params, these will not be set as environment variables on
 * functions. See a full list of system parameters at
 * https://firebase.google.com/docs/extensions/publishers/parameters#system_parameters
 */
public data class ExtensionsInstanceConfig(
    public val allowedEventTypes: List? = null,
    public val createTime: String? = null,
    public val eventarcChannel: String? = null,
    public val extensionRef: String,
    public val extensionVersion: String? = null,
    public val name: String? = null,
    public val params: Map,
    public val populatedPostinstallContent: String? = null,
    public val systemParams: Map? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.firebase.outputs.ExtensionsInstanceConfig): ExtensionsInstanceConfig = ExtensionsInstanceConfig(
            allowedEventTypes = javaType.allowedEventTypes().map({ args0 -> args0 }),
            createTime = javaType.createTime().map({ args0 -> args0 }).orElse(null),
            eventarcChannel = javaType.eventarcChannel().map({ args0 -> args0 }).orElse(null),
            extensionRef = javaType.extensionRef(),
            extensionVersion = javaType.extensionVersion().map({ args0 -> args0 }).orElse(null),
            name = javaType.name().map({ args0 -> args0 }).orElse(null),
            params = javaType.params().map({ args0 -> args0.key.to(args0.value) }).toMap(),
            populatedPostinstallContent = javaType.populatedPostinstallContent().map({ args0 ->
                args0
            }).orElse(null),
            systemParams = javaType.systemParams().map({ args0 -> args0.key.to(args0.value) }).toMap(),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy