
com.pulumi.awsnative.athena.kotlin.outputs.WorkGroupResultConfigurationUpdates.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.athena.kotlin.outputs
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
/**
* The result configuration information about the queries in this workgroup that will be updated. Includes the updated results location and an updated option for encrypting query results.
* @property aclConfiguration The ACL configuration for the query results.
* @property encryptionConfiguration The encryption configuration for the query results.
* @property expectedBucketOwner The AWS account ID that you expect to be the owner of the Amazon S3 bucket specified by `ResultConfiguration$OutputLocation` . If set, Athena uses the value for `ExpectedBucketOwner` when it makes Amazon S3 calls to your specified output location. If the `ExpectedBucketOwner` AWS account ID does not match the actual owner of the Amazon S3 bucket, the call fails with a permissions error.
* If workgroup settings override client-side settings, then the query uses the `ExpectedBucketOwner` setting that is specified for the workgroup, and also uses the location for storing query results specified in the workgroup. See `WorkGroupConfiguration$EnforceWorkGroupConfiguration` and [Workgroup Settings Override Client-Side Settings](https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html) .
* @property outputLocation The location in Amazon S3 where your query results are stored, such as `s3://path/to/query/bucket/` . For more information, see [Query Results](https://docs.aws.amazon.com/athena/latest/ug/querying.html) If workgroup settings override client-side settings, then the query uses the location for the query results and the encryption configuration that are specified for the workgroup. The "workgroup settings override" is specified in EnforceWorkGroupConfiguration (true/false) in the WorkGroupConfiguration. See `EnforceWorkGroupConfiguration` .
* @property removeAclConfiguration If set to `true` , indicates that the previously-specified ACL configuration for queries in this workgroup should be ignored and set to null. If set to `false` or not set, and a value is present in the `AclConfiguration` of `ResultConfigurationUpdates` , the `AclConfiguration` in the workgroup's `ResultConfiguration` is updated with the new value. For more information, see [Workgroup Settings Override Client-Side Settings](https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html) .
* @property removeEncryptionConfiguration If set to "true", indicates that the previously-specified encryption configuration (also known as the client-side setting) for queries in this workgroup should be ignored and set to null. If set to "false" or not set, and a value is present in the EncryptionConfiguration in ResultConfigurationUpdates (the client-side setting), the EncryptionConfiguration in the workgroup's ResultConfiguration will be updated with the new value. For more information, see [Workgroup Settings Override Client-Side Settings](https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html) .
* @property removeExpectedBucketOwner If set to "true", removes the AWS account ID previously specified for `ResultConfiguration$ExpectedBucketOwner` . If set to "false" or not set, and a value is present in the `ExpectedBucketOwner` in `ResultConfigurationUpdates` (the client-side setting), the `ExpectedBucketOwner` in the workgroup's `ResultConfiguration` is updated with the new value. For more information, see [Workgroup Settings Override Client-Side Settings](https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html) .
* @property removeOutputLocation If set to "true", indicates that the previously-specified query results location (also known as a client-side setting) for queries in this workgroup should be ignored and set to null. If set to "false" or not set, and a value is present in the OutputLocation in ResultConfigurationUpdates (the client-side setting), the OutputLocation in the workgroup's ResultConfiguration will be updated with the new value. For more information, see [Workgroup Settings Override Client-Side Settings](https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html) .
*/
public data class WorkGroupResultConfigurationUpdates(
public val aclConfiguration: WorkGroupAclConfiguration? = null,
public val encryptionConfiguration: WorkGroupEncryptionConfiguration? = null,
public val expectedBucketOwner: String? = null,
public val outputLocation: String? = null,
public val removeAclConfiguration: Boolean? = null,
public val removeEncryptionConfiguration: Boolean? = null,
public val removeExpectedBucketOwner: Boolean? = null,
public val removeOutputLocation: Boolean? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.awsnative.athena.outputs.WorkGroupResultConfigurationUpdates): WorkGroupResultConfigurationUpdates = WorkGroupResultConfigurationUpdates(
aclConfiguration = javaType.aclConfiguration().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.athena.kotlin.outputs.WorkGroupAclConfiguration.Companion.toKotlin(args0)
})
}).orElse(null),
encryptionConfiguration = javaType.encryptionConfiguration().map({ args0 ->
args0.let({ args0 ->
com.pulumi.awsnative.athena.kotlin.outputs.WorkGroupEncryptionConfiguration.Companion.toKotlin(args0)
})
}).orElse(null),
expectedBucketOwner = javaType.expectedBucketOwner().map({ args0 -> args0 }).orElse(null),
outputLocation = javaType.outputLocation().map({ args0 -> args0 }).orElse(null),
removeAclConfiguration = javaType.removeAclConfiguration().map({ args0 -> args0 }).orElse(null),
removeEncryptionConfiguration = javaType.removeEncryptionConfiguration().map({ args0 ->
args0
}).orElse(null),
removeExpectedBucketOwner = javaType.removeExpectedBucketOwner().map({ args0 ->
args0
}).orElse(null),
removeOutputLocation = javaType.removeOutputLocation().map({ args0 -> args0 }).orElse(null),
)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy