
com.pulumi.awsnative.timestream.kotlin.inputs.ScheduledQueryTimestreamConfigurationArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-kotlin Show documentation
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.timestream.kotlin.inputs
import com.pulumi.awsnative.timestream.inputs.ScheduledQueryTimestreamConfigurationArgs.builder
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.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Configuration needed to write data into the Timestream database and table.
* @property databaseName Name of Timestream database to which the query result will be written.
* @property dimensionMappings This is to allow mapping column(s) from the query result to the dimension in the destination table.
* @property measureNameColumn Name of the measure column. Also see `MultiMeasureMappings` and `MixedMeasureMappings` for how measure name properties on those relate to `MeasureNameColumn` .
* @property mixedMeasureMappings Specifies how to map measures to multi-measure records.
* @property multiMeasureMappings Multi-measure mappings.
* @property tableName Name of Timestream table that the query result will be written to. The table should be within the same database that is provided in Timestream configuration.
* @property timeColumn Column from query result that should be used as the time column in destination table. Column type for this should be TIMESTAMP.
*/
public data class ScheduledQueryTimestreamConfigurationArgs(
public val databaseName: Output,
public val dimensionMappings: Output>,
public val measureNameColumn: Output? = null,
public val mixedMeasureMappings: Output>? = null,
public val multiMeasureMappings: Output? = null,
public val tableName: Output,
public val timeColumn: Output,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.timestream.inputs.ScheduledQueryTimestreamConfigurationArgs =
com.pulumi.awsnative.timestream.inputs.ScheduledQueryTimestreamConfigurationArgs.builder()
.databaseName(databaseName.applyValue({ args0 -> args0 }))
.dimensionMappings(
dimensionMappings.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.measureNameColumn(measureNameColumn?.applyValue({ args0 -> args0 }))
.mixedMeasureMappings(
mixedMeasureMappings?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.multiMeasureMappings(
multiMeasureMappings?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.tableName(tableName.applyValue({ args0 -> args0 }))
.timeColumn(timeColumn.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ScheduledQueryTimestreamConfigurationArgs].
*/
@PulumiTagMarker
public class ScheduledQueryTimestreamConfigurationArgsBuilder internal constructor() {
private var databaseName: Output? = null
private var dimensionMappings: Output>? = null
private var measureNameColumn: Output? = null
private var mixedMeasureMappings: Output>? = null
private var multiMeasureMappings: Output? = null
private var tableName: Output? = null
private var timeColumn: Output? = null
/**
* @param value Name of Timestream database to which the query result will be written.
*/
@JvmName("evriackrhbdtxxlq")
public suspend fun databaseName(`value`: Output) {
this.databaseName = value
}
/**
* @param value This is to allow mapping column(s) from the query result to the dimension in the destination table.
*/
@JvmName("qlyaumbclklristr")
public suspend fun dimensionMappings(`value`: Output>) {
this.dimensionMappings = value
}
@JvmName("phimrjvbauvoseft")
public suspend fun dimensionMappings(vararg values: Output) {
this.dimensionMappings = Output.all(values.asList())
}
/**
* @param values This is to allow mapping column(s) from the query result to the dimension in the destination table.
*/
@JvmName("hnhgkjujrbarssxm")
public suspend fun dimensionMappings(values: List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy