
commonMain.aws.sdk.kotlin.services.quicksight.model.DataSet.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.quicksight.model
import aws.smithy.kotlin.runtime.time.Instant
/**
* Dataset.
*/
class DataSet private constructor(builder: Builder) {
/**
* The Amazon Resource Name (ARN) of the resource.
*/
val arn: kotlin.String? = builder.arn
/**
* Groupings of columns that work together in certain Amazon QuickSight features. Currently, only geospatial hierarchy is supported.
*/
val columnGroups: List? = builder.columnGroups
/**
* A set of one or more definitions of a ` ColumnLevelPermissionRule `.
*/
val columnLevelPermissionRules: List? = builder.columnLevelPermissionRules
/**
* The amount of SPICE capacity used by this dataset. This is 0 if the dataset isn't imported into SPICE.
*/
val consumedSpiceCapacityInBytes: kotlin.Long = builder.consumedSpiceCapacityInBytes
/**
* The time that this dataset was created.
*/
val createdTime: aws.smithy.kotlin.runtime.time.Instant? = builder.createdTime
/**
* The ID of the dataset.
*/
val dataSetId: kotlin.String? = builder.dataSetId
/**
* The usage configuration to apply to child datasets that reference this dataset as a source.
*/
val dataSetUsageConfiguration: aws.sdk.kotlin.services.quicksight.model.DataSetUsageConfiguration? = builder.dataSetUsageConfiguration
/**
* The folder that contains fields and nested subfolders for your dataset.
*/
val fieldFolders: Map? = builder.fieldFolders
/**
* A value that indicates whether you want to import the data into SPICE.
*/
val importMode: aws.sdk.kotlin.services.quicksight.model.DataSetImportMode? = builder.importMode
/**
* The last time that this dataset was updated.
*/
val lastUpdatedTime: aws.smithy.kotlin.runtime.time.Instant? = builder.lastUpdatedTime
/**
* Configures the combination and transformation of the data from the physical tables.
*/
val logicalTableMap: Map? = builder.logicalTableMap
/**
* A display name for the dataset.
*/
val name: kotlin.String? = builder.name
/**
* The list of columns after all transforms. These columns are available in templates, analyses, and dashboards.
*/
val outputColumns: List? = builder.outputColumns
/**
* Declares the physical tables that are available in the underlying data sources.
*/
val physicalTableMap: Map? = builder.physicalTableMap
/**
* The row-level security configuration for the dataset.
*/
val rowLevelPermissionDataSet: aws.sdk.kotlin.services.quicksight.model.RowLevelPermissionDataSet? = builder.rowLevelPermissionDataSet
/**
* The element you can use to define tags for row-level security.
*/
val rowLevelPermissionTagConfiguration: aws.sdk.kotlin.services.quicksight.model.RowLevelPermissionTagConfiguration? = builder.rowLevelPermissionTagConfiguration
companion object {
operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.quicksight.model.DataSet = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("DataSet(")
append("arn=$arn,")
append("columnGroups=$columnGroups,")
append("columnLevelPermissionRules=$columnLevelPermissionRules,")
append("consumedSpiceCapacityInBytes=$consumedSpiceCapacityInBytes,")
append("createdTime=$createdTime,")
append("dataSetId=$dataSetId,")
append("dataSetUsageConfiguration=$dataSetUsageConfiguration,")
append("fieldFolders=$fieldFolders,")
append("importMode=$importMode,")
append("lastUpdatedTime=$lastUpdatedTime,")
append("logicalTableMap=$logicalTableMap,")
append("name=$name,")
append("outputColumns=$outputColumns,")
append("physicalTableMap=$physicalTableMap,")
append("rowLevelPermissionDataSet=$rowLevelPermissionDataSet,")
append("rowLevelPermissionTagConfiguration=$rowLevelPermissionTagConfiguration)")
}
override fun hashCode(): kotlin.Int {
var result = arn?.hashCode() ?: 0
result = 31 * result + (columnGroups?.hashCode() ?: 0)
result = 31 * result + (columnLevelPermissionRules?.hashCode() ?: 0)
result = 31 * result + (consumedSpiceCapacityInBytes.hashCode())
result = 31 * result + (createdTime?.hashCode() ?: 0)
result = 31 * result + (dataSetId?.hashCode() ?: 0)
result = 31 * result + (dataSetUsageConfiguration?.hashCode() ?: 0)
result = 31 * result + (fieldFolders?.hashCode() ?: 0)
result = 31 * result + (importMode?.hashCode() ?: 0)
result = 31 * result + (lastUpdatedTime?.hashCode() ?: 0)
result = 31 * result + (logicalTableMap?.hashCode() ?: 0)
result = 31 * result + (name?.hashCode() ?: 0)
result = 31 * result + (outputColumns?.hashCode() ?: 0)
result = 31 * result + (physicalTableMap?.hashCode() ?: 0)
result = 31 * result + (rowLevelPermissionDataSet?.hashCode() ?: 0)
result = 31 * result + (rowLevelPermissionTagConfiguration?.hashCode() ?: 0)
return result
}
override fun equals(other: kotlin.Any?): kotlin.Boolean {
if (this === other) return true
if (other == null || this::class != other::class) return false
other as DataSet
if (arn != other.arn) return false
if (columnGroups != other.columnGroups) return false
if (columnLevelPermissionRules != other.columnLevelPermissionRules) return false
if (consumedSpiceCapacityInBytes != other.consumedSpiceCapacityInBytes) return false
if (createdTime != other.createdTime) return false
if (dataSetId != other.dataSetId) return false
if (dataSetUsageConfiguration != other.dataSetUsageConfiguration) return false
if (fieldFolders != other.fieldFolders) return false
if (importMode != other.importMode) return false
if (lastUpdatedTime != other.lastUpdatedTime) return false
if (logicalTableMap != other.logicalTableMap) return false
if (name != other.name) return false
if (outputColumns != other.outputColumns) return false
if (physicalTableMap != other.physicalTableMap) return false
if (rowLevelPermissionDataSet != other.rowLevelPermissionDataSet) return false
if (rowLevelPermissionTagConfiguration != other.rowLevelPermissionTagConfiguration) return false
return true
}
inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.quicksight.model.DataSet = Builder(this).apply(block).build()
class Builder {
/**
* The Amazon Resource Name (ARN) of the resource.
*/
var arn: kotlin.String? = null
/**
* Groupings of columns that work together in certain Amazon QuickSight features. Currently, only geospatial hierarchy is supported.
*/
var columnGroups: List? = null
/**
* A set of one or more definitions of a ` ColumnLevelPermissionRule `.
*/
var columnLevelPermissionRules: List? = null
/**
* The amount of SPICE capacity used by this dataset. This is 0 if the dataset isn't imported into SPICE.
*/
var consumedSpiceCapacityInBytes: kotlin.Long = 0L
/**
* The time that this dataset was created.
*/
var createdTime: aws.smithy.kotlin.runtime.time.Instant? = null
/**
* The ID of the dataset.
*/
var dataSetId: kotlin.String? = null
/**
* The usage configuration to apply to child datasets that reference this dataset as a source.
*/
var dataSetUsageConfiguration: aws.sdk.kotlin.services.quicksight.model.DataSetUsageConfiguration? = null
/**
* The folder that contains fields and nested subfolders for your dataset.
*/
var fieldFolders: Map? = null
/**
* A value that indicates whether you want to import the data into SPICE.
*/
var importMode: aws.sdk.kotlin.services.quicksight.model.DataSetImportMode? = null
/**
* The last time that this dataset was updated.
*/
var lastUpdatedTime: aws.smithy.kotlin.runtime.time.Instant? = null
/**
* Configures the combination and transformation of the data from the physical tables.
*/
var logicalTableMap: Map? = null
/**
* A display name for the dataset.
*/
var name: kotlin.String? = null
/**
* The list of columns after all transforms. These columns are available in templates, analyses, and dashboards.
*/
var outputColumns: List? = null
/**
* Declares the physical tables that are available in the underlying data sources.
*/
var physicalTableMap: Map? = null
/**
* The row-level security configuration for the dataset.
*/
var rowLevelPermissionDataSet: aws.sdk.kotlin.services.quicksight.model.RowLevelPermissionDataSet? = null
/**
* The element you can use to define tags for row-level security.
*/
var rowLevelPermissionTagConfiguration: aws.sdk.kotlin.services.quicksight.model.RowLevelPermissionTagConfiguration? = null
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.quicksight.model.DataSet) : this() {
this.arn = x.arn
this.columnGroups = x.columnGroups
this.columnLevelPermissionRules = x.columnLevelPermissionRules
this.consumedSpiceCapacityInBytes = x.consumedSpiceCapacityInBytes
this.createdTime = x.createdTime
this.dataSetId = x.dataSetId
this.dataSetUsageConfiguration = x.dataSetUsageConfiguration
this.fieldFolders = x.fieldFolders
this.importMode = x.importMode
this.lastUpdatedTime = x.lastUpdatedTime
this.logicalTableMap = x.logicalTableMap
this.name = x.name
this.outputColumns = x.outputColumns
this.physicalTableMap = x.physicalTableMap
this.rowLevelPermissionDataSet = x.rowLevelPermissionDataSet
this.rowLevelPermissionTagConfiguration = x.rowLevelPermissionTagConfiguration
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.quicksight.model.DataSet = DataSet(this)
/**
* construct an [aws.sdk.kotlin.services.quicksight.model.DataSetUsageConfiguration] inside the given [block]
*/
fun dataSetUsageConfiguration(block: aws.sdk.kotlin.services.quicksight.model.DataSetUsageConfiguration.Builder.() -> kotlin.Unit) {
this.dataSetUsageConfiguration = aws.sdk.kotlin.services.quicksight.model.DataSetUsageConfiguration.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.quicksight.model.RowLevelPermissionDataSet] inside the given [block]
*/
fun rowLevelPermissionDataSet(block: aws.sdk.kotlin.services.quicksight.model.RowLevelPermissionDataSet.Builder.() -> kotlin.Unit) {
this.rowLevelPermissionDataSet = aws.sdk.kotlin.services.quicksight.model.RowLevelPermissionDataSet.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.quicksight.model.RowLevelPermissionTagConfiguration] inside the given [block]
*/
fun rowLevelPermissionTagConfiguration(block: aws.sdk.kotlin.services.quicksight.model.RowLevelPermissionTagConfiguration.Builder.() -> kotlin.Unit) {
this.rowLevelPermissionTagConfiguration = aws.sdk.kotlin.services.quicksight.model.RowLevelPermissionTagConfiguration.invoke(block)
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy