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

com.pulumi.awsnative.athena.kotlin.outputs.WorkGroupConfiguration.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.athena.kotlin.outputs

import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress

/**
 *
 * @property additionalConfiguration Specifies a user defined JSON string that is passed to the session engine.
 * @property bytesScannedCutoffPerQuery The upper limit (cutoff) for the amount of bytes a single query in a workgroup is allowed to scan. No default is defined.
 * > This property currently supports integer types. Support for long values is planned.
 * @property customerContentEncryptionConfiguration Specifies the KMS key that is used to encrypt the user's data stores in Athena. This setting does not apply to Athena SQL workgroups.
 * @property enforceWorkGroupConfiguration If set to "true", the settings for the workgroup override client-side settings. If set to "false", client-side settings are used. For more information, see [Workgroup Settings Override Client-Side Settings](https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html) .
 * @property engineVersion The engine version that all queries running on the workgroup use.
 * @property executionRole Role used to access user resources in an Athena for Apache Spark session. This property applies only to Spark-enabled workgroups in Athena.
 * @property publishCloudWatchMetricsEnabled Indicates that the Amazon CloudWatch metrics are enabled for the workgroup.
 * @property requesterPaysEnabled If set to `true` , allows members assigned to a workgroup to reference Amazon S3 Requester Pays buckets in queries. If set to `false` , workgroup members cannot query data from Requester Pays buckets, and queries that retrieve data from Requester Pays buckets cause an error. The default is `false` . For more information about Requester Pays buckets, see [Requester Pays Buckets](https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html) in the *Amazon Simple Storage Service Developer Guide* .
 * @property resultConfiguration Specifies the location in Amazon S3 where query results are stored and the encryption option, if any, used for query results. For more information, see [Working with Query Results, Output Files, and Query History](https://docs.aws.amazon.com/athena/latest/ug/querying.html) .
 */
public data class WorkGroupConfiguration(
    public val additionalConfiguration: String? = null,
    public val bytesScannedCutoffPerQuery: Int? = null,
    public val customerContentEncryptionConfiguration: WorkGroupCustomerContentEncryptionConfiguration? = null,
    public val enforceWorkGroupConfiguration: Boolean? = null,
    public val engineVersion: WorkGroupEngineVersion? = null,
    public val executionRole: String? = null,
    public val publishCloudWatchMetricsEnabled: Boolean? = null,
    public val requesterPaysEnabled: Boolean? = null,
    public val resultConfiguration: WorkGroupResultConfiguration? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.athena.outputs.WorkGroupConfiguration): WorkGroupConfiguration = WorkGroupConfiguration(
            additionalConfiguration = javaType.additionalConfiguration().map({ args0 -> args0 }).orElse(null),
            bytesScannedCutoffPerQuery = javaType.bytesScannedCutoffPerQuery().map({ args0 ->
                args0
            }).orElse(null),
            customerContentEncryptionConfiguration = javaType.customerContentEncryptionConfiguration().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.athena.kotlin.outputs.WorkGroupCustomerContentEncryptionConfiguration.Companion.toKotlin(args0)
                })
            }).orElse(null),
            enforceWorkGroupConfiguration = javaType.enforceWorkGroupConfiguration().map({ args0 ->
                args0
            }).orElse(null),
            engineVersion = javaType.engineVersion().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.athena.kotlin.outputs.WorkGroupEngineVersion.Companion.toKotlin(args0)
                })
            }).orElse(null),
            executionRole = javaType.executionRole().map({ args0 -> args0 }).orElse(null),
            publishCloudWatchMetricsEnabled = javaType.publishCloudWatchMetricsEnabled().map({ args0 ->
                args0
            }).orElse(null),
            requesterPaysEnabled = javaType.requesterPaysEnabled().map({ args0 -> args0 }).orElse(null),
            resultConfiguration = javaType.resultConfiguration().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.athena.kotlin.outputs.WorkGroupResultConfiguration.Companion.toKotlin(args0)
                })
            }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy