7#include <aws/athena/Athena_EXPORTS.h>
8#include <aws/athena/model/ResultConfiguration.h>
9#include <aws/athena/model/ManagedQueryResultsConfiguration.h>
10#include <aws/athena/model/EngineVersion.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/athena/model/CustomerContentEncryptionConfiguration.h>
13#include <aws/athena/model/IdentityCenterConfiguration.h>
14#include <aws/athena/model/QueryResultsS3AccessGrantsConfiguration.h>
67 template<
typename ResultConfigurationT = ResultConfiguration>
68 void SetResultConfiguration(ResultConfigurationT&& value) { m_resultConfigurationHasBeenSet =
true; m_resultConfiguration = std::forward<ResultConfigurationT>(value); }
69 template<
typename ResultConfigurationT = ResultConfiguration>
81 template<
typename ManagedQueryResultsConfigurationT = ManagedQueryResultsConfiguration>
82 void SetManagedQueryResultsConfiguration(ManagedQueryResultsConfigurationT&& value) { m_managedQueryResultsConfigurationHasBeenSet =
true; m_managedQueryResultsConfiguration = std::forward<ManagedQueryResultsConfigurationT>(value); }
83 template<
typename ManagedQueryResultsConfigurationT = ManagedQueryResultsConfiguration>
149 template<
typename EngineVersionT = EngineVersion>
150 void SetEngineVersion(EngineVersionT&& value) { m_engineVersionHasBeenSet =
true; m_engineVersion = std::forward<EngineVersionT>(value); }
151 template<
typename EngineVersionT = EngineVersion>
162 template<
typename AdditionalConfigurationT = Aws::String>
163 void SetAdditionalConfiguration(AdditionalConfigurationT&& value) { m_additionalConfigurationHasBeenSet =
true; m_additionalConfiguration = std::forward<AdditionalConfigurationT>(value); }
164 template<
typename AdditionalConfigurationT = Aws::String>
177 template<
typename ExecutionRoleT = Aws::String>
178 void SetExecutionRole(ExecutionRoleT&& value) { m_executionRoleHasBeenSet =
true; m_executionRole = std::forward<ExecutionRoleT>(value); }
179 template<
typename ExecutionRoleT = Aws::String>
190 template<
typename CustomerContentEncryptionConfigurationT = CustomerContentEncryptionConfiguration>
191 void SetCustomerContentEncryptionConfiguration(CustomerContentEncryptionConfigurationT&& value) { m_customerContentEncryptionConfigurationHasBeenSet =
true; m_customerContentEncryptionConfiguration = std::forward<CustomerContentEncryptionConfigurationT>(value); }
192 template<
typename CustomerContentEncryptionConfigurationT = CustomerContentEncryptionConfiguration>
220 template<
typename IdentityCenterConfigurationT = IdentityCenterConfiguration>
221 void SetIdentityCenterConfiguration(IdentityCenterConfigurationT&& value) { m_identityCenterConfigurationHasBeenSet =
true; m_identityCenterConfiguration = std::forward<IdentityCenterConfigurationT>(value); }
222 template<
typename IdentityCenterConfigurationT = IdentityCenterConfiguration>
232 template<
typename QueryResultsS3AccessGrantsConfigurationT = QueryResultsS3AccessGrantsConfiguration>
233 void SetQueryResultsS3AccessGrantsConfiguration(QueryResultsS3AccessGrantsConfigurationT&& value) { m_queryResultsS3AccessGrantsConfigurationHasBeenSet =
true; m_queryResultsS3AccessGrantsConfiguration = std::forward<QueryResultsS3AccessGrantsConfigurationT>(value); }
234 template<
typename QueryResultsS3AccessGrantsConfigurationT = QueryResultsS3AccessGrantsConfiguration>
240 bool m_resultConfigurationHasBeenSet =
false;
243 bool m_managedQueryResultsConfigurationHasBeenSet =
false;
245 bool m_enforceWorkGroupConfiguration{
false};
246 bool m_enforceWorkGroupConfigurationHasBeenSet =
false;
248 bool m_publishCloudWatchMetricsEnabled{
false};
249 bool m_publishCloudWatchMetricsEnabledHasBeenSet =
false;
251 long long m_bytesScannedCutoffPerQuery{0};
252 bool m_bytesScannedCutoffPerQueryHasBeenSet =
false;
254 bool m_requesterPaysEnabled{
false};
255 bool m_requesterPaysEnabledHasBeenSet =
false;
257 EngineVersion m_engineVersion;
258 bool m_engineVersionHasBeenSet =
false;
261 bool m_additionalConfigurationHasBeenSet =
false;
264 bool m_executionRoleHasBeenSet =
false;
266 CustomerContentEncryptionConfiguration m_customerContentEncryptionConfiguration;
267 bool m_customerContentEncryptionConfigurationHasBeenSet =
false;
269 bool m_enableMinimumEncryptionConfiguration{
false};
270 bool m_enableMinimumEncryptionConfigurationHasBeenSet =
false;
272 IdentityCenterConfiguration m_identityCenterConfiguration;
273 bool m_identityCenterConfigurationHasBeenSet =
false;
275 QueryResultsS3AccessGrantsConfiguration m_queryResultsS3AccessGrantsConfiguration;
276 bool m_queryResultsS3AccessGrantsConfigurationHasBeenSet =
false;
bool IdentityCenterConfigurationHasBeenSet() const
bool ExecutionRoleHasBeenSet() const
WorkGroupConfiguration & WithManagedQueryResultsConfiguration(ManagedQueryResultsConfigurationT &&value)
const ManagedQueryResultsConfiguration & GetManagedQueryResultsConfiguration() const
AWS_ATHENA_API Aws::Utils::Json::JsonValue Jsonize() const
WorkGroupConfiguration & WithIdentityCenterConfiguration(IdentityCenterConfigurationT &&value)
const Aws::String & GetAdditionalConfiguration() const
AWS_ATHENA_API WorkGroupConfiguration()=default
AWS_ATHENA_API WorkGroupConfiguration(Aws::Utils::Json::JsonView jsonValue)
WorkGroupConfiguration & WithResultConfiguration(ResultConfigurationT &&value)
WorkGroupConfiguration & WithEnforceWorkGroupConfiguration(bool value)
bool BytesScannedCutoffPerQueryHasBeenSet() const
void SetIdentityCenterConfiguration(IdentityCenterConfigurationT &&value)
const Aws::String & GetExecutionRole() const
void SetEnableMinimumEncryptionConfiguration(bool value)
bool GetEnableMinimumEncryptionConfiguration() const
void SetRequesterPaysEnabled(bool value)
void SetEnforceWorkGroupConfiguration(bool value)
bool AdditionalConfigurationHasBeenSet() const
void SetExecutionRole(ExecutionRoleT &&value)
const CustomerContentEncryptionConfiguration & GetCustomerContentEncryptionConfiguration() const
WorkGroupConfiguration & WithQueryResultsS3AccessGrantsConfiguration(QueryResultsS3AccessGrantsConfigurationT &&value)
WorkGroupConfiguration & WithExecutionRole(ExecutionRoleT &&value)
bool RequesterPaysEnabledHasBeenSet() const
WorkGroupConfiguration & WithRequesterPaysEnabled(bool value)
void SetEngineVersion(EngineVersionT &&value)
bool EngineVersionHasBeenSet() const
bool ManagedQueryResultsConfigurationHasBeenSet() const
const IdentityCenterConfiguration & GetIdentityCenterConfiguration() const
const ResultConfiguration & GetResultConfiguration() const
bool QueryResultsS3AccessGrantsConfigurationHasBeenSet() const
AWS_ATHENA_API WorkGroupConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetPublishCloudWatchMetricsEnabled(bool value)
const EngineVersion & GetEngineVersion() const
void SetManagedQueryResultsConfiguration(ManagedQueryResultsConfigurationT &&value)
void SetQueryResultsS3AccessGrantsConfiguration(QueryResultsS3AccessGrantsConfigurationT &&value)
bool GetRequesterPaysEnabled() const
bool EnableMinimumEncryptionConfigurationHasBeenSet() const
bool PublishCloudWatchMetricsEnabledHasBeenSet() const
WorkGroupConfiguration & WithEngineVersion(EngineVersionT &&value)
void SetResultConfiguration(ResultConfigurationT &&value)
WorkGroupConfiguration & WithBytesScannedCutoffPerQuery(long long value)
WorkGroupConfiguration & WithEnableMinimumEncryptionConfiguration(bool value)
bool GetPublishCloudWatchMetricsEnabled() const
WorkGroupConfiguration & WithPublishCloudWatchMetricsEnabled(bool value)
WorkGroupConfiguration & WithCustomerContentEncryptionConfiguration(CustomerContentEncryptionConfigurationT &&value)
void SetBytesScannedCutoffPerQuery(long long value)
bool ResultConfigurationHasBeenSet() const
bool GetEnforceWorkGroupConfiguration() const
void SetCustomerContentEncryptionConfiguration(CustomerContentEncryptionConfigurationT &&value)
bool EnforceWorkGroupConfigurationHasBeenSet() const
WorkGroupConfiguration & WithAdditionalConfiguration(AdditionalConfigurationT &&value)
const QueryResultsS3AccessGrantsConfiguration & GetQueryResultsS3AccessGrantsConfiguration() const
bool CustomerContentEncryptionConfigurationHasBeenSet() const
void SetAdditionalConfiguration(AdditionalConfigurationT &&value)
long long GetBytesScannedCutoffPerQuery() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue