AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
WorkGroupConfigurationUpdates.h
1
6#pragma once
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>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace Athena {
27namespace Model {
28
41 public:
42 AWS_ATHENA_API WorkGroupConfigurationUpdates() = default;
45 AWS_ATHENA_API Aws::Utils::Json::JsonValue Jsonize() const;
46
48
55 inline bool GetEnforceWorkGroupConfiguration() const { return m_enforceWorkGroupConfiguration; }
56 inline bool EnforceWorkGroupConfigurationHasBeenSet() const { return m_enforceWorkGroupConfigurationHasBeenSet; }
57 inline void SetEnforceWorkGroupConfiguration(bool value) {
58 m_enforceWorkGroupConfigurationHasBeenSet = true;
59 m_enforceWorkGroupConfiguration = value;
60 }
63 return *this;
64 }
66
68
73 inline const ResultConfigurationUpdates& GetResultConfigurationUpdates() const { return m_resultConfigurationUpdates; }
74 inline bool ResultConfigurationUpdatesHasBeenSet() const { return m_resultConfigurationUpdatesHasBeenSet; }
75 template <typename ResultConfigurationUpdatesT = ResultConfigurationUpdates>
76 void SetResultConfigurationUpdates(ResultConfigurationUpdatesT&& value) {
77 m_resultConfigurationUpdatesHasBeenSet = true;
78 m_resultConfigurationUpdates = std::forward<ResultConfigurationUpdatesT>(value);
79 }
80 template <typename ResultConfigurationUpdatesT = ResultConfigurationUpdates>
81 WorkGroupConfigurationUpdates& WithResultConfigurationUpdates(ResultConfigurationUpdatesT&& value) {
82 SetResultConfigurationUpdates(std::forward<ResultConfigurationUpdatesT>(value));
83 return *this;
84 }
86
88
93 return m_managedQueryResultsConfigurationUpdates;
94 }
95 inline bool ManagedQueryResultsConfigurationUpdatesHasBeenSet() const { return m_managedQueryResultsConfigurationUpdatesHasBeenSet; }
96 template <typename ManagedQueryResultsConfigurationUpdatesT = ManagedQueryResultsConfigurationUpdates>
97 void SetManagedQueryResultsConfigurationUpdates(ManagedQueryResultsConfigurationUpdatesT&& value) {
98 m_managedQueryResultsConfigurationUpdatesHasBeenSet = true;
99 m_managedQueryResultsConfigurationUpdates = std::forward<ManagedQueryResultsConfigurationUpdatesT>(value);
100 }
101 template <typename ManagedQueryResultsConfigurationUpdatesT = ManagedQueryResultsConfigurationUpdates>
102 WorkGroupConfigurationUpdates& WithManagedQueryResultsConfigurationUpdates(ManagedQueryResultsConfigurationUpdatesT&& value) {
103 SetManagedQueryResultsConfigurationUpdates(std::forward<ManagedQueryResultsConfigurationUpdatesT>(value));
104 return *this;
105 }
107
109
113 inline bool GetPublishCloudWatchMetricsEnabled() const { return m_publishCloudWatchMetricsEnabled; }
114 inline bool PublishCloudWatchMetricsEnabledHasBeenSet() const { return m_publishCloudWatchMetricsEnabledHasBeenSet; }
115 inline void SetPublishCloudWatchMetricsEnabled(bool value) {
116 m_publishCloudWatchMetricsEnabledHasBeenSet = true;
117 m_publishCloudWatchMetricsEnabled = value;
118 }
121 return *this;
122 }
124
126
130 inline long long GetBytesScannedCutoffPerQuery() const { return m_bytesScannedCutoffPerQuery; }
131 inline bool BytesScannedCutoffPerQueryHasBeenSet() const { return m_bytesScannedCutoffPerQueryHasBeenSet; }
132 inline void SetBytesScannedCutoffPerQuery(long long value) {
133 m_bytesScannedCutoffPerQueryHasBeenSet = true;
134 m_bytesScannedCutoffPerQuery = value;
135 }
138 return *this;
139 }
141
143
147 inline bool GetRemoveBytesScannedCutoffPerQuery() const { return m_removeBytesScannedCutoffPerQuery; }
148 inline bool RemoveBytesScannedCutoffPerQueryHasBeenSet() const { return m_removeBytesScannedCutoffPerQueryHasBeenSet; }
149 inline void SetRemoveBytesScannedCutoffPerQuery(bool value) {
150 m_removeBytesScannedCutoffPerQueryHasBeenSet = true;
151 m_removeBytesScannedCutoffPerQuery = value;
152 }
155 return *this;
156 }
158
160
171 inline bool GetRequesterPaysEnabled() const { return m_requesterPaysEnabled; }
172 inline bool RequesterPaysEnabledHasBeenSet() const { return m_requesterPaysEnabledHasBeenSet; }
173 inline void SetRequesterPaysEnabled(bool value) {
174 m_requesterPaysEnabledHasBeenSet = true;
175 m_requesterPaysEnabled = value;
176 }
179 return *this;
180 }
182
184
191 inline const EngineVersion& GetEngineVersion() const { return m_engineVersion; }
192 inline bool EngineVersionHasBeenSet() const { return m_engineVersionHasBeenSet; }
193 template <typename EngineVersionT = EngineVersion>
194 void SetEngineVersion(EngineVersionT&& value) {
195 m_engineVersionHasBeenSet = true;
196 m_engineVersion = std::forward<EngineVersionT>(value);
197 }
198 template <typename EngineVersionT = EngineVersion>
200 SetEngineVersion(std::forward<EngineVersionT>(value));
201 return *this;
202 }
204
206
210 inline bool GetRemoveCustomerContentEncryptionConfiguration() const { return m_removeCustomerContentEncryptionConfiguration; }
212 return m_removeCustomerContentEncryptionConfigurationHasBeenSet;
213 }
215 m_removeCustomerContentEncryptionConfigurationHasBeenSet = true;
216 m_removeCustomerContentEncryptionConfiguration = value;
217 }
220 return *this;
221 }
223
225
229 inline const Aws::String& GetAdditionalConfiguration() const { return m_additionalConfiguration; }
230 inline bool AdditionalConfigurationHasBeenSet() const { return m_additionalConfigurationHasBeenSet; }
231 template <typename AdditionalConfigurationT = Aws::String>
232 void SetAdditionalConfiguration(AdditionalConfigurationT&& value) {
233 m_additionalConfigurationHasBeenSet = true;
234 m_additionalConfiguration = std::forward<AdditionalConfigurationT>(value);
235 }
236 template <typename AdditionalConfigurationT = Aws::String>
238 SetAdditionalConfiguration(std::forward<AdditionalConfigurationT>(value));
239 return *this;
240 }
242
244
249 inline const Aws::String& GetExecutionRole() const { return m_executionRole; }
250 inline bool ExecutionRoleHasBeenSet() const { return m_executionRoleHasBeenSet; }
251 template <typename ExecutionRoleT = Aws::String>
252 void SetExecutionRole(ExecutionRoleT&& value) {
253 m_executionRoleHasBeenSet = true;
254 m_executionRole = std::forward<ExecutionRoleT>(value);
255 }
256 template <typename ExecutionRoleT = Aws::String>
258 SetExecutionRole(std::forward<ExecutionRoleT>(value));
259 return *this;
260 }
262
264
266 return m_customerContentEncryptionConfiguration;
267 }
268 inline bool CustomerContentEncryptionConfigurationHasBeenSet() const { return m_customerContentEncryptionConfigurationHasBeenSet; }
269 template <typename CustomerContentEncryptionConfigurationT = CustomerContentEncryptionConfiguration>
270 void SetCustomerContentEncryptionConfiguration(CustomerContentEncryptionConfigurationT&& value) {
271 m_customerContentEncryptionConfigurationHasBeenSet = true;
272 m_customerContentEncryptionConfiguration = std::forward<CustomerContentEncryptionConfigurationT>(value);
273 }
274 template <typename CustomerContentEncryptionConfigurationT = CustomerContentEncryptionConfiguration>
275 WorkGroupConfigurationUpdates& WithCustomerContentEncryptionConfiguration(CustomerContentEncryptionConfigurationT&& value) {
276 SetCustomerContentEncryptionConfiguration(std::forward<CustomerContentEncryptionConfigurationT>(value));
277 return *this;
278 }
280
282
293 inline bool GetEnableMinimumEncryptionConfiguration() const { return m_enableMinimumEncryptionConfiguration; }
294 inline bool EnableMinimumEncryptionConfigurationHasBeenSet() const { return m_enableMinimumEncryptionConfigurationHasBeenSet; }
296 m_enableMinimumEncryptionConfigurationHasBeenSet = true;
297 m_enableMinimumEncryptionConfiguration = value;
298 }
301 return *this;
302 }
304
306
310 return m_queryResultsS3AccessGrantsConfiguration;
311 }
312 inline bool QueryResultsS3AccessGrantsConfigurationHasBeenSet() const { return m_queryResultsS3AccessGrantsConfigurationHasBeenSet; }
313 template <typename QueryResultsS3AccessGrantsConfigurationT = QueryResultsS3AccessGrantsConfiguration>
314 void SetQueryResultsS3AccessGrantsConfiguration(QueryResultsS3AccessGrantsConfigurationT&& value) {
315 m_queryResultsS3AccessGrantsConfigurationHasBeenSet = true;
316 m_queryResultsS3AccessGrantsConfiguration = std::forward<QueryResultsS3AccessGrantsConfigurationT>(value);
317 }
318 template <typename QueryResultsS3AccessGrantsConfigurationT = QueryResultsS3AccessGrantsConfiguration>
319 WorkGroupConfigurationUpdates& WithQueryResultsS3AccessGrantsConfiguration(QueryResultsS3AccessGrantsConfigurationT&& value) {
320 SetQueryResultsS3AccessGrantsConfiguration(std::forward<QueryResultsS3AccessGrantsConfigurationT>(value));
321 return *this;
322 }
324
326
330 inline const MonitoringConfiguration& GetMonitoringConfiguration() const { return m_monitoringConfiguration; }
331 inline bool MonitoringConfigurationHasBeenSet() const { return m_monitoringConfigurationHasBeenSet; }
332 template <typename MonitoringConfigurationT = MonitoringConfiguration>
333 void SetMonitoringConfiguration(MonitoringConfigurationT&& value) {
334 m_monitoringConfigurationHasBeenSet = true;
335 m_monitoringConfiguration = std::forward<MonitoringConfigurationT>(value);
336 }
337 template <typename MonitoringConfigurationT = MonitoringConfiguration>
339 SetMonitoringConfiguration(std::forward<MonitoringConfigurationT>(value));
340 return *this;
341 }
343
345
346 inline const EngineConfiguration& GetEngineConfiguration() const { return m_engineConfiguration; }
347 inline bool EngineConfigurationHasBeenSet() const { return m_engineConfigurationHasBeenSet; }
348 template <typename EngineConfigurationT = EngineConfiguration>
349 void SetEngineConfiguration(EngineConfigurationT&& value) {
350 m_engineConfigurationHasBeenSet = true;
351 m_engineConfiguration = std::forward<EngineConfigurationT>(value);
352 }
353 template <typename EngineConfigurationT = EngineConfiguration>
355 SetEngineConfiguration(std::forward<EngineConfigurationT>(value));
356 return *this;
357 }
359 private:
360 bool m_enforceWorkGroupConfiguration{false};
361
362 ResultConfigurationUpdates m_resultConfigurationUpdates;
363
364 ManagedQueryResultsConfigurationUpdates m_managedQueryResultsConfigurationUpdates;
365
366 bool m_publishCloudWatchMetricsEnabled{false};
367
368 long long m_bytesScannedCutoffPerQuery{0};
369
370 bool m_removeBytesScannedCutoffPerQuery{false};
371
372 bool m_requesterPaysEnabled{false};
373
374 EngineVersion m_engineVersion;
375
376 bool m_removeCustomerContentEncryptionConfiguration{false};
377
378 Aws::String m_additionalConfiguration;
379
380 Aws::String m_executionRole;
381
382 CustomerContentEncryptionConfiguration m_customerContentEncryptionConfiguration;
383
384 bool m_enableMinimumEncryptionConfiguration{false};
385
386 QueryResultsS3AccessGrantsConfiguration m_queryResultsS3AccessGrantsConfiguration;
387
388 MonitoringConfiguration m_monitoringConfiguration;
389
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;
407};
408
409} // namespace Model
410} // namespace Athena
411} // namespace Aws
WorkGroupConfigurationUpdates & WithPublishCloudWatchMetricsEnabled(bool value)
WorkGroupConfigurationUpdates & WithResultConfigurationUpdates(ResultConfigurationUpdatesT &&value)
WorkGroupConfigurationUpdates & WithMonitoringConfiguration(MonitoringConfigurationT &&value)
AWS_ATHENA_API WorkGroupConfigurationUpdates()=default
void SetCustomerContentEncryptionConfiguration(CustomerContentEncryptionConfigurationT &&value)
WorkGroupConfigurationUpdates & WithEnforceWorkGroupConfiguration(bool value)
WorkGroupConfigurationUpdates & WithBytesScannedCutoffPerQuery(long long value)
void SetManagedQueryResultsConfigurationUpdates(ManagedQueryResultsConfigurationUpdatesT &&value)
WorkGroupConfigurationUpdates & WithRemoveCustomerContentEncryptionConfiguration(bool value)
AWS_ATHENA_API WorkGroupConfigurationUpdates(Aws::Utils::Json::JsonView jsonValue)
const QueryResultsS3AccessGrantsConfiguration & GetQueryResultsS3AccessGrantsConfiguration() const
WorkGroupConfigurationUpdates & WithManagedQueryResultsConfigurationUpdates(ManagedQueryResultsConfigurationUpdatesT &&value)
WorkGroupConfigurationUpdates & WithAdditionalConfiguration(AdditionalConfigurationT &&value)
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)
WorkGroupConfigurationUpdates & WithRemoveBytesScannedCutoffPerQuery(bool value)
const ResultConfigurationUpdates & GetResultConfigurationUpdates() const
WorkGroupConfigurationUpdates & WithCustomerContentEncryptionConfiguration(CustomerContentEncryptionConfigurationT &&value)
void SetAdditionalConfiguration(AdditionalConfigurationT &&value)
WorkGroupConfigurationUpdates & WithEnableMinimumEncryptionConfiguration(bool value)
WorkGroupConfigurationUpdates & WithExecutionRole(ExecutionRoleT &&value)
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