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.pipes.kotlin.inputs
import com.pulumi.awsnative.pipes.inputs.PipeTargetTimestreamParametersArgs.builder
import com.pulumi.awsnative.pipes.kotlin.enums.PipeEpochTimeUnit
import com.pulumi.awsnative.pipes.kotlin.enums.PipeTimeFieldType
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
/**
*
* @property dimensionMappings Map source data to dimensions in the target Timestream for LiveAnalytics table.
* For more information, see [Amazon Timestream for LiveAnalytics concepts](https://docs.aws.amazon.com/timestream/latest/developerguide/concepts.html)
* @property epochTimeUnit The granularity of the time units used. Default is `MILLISECONDS` .
* Required if `TimeFieldType` is specified as `EPOCH` .
* @property multiMeasureMappings Maps multiple measures from the source event to the same record in the specified Timestream for LiveAnalytics table.
* @property singleMeasureMappings Mappings of single source data fields to individual records in the specified Timestream for LiveAnalytics table.
* @property timeFieldType The type of time value used.
* The default is `EPOCH` .
* @property timeValue Dynamic path to the source data field that represents the time value for your data.
* @property timestampFormat How to format the timestamps. For example, `YYYY-MM-DDThh:mm:ss.sssTZD` .
* Required if `TimeFieldType` is specified as `TIMESTAMP_FORMAT` .
* @property versionValue 64 bit version value or source data field that represents the version value for your data.
* Write requests with a higher version number will update the existing measure values of the record and version. In cases where the measure value is the same, the version will still be updated.
* Default value is 1.
* Timestream for LiveAnalytics does not support updating partial measure values in a record.
* Write requests for duplicate data with a higher version number will update the existing measure value and version. In cases where the measure value is the same, `Version` will still be updated. Default value is `1` .
* > `Version` must be `1` or greater, or you will receive a `ValidationException` error.
*/
public data class PipeTargetTimestreamParametersArgs(
public val dimensionMappings: Output>,
public val epochTimeUnit: Output? = null,
public val multiMeasureMappings: Output>? = null,
public val singleMeasureMappings: Output>? = null,
public val timeFieldType: Output? = null,
public val timeValue: Output,
public val timestampFormat: Output? = null,
public val versionValue: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.pipes.inputs.PipeTargetTimestreamParametersArgs =
com.pulumi.awsnative.pipes.inputs.PipeTargetTimestreamParametersArgs.builder()
.dimensionMappings(
dimensionMappings.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.epochTimeUnit(epochTimeUnit?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.multiMeasureMappings(
multiMeasureMappings?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.singleMeasureMappings(
singleMeasureMappings?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.timeFieldType(timeFieldType?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.timeValue(timeValue.applyValue({ args0 -> args0 }))
.timestampFormat(timestampFormat?.applyValue({ args0 -> args0 }))
.versionValue(versionValue.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [PipeTargetTimestreamParametersArgs].
*/
@PulumiTagMarker
public class PipeTargetTimestreamParametersArgsBuilder internal constructor() {
private var dimensionMappings: Output>? = null
private var epochTimeUnit: Output? = null
private var multiMeasureMappings: Output>? = null
private var singleMeasureMappings: Output>? = null
private var timeFieldType: Output? = null
private var timeValue: Output? = null
private var timestampFormat: Output? = null
private var versionValue: Output? = null
/**
* @param value Map source data to dimensions in the target Timestream for LiveAnalytics table.
* For more information, see [Amazon Timestream for LiveAnalytics concepts](https://docs.aws.amazon.com/timestream/latest/developerguide/concepts.html)
*/
@JvmName("hbfnlxcjhqnyigyy")
public suspend fun dimensionMappings(`value`: Output>) {
this.dimensionMappings = value
}
@JvmName("esdubekhlqwngyrp")
public suspend fun dimensionMappings(vararg values: Output) {
this.dimensionMappings = Output.all(values.asList())
}
/**
* @param values Map source data to dimensions in the target Timestream for LiveAnalytics table.
* For more information, see [Amazon Timestream for LiveAnalytics concepts](https://docs.aws.amazon.com/timestream/latest/developerguide/concepts.html)
*/
@JvmName("gvvyojwlyaojvhia")
public suspend fun dimensionMappings(values: List