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

com.pulumi.gcp.pubsub.kotlin.outputs.GetTopicResult.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.pubsub.kotlin.outputs

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

/**
 * A collection of values returned by getTopic.
 * @property effectiveLabels
 * @property id The provider-assigned unique ID for this managed resource.
 * @property ingestionDataSourceSettings
 * @property kmsKeyName
 * @property labels
 * @property messageRetentionDuration
 * @property messageStoragePolicies
 * @property name
 * @property project
 * @property pulumiLabels
 * @property schemaSettings
 */
public data class GetTopicResult(
    public val effectiveLabels: Map,
    public val id: String,
    public val ingestionDataSourceSettings: List,
    public val kmsKeyName: String,
    public val labels: Map,
    public val messageRetentionDuration: String,
    public val messageStoragePolicies: List,
    public val name: String,
    public val project: String? = null,
    public val pulumiLabels: Map,
    public val schemaSettings: List,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.gcp.pubsub.outputs.GetTopicResult): GetTopicResult =
            GetTopicResult(
                effectiveLabels = javaType.effectiveLabels().map({ args0 -> args0.key.to(args0.value) }).toMap(),
                id = javaType.id(),
                ingestionDataSourceSettings = javaType.ingestionDataSourceSettings().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.gcp.pubsub.kotlin.outputs.GetTopicIngestionDataSourceSetting.Companion.toKotlin(args0)
                    })
                }),
                kmsKeyName = javaType.kmsKeyName(),
                labels = javaType.labels().map({ args0 -> args0.key.to(args0.value) }).toMap(),
                messageRetentionDuration = javaType.messageRetentionDuration(),
                messageStoragePolicies = javaType.messageStoragePolicies().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.gcp.pubsub.kotlin.outputs.GetTopicMessageStoragePolicy.Companion.toKotlin(args0)
                    })
                }),
                name = javaType.name(),
                project = javaType.project().map({ args0 -> args0 }).orElse(null),
                pulumiLabels = javaType.pulumiLabels().map({ args0 -> args0.key.to(args0.value) }).toMap(),
                schemaSettings = javaType.schemaSettings().map({ args0 ->
                    args0.let({ args0 ->
                        com.pulumi.gcp.pubsub.kotlin.outputs.GetTopicSchemaSetting.Companion.toKotlin(args0)
                    })
                }),
            )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy