/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The configuration information that will be updated for this workgroup, which
* includes the location in Amazon S3 where query and calculation results are
* stored, the encryption option, if any, used for query results, whether the
* Amazon CloudWatch Metrics are enabled for the workgroup, whether the workgroup
* settings override the client-side settings, and the data usage limit for the
* amount of bytes scanned per query, if it is specified.See Also:
* AWS
* API Reference
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.
*/ inline bool GetEnforceWorkGroupConfiguration() const{ return m_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.
*/ inline bool EnforceWorkGroupConfigurationHasBeenSet() const { return m_enforceWorkGroupConfigurationHasBeenSet; } /** *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.
*/ inline void SetEnforceWorkGroupConfiguration(bool value) { m_enforceWorkGroupConfigurationHasBeenSet = true; m_enforceWorkGroupConfiguration = value; } /** *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.
*/ inline WorkGroupConfigurationUpdates& WithEnforceWorkGroupConfiguration(bool value) { SetEnforceWorkGroupConfiguration(value); return *this;} /** *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.
*/ inline const ResultConfigurationUpdates& GetResultConfigurationUpdates() const{ return m_resultConfigurationUpdates; } /** *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.
*/ inline bool ResultConfigurationUpdatesHasBeenSet() const { return m_resultConfigurationUpdatesHasBeenSet; } /** *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.
*/ inline void SetResultConfigurationUpdates(const ResultConfigurationUpdates& value) { m_resultConfigurationUpdatesHasBeenSet = true; m_resultConfigurationUpdates = value; } /** *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.
*/ inline void SetResultConfigurationUpdates(ResultConfigurationUpdates&& value) { m_resultConfigurationUpdatesHasBeenSet = true; m_resultConfigurationUpdates = std::move(value); } /** *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.
*/ inline WorkGroupConfigurationUpdates& WithResultConfigurationUpdates(const ResultConfigurationUpdates& value) { SetResultConfigurationUpdates(value); return *this;} /** *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.
*/ inline WorkGroupConfigurationUpdates& WithResultConfigurationUpdates(ResultConfigurationUpdates&& value) { SetResultConfigurationUpdates(std::move(value)); return *this;} /** *Indicates whether this workgroup enables publishing metrics to Amazon * CloudWatch.
*/ inline bool GetPublishCloudWatchMetricsEnabled() const{ return m_publishCloudWatchMetricsEnabled; } /** *Indicates whether this workgroup enables publishing metrics to Amazon * CloudWatch.
*/ inline bool PublishCloudWatchMetricsEnabledHasBeenSet() const { return m_publishCloudWatchMetricsEnabledHasBeenSet; } /** *Indicates whether this workgroup enables publishing metrics to Amazon * CloudWatch.
*/ inline void SetPublishCloudWatchMetricsEnabled(bool value) { m_publishCloudWatchMetricsEnabledHasBeenSet = true; m_publishCloudWatchMetricsEnabled = value; } /** *Indicates whether this workgroup enables publishing metrics to Amazon * CloudWatch.
*/ inline WorkGroupConfigurationUpdates& WithPublishCloudWatchMetricsEnabled(bool value) { SetPublishCloudWatchMetricsEnabled(value); return *this;} /** *The upper limit (cutoff) for the amount of bytes a single query in a * workgroup is allowed to scan.
*/ inline long long GetBytesScannedCutoffPerQuery() const{ return m_bytesScannedCutoffPerQuery; } /** *The upper limit (cutoff) for the amount of bytes a single query in a * workgroup is allowed to scan.
*/ inline bool BytesScannedCutoffPerQueryHasBeenSet() const { return m_bytesScannedCutoffPerQueryHasBeenSet; } /** *The upper limit (cutoff) for the amount of bytes a single query in a * workgroup is allowed to scan.
*/ inline void SetBytesScannedCutoffPerQuery(long long value) { m_bytesScannedCutoffPerQueryHasBeenSet = true; m_bytesScannedCutoffPerQuery = value; } /** *The upper limit (cutoff) for the amount of bytes a single query in a * workgroup is allowed to scan.
*/ inline WorkGroupConfigurationUpdates& WithBytesScannedCutoffPerQuery(long long value) { SetBytesScannedCutoffPerQuery(value); return *this;} /** *Indicates that the data usage control limit per query is removed. * WorkGroupConfiguration$BytesScannedCutoffPerQuery
*/ inline bool GetRemoveBytesScannedCutoffPerQuery() const{ return m_removeBytesScannedCutoffPerQuery; } /** *Indicates that the data usage control limit per query is removed. * WorkGroupConfiguration$BytesScannedCutoffPerQuery
*/ inline bool RemoveBytesScannedCutoffPerQueryHasBeenSet() const { return m_removeBytesScannedCutoffPerQueryHasBeenSet; } /** *Indicates that the data usage control limit per query is removed. * WorkGroupConfiguration$BytesScannedCutoffPerQuery
*/ inline void SetRemoveBytesScannedCutoffPerQuery(bool value) { m_removeBytesScannedCutoffPerQueryHasBeenSet = true; m_removeBytesScannedCutoffPerQuery = value; } /** *Indicates that the data usage control limit per query is removed. * WorkGroupConfiguration$BytesScannedCutoffPerQuery
*/ inline WorkGroupConfigurationUpdates& WithRemoveBytesScannedCutoffPerQuery(bool value) { SetRemoveBytesScannedCutoffPerQuery(value); return *this;} /** *If set to true
, allows members assigned to a workgroup to
* specify 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 in the Amazon Simple Storage Service Developer
* Guide.
If set to true
, allows members assigned to a workgroup to
* specify 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 in the Amazon Simple Storage Service Developer
* Guide.
If set to true
, allows members assigned to a workgroup to
* specify 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 in the Amazon Simple Storage Service Developer
* Guide.
If set to true
, allows members assigned to a workgroup to
* specify 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 in the Amazon Simple Storage Service Developer
* Guide.
The engine version requested when a workgroup is updated. After the update,
* all queries on the workgroup run on the requested engine version. If no value
* was previously set, the default is Auto. Queries on the
* AmazonAthenaPreviewFunctionality
workgroup run on the preview
* engine regardless of this setting.
The engine version requested when a workgroup is updated. After the update,
* all queries on the workgroup run on the requested engine version. If no value
* was previously set, the default is Auto. Queries on the
* AmazonAthenaPreviewFunctionality
workgroup run on the preview
* engine regardless of this setting.
The engine version requested when a workgroup is updated. After the update,
* all queries on the workgroup run on the requested engine version. If no value
* was previously set, the default is Auto. Queries on the
* AmazonAthenaPreviewFunctionality
workgroup run on the preview
* engine regardless of this setting.
The engine version requested when a workgroup is updated. After the update,
* all queries on the workgroup run on the requested engine version. If no value
* was previously set, the default is Auto. Queries on the
* AmazonAthenaPreviewFunctionality
workgroup run on the preview
* engine regardless of this setting.
The engine version requested when a workgroup is updated. After the update,
* all queries on the workgroup run on the requested engine version. If no value
* was previously set, the default is Auto. Queries on the
* AmazonAthenaPreviewFunctionality
workgroup run on the preview
* engine regardless of this setting.
The engine version requested when a workgroup is updated. After the update,
* all queries on the workgroup run on the requested engine version. If no value
* was previously set, the default is Auto. Queries on the
* AmazonAthenaPreviewFunctionality
workgroup run on the preview
* engine regardless of this setting.
Removes content encryption configuration from an Apache Spark-enabled Athena * workgroup.
*/ inline bool GetRemoveCustomerContentEncryptionConfiguration() const{ return m_removeCustomerContentEncryptionConfiguration; } /** *Removes content encryption configuration from an Apache Spark-enabled Athena * workgroup.
*/ inline bool RemoveCustomerContentEncryptionConfigurationHasBeenSet() const { return m_removeCustomerContentEncryptionConfigurationHasBeenSet; } /** *Removes content encryption configuration from an Apache Spark-enabled Athena * workgroup.
*/ inline void SetRemoveCustomerContentEncryptionConfiguration(bool value) { m_removeCustomerContentEncryptionConfigurationHasBeenSet = true; m_removeCustomerContentEncryptionConfiguration = value; } /** *Removes content encryption configuration from an Apache Spark-enabled Athena * workgroup.
*/ inline WorkGroupConfigurationUpdates& WithRemoveCustomerContentEncryptionConfiguration(bool value) { SetRemoveCustomerContentEncryptionConfiguration(value); return *this;} /** *Contains a user defined string in JSON format for a Spark-enabled * workgroup.
*/ inline const Aws::String& GetAdditionalConfiguration() const{ return m_additionalConfiguration; } /** *Contains a user defined string in JSON format for a Spark-enabled * workgroup.
*/ inline bool AdditionalConfigurationHasBeenSet() const { return m_additionalConfigurationHasBeenSet; } /** *Contains a user defined string in JSON format for a Spark-enabled * workgroup.
*/ inline void SetAdditionalConfiguration(const Aws::String& value) { m_additionalConfigurationHasBeenSet = true; m_additionalConfiguration = value; } /** *Contains a user defined string in JSON format for a Spark-enabled * workgroup.
*/ inline void SetAdditionalConfiguration(Aws::String&& value) { m_additionalConfigurationHasBeenSet = true; m_additionalConfiguration = std::move(value); } /** *Contains a user defined string in JSON format for a Spark-enabled * workgroup.
*/ inline void SetAdditionalConfiguration(const char* value) { m_additionalConfigurationHasBeenSet = true; m_additionalConfiguration.assign(value); } /** *Contains a user defined string in JSON format for a Spark-enabled * workgroup.
*/ inline WorkGroupConfigurationUpdates& WithAdditionalConfiguration(const Aws::String& value) { SetAdditionalConfiguration(value); return *this;} /** *Contains a user defined string in JSON format for a Spark-enabled * workgroup.
*/ inline WorkGroupConfigurationUpdates& WithAdditionalConfiguration(Aws::String&& value) { SetAdditionalConfiguration(std::move(value)); return *this;} /** *Contains a user defined string in JSON format for a Spark-enabled * workgroup.
*/ inline WorkGroupConfigurationUpdates& WithAdditionalConfiguration(const char* value) { SetAdditionalConfiguration(value); return *this;} /** *Contains the ARN of the execution role for the workgroup
*/ inline const Aws::String& GetExecutionRole() const{ return m_executionRole; } /** *Contains the ARN of the execution role for the workgroup
*/ inline bool ExecutionRoleHasBeenSet() const { return m_executionRoleHasBeenSet; } /** *Contains the ARN of the execution role for the workgroup
*/ inline void SetExecutionRole(const Aws::String& value) { m_executionRoleHasBeenSet = true; m_executionRole = value; } /** *Contains the ARN of the execution role for the workgroup
*/ inline void SetExecutionRole(Aws::String&& value) { m_executionRoleHasBeenSet = true; m_executionRole = std::move(value); } /** *Contains the ARN of the execution role for the workgroup
*/ inline void SetExecutionRole(const char* value) { m_executionRoleHasBeenSet = true; m_executionRole.assign(value); } /** *Contains the ARN of the execution role for the workgroup
*/ inline WorkGroupConfigurationUpdates& WithExecutionRole(const Aws::String& value) { SetExecutionRole(value); return *this;} /** *Contains the ARN of the execution role for the workgroup
*/ inline WorkGroupConfigurationUpdates& WithExecutionRole(Aws::String&& value) { SetExecutionRole(std::move(value)); return *this;} /** *Contains the ARN of the execution role for the workgroup
*/ inline WorkGroupConfigurationUpdates& WithExecutionRole(const char* value) { SetExecutionRole(value); return *this;} inline const CustomerContentEncryptionConfiguration& GetCustomerContentEncryptionConfiguration() const{ return m_customerContentEncryptionConfiguration; } inline bool CustomerContentEncryptionConfigurationHasBeenSet() const { return m_customerContentEncryptionConfigurationHasBeenSet; } inline void SetCustomerContentEncryptionConfiguration(const CustomerContentEncryptionConfiguration& value) { m_customerContentEncryptionConfigurationHasBeenSet = true; m_customerContentEncryptionConfiguration = value; } inline void SetCustomerContentEncryptionConfiguration(CustomerContentEncryptionConfiguration&& value) { m_customerContentEncryptionConfigurationHasBeenSet = true; m_customerContentEncryptionConfiguration = std::move(value); } inline WorkGroupConfigurationUpdates& WithCustomerContentEncryptionConfiguration(const CustomerContentEncryptionConfiguration& value) { SetCustomerContentEncryptionConfiguration(value); return *this;} inline WorkGroupConfigurationUpdates& WithCustomerContentEncryptionConfiguration(CustomerContentEncryptionConfiguration&& value) { SetCustomerContentEncryptionConfiguration(std::move(value)); return *this;} /** *Enforces a minimal level of encryption for the workgroup for query and * calculation results that are written to Amazon S3. When enabled, workgroup users * can set encryption only to the minimum level set by the administrator or higher * when they submit queries. This setting does not apply to Spark-enabled * workgroups.
The EnforceWorkGroupConfiguration
setting takes
* precedence over the EnableMinimumEncryptionConfiguration
flag. This
* means that if EnforceWorkGroupConfiguration
is true, the
* EnableMinimumEncryptionConfiguration
flag is ignored, and the
* workgroup configuration for encryption is used.
Enforces a minimal level of encryption for the workgroup for query and * calculation results that are written to Amazon S3. When enabled, workgroup users * can set encryption only to the minimum level set by the administrator or higher * when they submit queries. This setting does not apply to Spark-enabled * workgroups.
The EnforceWorkGroupConfiguration
setting takes
* precedence over the EnableMinimumEncryptionConfiguration
flag. This
* means that if EnforceWorkGroupConfiguration
is true, the
* EnableMinimumEncryptionConfiguration
flag is ignored, and the
* workgroup configuration for encryption is used.
Enforces a minimal level of encryption for the workgroup for query and * calculation results that are written to Amazon S3. When enabled, workgroup users * can set encryption only to the minimum level set by the administrator or higher * when they submit queries. This setting does not apply to Spark-enabled * workgroups.
The EnforceWorkGroupConfiguration
setting takes
* precedence over the EnableMinimumEncryptionConfiguration
flag. This
* means that if EnforceWorkGroupConfiguration
is true, the
* EnableMinimumEncryptionConfiguration
flag is ignored, and the
* workgroup configuration for encryption is used.
Enforces a minimal level of encryption for the workgroup for query and * calculation results that are written to Amazon S3. When enabled, workgroup users * can set encryption only to the minimum level set by the administrator or higher * when they submit queries. This setting does not apply to Spark-enabled * workgroups.
The EnforceWorkGroupConfiguration
setting takes
* precedence over the EnableMinimumEncryptionConfiguration
flag. This
* means that if EnforceWorkGroupConfiguration
is true, the
* EnableMinimumEncryptionConfiguration
flag is ignored, and the
* workgroup configuration for encryption is used.