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

com.pulumi.awsnative.quicksight.kotlin.outputs.TopicCalculatedField.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: 0.122.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.quicksight.kotlin.outputs

import com.pulumi.awsnative.quicksight.kotlin.enums.TopicAuthorSpecifiedAggregation
import com.pulumi.awsnative.quicksight.kotlin.enums.TopicColumnDataRole
import com.pulumi.awsnative.quicksight.kotlin.enums.TopicDefaultAggregation
import com.pulumi.awsnative.quicksight.kotlin.enums.TopicTimeGranularity
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List

/**
 *
 * @property aggregation The default aggregation. Valid values for this structure are `SUM` , `MAX` , `MIN` , `COUNT` , `DISTINCT_COUNT` , and `AVERAGE` .
 * @property allowedAggregations The list of aggregation types that are allowed for the calculated field. Valid values for this structure are `COUNT` , `DISTINCT_COUNT` , `MIN` , `MAX` , `MEDIAN` , `SUM` , `AVERAGE` , `STDEV` , `STDEVP` , `VAR` , `VARP` , and `PERCENTILE` .
 * @property calculatedFieldDescription The calculated field description.
 * @property calculatedFieldName The calculated field name.
 * @property calculatedFieldSynonyms The other names or aliases for the calculated field.
 * @property cellValueSynonyms The other names or aliases for the calculated field cell value.
 * @property columnDataRole The column data role for a calculated field. Valid values for this structure are `DIMENSION` and `MEASURE` .
 * @property comparativeOrder The order in which data is displayed for the calculated field when it's used in a comparative context.
 * @property defaultFormatting The default formatting definition.
 * @property disableIndexing A Boolean value that indicates if a calculated field is visible in the autocomplete.
 * @property expression The calculated field expression.
 * @property isIncludedInTopic A boolean value that indicates if a calculated field is included in the topic.
 * @property neverAggregateInFilter A Boolean value that indicates whether to never aggregate calculated field in filters.
 * @property nonAdditive The non additive for the table style target.
 * @property notAllowedAggregations The list of aggregation types that are not allowed for the calculated field. Valid values for this structure are `COUNT` , `DISTINCT_COUNT` , `MIN` , `MAX` , `MEDIAN` , `SUM` , `AVERAGE` , `STDEV` , `STDEVP` , `VAR` , `VARP` , and `PERCENTILE` .
 * @property semanticType The semantic type.
 * @property timeGranularity The level of time precision that is used to aggregate `DateTime` values.
 */
public data class TopicCalculatedField(
    public val aggregation: TopicDefaultAggregation? = null,
    public val allowedAggregations: List? = null,
    public val calculatedFieldDescription: String? = null,
    public val calculatedFieldName: String,
    public val calculatedFieldSynonyms: List? = null,
    public val cellValueSynonyms: List? = null,
    public val columnDataRole: TopicColumnDataRole? = null,
    public val comparativeOrder: TopicComparativeOrder? = null,
    public val defaultFormatting: TopicDefaultFormatting? = null,
    public val disableIndexing: Boolean? = null,
    public val expression: String,
    public val isIncludedInTopic: Boolean? = null,
    public val neverAggregateInFilter: Boolean? = null,
    public val nonAdditive: Boolean? = null,
    public val notAllowedAggregations: List? = null,
    public val semanticType: TopicSemanticType? = null,
    public val timeGranularity: TopicTimeGranularity? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.quicksight.outputs.TopicCalculatedField): TopicCalculatedField = TopicCalculatedField(
            aggregation = javaType.aggregation().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.quicksight.kotlin.enums.TopicDefaultAggregation.Companion.toKotlin(args0)
                })
            }).orElse(null),
            allowedAggregations = javaType.allowedAggregations().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.quicksight.kotlin.enums.TopicAuthorSpecifiedAggregation.Companion.toKotlin(args0)
                })
            }),
            calculatedFieldDescription = javaType.calculatedFieldDescription().map({ args0 ->
                args0
            }).orElse(null),
            calculatedFieldName = javaType.calculatedFieldName(),
            calculatedFieldSynonyms = javaType.calculatedFieldSynonyms().map({ args0 -> args0 }),
            cellValueSynonyms = javaType.cellValueSynonyms().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.quicksight.kotlin.outputs.TopicCellValueSynonym.Companion.toKotlin(args0)
                })
            }),
            columnDataRole = javaType.columnDataRole().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.quicksight.kotlin.enums.TopicColumnDataRole.Companion.toKotlin(args0)
                })
            }).orElse(null),
            comparativeOrder = javaType.comparativeOrder().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.quicksight.kotlin.outputs.TopicComparativeOrder.Companion.toKotlin(args0)
                })
            }).orElse(null),
            defaultFormatting = javaType.defaultFormatting().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.quicksight.kotlin.outputs.TopicDefaultFormatting.Companion.toKotlin(args0)
                })
            }).orElse(null),
            disableIndexing = javaType.disableIndexing().map({ args0 -> args0 }).orElse(null),
            expression = javaType.expression(),
            isIncludedInTopic = javaType.isIncludedInTopic().map({ args0 -> args0 }).orElse(null),
            neverAggregateInFilter = javaType.neverAggregateInFilter().map({ args0 -> args0 }).orElse(null),
            nonAdditive = javaType.nonAdditive().map({ args0 -> args0 }).orElse(null),
            notAllowedAggregations = javaType.notAllowedAggregations().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.quicksight.kotlin.enums.TopicAuthorSpecifiedAggregation.Companion.toKotlin(args0)
                })
            }),
            semanticType = javaType.semanticType().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.quicksight.kotlin.outputs.TopicSemanticType.Companion.toKotlin(args0)
                })
            }).orElse(null),
            timeGranularity = javaType.timeGranularity().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.quicksight.kotlin.enums.TopicTimeGranularity.Companion.toKotlin(args0)
                })
            }).orElse(null),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy