7#include <aws/athena/Athena_EXPORTS.h>
8#include <aws/athena/model/CustomerContentEncryptionConfiguration.h>
9#include <aws/athena/model/EngineConfiguration.h>
10#include <aws/athena/model/EngineVersion.h>
11#include <aws/athena/model/ManagedQueryResultsConfigurationUpdates.h>
12#include <aws/athena/model/MonitoringConfiguration.h>
13#include <aws/athena/model/QueryResultsS3AccessGrantsConfiguration.h>
14#include <aws/athena/model/ResultConfigurationUpdates.h>
15#include <aws/core/utils/memory/stl/AWSString.h>
58 m_enforceWorkGroupConfigurationHasBeenSet =
true;
59 m_enforceWorkGroupConfiguration = value;
75 template <
typename ResultConfigurationUpdatesT = ResultConfigurationUpdates>
77 m_resultConfigurationUpdatesHasBeenSet =
true;
78 m_resultConfigurationUpdates = std::forward<ResultConfigurationUpdatesT>(value);
80 template <
typename ResultConfigurationUpdatesT = ResultConfigurationUpdates>
93 return m_managedQueryResultsConfigurationUpdates;
96 template <
typename ManagedQueryResultsConfigurationUpdatesT = ManagedQueryResultsConfigurationUpdates>
98 m_managedQueryResultsConfigurationUpdatesHasBeenSet =
true;
99 m_managedQueryResultsConfigurationUpdates = std::forward<ManagedQueryResultsConfigurationUpdatesT>(value);
101 template <
typename ManagedQueryResultsConfigurationUpdatesT = ManagedQueryResultsConfigurationUpdates>
116 m_publishCloudWatchMetricsEnabledHasBeenSet =
true;
117 m_publishCloudWatchMetricsEnabled = value;
133 m_bytesScannedCutoffPerQueryHasBeenSet =
true;
134 m_bytesScannedCutoffPerQuery = value;
150 m_removeBytesScannedCutoffPerQueryHasBeenSet =
true;
151 m_removeBytesScannedCutoffPerQuery = value;
174 m_requesterPaysEnabledHasBeenSet =
true;
175 m_requesterPaysEnabled = value;
193 template <
typename EngineVersionT = EngineVersion>
195 m_engineVersionHasBeenSet =
true;
196 m_engineVersion = std::forward<EngineVersionT>(value);
198 template <
typename EngineVersionT = EngineVersion>
212 return m_removeCustomerContentEncryptionConfigurationHasBeenSet;
215 m_removeCustomerContentEncryptionConfigurationHasBeenSet =
true;
216 m_removeCustomerContentEncryptionConfiguration = value;
231 template <
typename AdditionalConfigurationT = Aws::String>
233 m_additionalConfigurationHasBeenSet =
true;
234 m_additionalConfiguration = std::forward<AdditionalConfigurationT>(value);
236 template <
typename AdditionalConfigurationT = Aws::String>
251 template <
typename ExecutionRoleT = Aws::String>
253 m_executionRoleHasBeenSet =
true;
254 m_executionRole = std::forward<ExecutionRoleT>(value);
256 template <
typename ExecutionRoleT = Aws::String>
266 return m_customerContentEncryptionConfiguration;
269 template <
typename CustomerContentEncryptionConfigurationT = CustomerContentEncryptionConfiguration>
271 m_customerContentEncryptionConfigurationHasBeenSet =
true;
272 m_customerContentEncryptionConfiguration = std::forward<CustomerContentEncryptionConfigurationT>(value);
274 template <
typename CustomerContentEncryptionConfigurationT = CustomerContentEncryptionConfiguration>
296 m_enableMinimumEncryptionConfigurationHasBeenSet =
true;
297 m_enableMinimumEncryptionConfiguration = value;
310 return m_queryResultsS3AccessGrantsConfiguration;
313 template <
typename QueryResultsS3AccessGrantsConfigurationT = QueryResultsS3AccessGrantsConfiguration>
315 m_queryResultsS3AccessGrantsConfigurationHasBeenSet =
true;
316 m_queryResultsS3AccessGrantsConfiguration = std::forward<QueryResultsS3AccessGrantsConfigurationT>(value);
318 template <
typename QueryResultsS3AccessGrantsConfigurationT = QueryResultsS3AccessGrantsConfiguration>
332 template <
typename MonitoringConfigurationT = MonitoringConfiguration>
334 m_monitoringConfigurationHasBeenSet =
true;
335 m_monitoringConfiguration = std::forward<MonitoringConfigurationT>(value);
337 template <
typename MonitoringConfigurationT = MonitoringConfiguration>
348 template <
typename EngineConfigurationT = EngineConfiguration>
350 m_engineConfigurationHasBeenSet =
true;
351 m_engineConfiguration = std::forward<EngineConfigurationT>(value);
353 template <
typename EngineConfigurationT = EngineConfiguration>
360 bool m_enforceWorkGroupConfiguration{
false};
362 ResultConfigurationUpdates m_resultConfigurationUpdates;
364 ManagedQueryResultsConfigurationUpdates m_managedQueryResultsConfigurationUpdates;
366 bool m_publishCloudWatchMetricsEnabled{
false};
368 long long m_bytesScannedCutoffPerQuery{0};
370 bool m_removeBytesScannedCutoffPerQuery{
false};
372 bool m_requesterPaysEnabled{
false};
374 EngineVersion m_engineVersion;
376 bool m_removeCustomerContentEncryptionConfiguration{
false};
382 CustomerContentEncryptionConfiguration m_customerContentEncryptionConfiguration;
384 bool m_enableMinimumEncryptionConfiguration{
false};
386 QueryResultsS3AccessGrantsConfiguration m_queryResultsS3AccessGrantsConfiguration;
388 MonitoringConfiguration m_monitoringConfiguration;
390 EngineConfiguration m_engineConfiguration;
391 bool m_enforceWorkGroupConfigurationHasBeenSet =
false;
392 bool m_resultConfigurationUpdatesHasBeenSet =
false;
393 bool m_managedQueryResultsConfigurationUpdatesHasBeenSet =
false;
394 bool m_publishCloudWatchMetricsEnabledHasBeenSet =
false;
395 bool m_bytesScannedCutoffPerQueryHasBeenSet =
false;
396 bool m_removeBytesScannedCutoffPerQueryHasBeenSet =
false;
397 bool m_requesterPaysEnabledHasBeenSet =
false;
398 bool m_engineVersionHasBeenSet =
false;
399 bool m_removeCustomerContentEncryptionConfigurationHasBeenSet =
false;
400 bool m_additionalConfigurationHasBeenSet =
false;
401 bool m_executionRoleHasBeenSet =
false;
402 bool m_customerContentEncryptionConfigurationHasBeenSet =
false;
403 bool m_enableMinimumEncryptionConfigurationHasBeenSet =
false;
404 bool m_queryResultsS3AccessGrantsConfigurationHasBeenSet =
false;
405 bool m_monitoringConfigurationHasBeenSet =
false;
406 bool m_engineConfigurationHasBeenSet =
false;
bool PublishCloudWatchMetricsEnabledHasBeenSet() const
void SetExecutionRole(ExecutionRoleT &&value)
bool BytesScannedCutoffPerQueryHasBeenSet() const
bool EnforceWorkGroupConfigurationHasBeenSet() const
WorkGroupConfigurationUpdates & WithPublishCloudWatchMetricsEnabled(bool value)
bool GetRemoveCustomerContentEncryptionConfiguration() const
WorkGroupConfigurationUpdates & WithResultConfigurationUpdates(ResultConfigurationUpdatesT &&value)
bool ManagedQueryResultsConfigurationUpdatesHasBeenSet() const
bool GetRequesterPaysEnabled() const
bool RemoveBytesScannedCutoffPerQueryHasBeenSet() const
WorkGroupConfigurationUpdates & WithMonitoringConfiguration(MonitoringConfigurationT &&value)
AWS_ATHENA_API WorkGroupConfigurationUpdates()=default
bool GetRemoveBytesScannedCutoffPerQuery() const
void SetCustomerContentEncryptionConfiguration(CustomerContentEncryptionConfigurationT &&value)
const Aws::String & GetExecutionRole() const
bool QueryResultsS3AccessGrantsConfigurationHasBeenSet() const
bool EngineVersionHasBeenSet() const
WorkGroupConfigurationUpdates & WithEnforceWorkGroupConfiguration(bool value)
void SetEngineConfiguration(EngineConfigurationT &&value)
void SetEngineVersion(EngineVersionT &&value)
const EngineConfiguration & GetEngineConfiguration() const
bool ExecutionRoleHasBeenSet() const
WorkGroupConfigurationUpdates & WithBytesScannedCutoffPerQuery(long long value)
void SetEnableMinimumEncryptionConfiguration(bool value)
bool GetPublishCloudWatchMetricsEnabled() const
void SetManagedQueryResultsConfigurationUpdates(ManagedQueryResultsConfigurationUpdatesT &&value)
WorkGroupConfigurationUpdates & WithRemoveCustomerContentEncryptionConfiguration(bool value)
AWS_ATHENA_API WorkGroupConfigurationUpdates(Aws::Utils::Json::JsonView jsonValue)
const QueryResultsS3AccessGrantsConfiguration & GetQueryResultsS3AccessGrantsConfiguration() const
bool CustomerContentEncryptionConfigurationHasBeenSet() const
bool MonitoringConfigurationHasBeenSet() const
bool RequesterPaysEnabledHasBeenSet() const
void SetRemoveCustomerContentEncryptionConfiguration(bool value)
WorkGroupConfigurationUpdates & WithManagedQueryResultsConfigurationUpdates(ManagedQueryResultsConfigurationUpdatesT &&value)
bool EnableMinimumEncryptionConfigurationHasBeenSet() const
WorkGroupConfigurationUpdates & WithAdditionalConfiguration(AdditionalConfigurationT &&value)
bool ResultConfigurationUpdatesHasBeenSet() const
bool EngineConfigurationHasBeenSet() const
WorkGroupConfigurationUpdates & WithQueryResultsS3AccessGrantsConfiguration(QueryResultsS3AccessGrantsConfigurationT &&value)
const CustomerContentEncryptionConfiguration & GetCustomerContentEncryptionConfiguration() const
WorkGroupConfigurationUpdates & WithRequesterPaysEnabled(bool value)
const ManagedQueryResultsConfigurationUpdates & GetManagedQueryResultsConfigurationUpdates() const
AWS_ATHENA_API Aws::Utils::Json::JsonValue Jsonize() const
WorkGroupConfigurationUpdates & WithEngineVersion(EngineVersionT &&value)
WorkGroupConfigurationUpdates & WithEngineConfiguration(EngineConfigurationT &&value)
bool AdditionalConfigurationHasBeenSet() const
void SetRequesterPaysEnabled(bool value)
const Aws::String & GetAdditionalConfiguration() const
bool GetEnforceWorkGroupConfiguration() const
void SetRemoveBytesScannedCutoffPerQuery(bool value)
void SetEnforceWorkGroupConfiguration(bool value)
WorkGroupConfigurationUpdates & WithRemoveBytesScannedCutoffPerQuery(bool value)
bool RemoveCustomerContentEncryptionConfigurationHasBeenSet() const
const ResultConfigurationUpdates & GetResultConfigurationUpdates() const
void SetPublishCloudWatchMetricsEnabled(bool value)
WorkGroupConfigurationUpdates & WithCustomerContentEncryptionConfiguration(CustomerContentEncryptionConfigurationT &&value)
const EngineVersion & GetEngineVersion() const
void SetBytesScannedCutoffPerQuery(long long value)
void SetAdditionalConfiguration(AdditionalConfigurationT &&value)
WorkGroupConfigurationUpdates & WithEnableMinimumEncryptionConfiguration(bool value)
WorkGroupConfigurationUpdates & WithExecutionRole(ExecutionRoleT &&value)
bool GetEnableMinimumEncryptionConfiguration() const
long long GetBytesScannedCutoffPerQuery() const
void SetMonitoringConfiguration(MonitoringConfigurationT &&value)
AWS_ATHENA_API WorkGroupConfigurationUpdates & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetResultConfigurationUpdates(ResultConfigurationUpdatesT &&value)
void SetQueryResultsS3AccessGrantsConfiguration(QueryResultsS3AccessGrantsConfigurationT &&value)
const MonitoringConfiguration & GetMonitoringConfiguration() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue