AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
StartQueryExecutionRequest.h
1
6#pragma once
7#include <aws/athena/AthenaRequest.h>
8#include <aws/athena/Athena_EXPORTS.h>
9#include <aws/athena/model/EngineConfiguration.h>
10#include <aws/athena/model/QueryExecutionContext.h>
11#include <aws/athena/model/ResultConfiguration.h>
12#include <aws/athena/model/ResultReuseConfiguration.h>
13#include <aws/core/utils/UUID.h>
14#include <aws/core/utils/memory/stl/AWSString.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Athena {
21namespace Model {
22
26 public:
27 AWS_ATHENA_API StartQueryExecutionRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "StartQueryExecution"; }
34
35 AWS_ATHENA_API Aws::String SerializePayload() const override;
36
38
40
43 inline const Aws::String& GetQueryString() const { return m_queryString; }
44 inline bool QueryStringHasBeenSet() const { return m_queryStringHasBeenSet; }
45 template <typename QueryStringT = Aws::String>
46 void SetQueryString(QueryStringT&& value) {
47 m_queryStringHasBeenSet = true;
48 m_queryString = std::forward<QueryStringT>(value);
49 }
50 template <typename QueryStringT = Aws::String>
52 SetQueryString(std::forward<QueryStringT>(value));
53 return *this;
54 }
56
58
72 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
73 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
74 template <typename ClientRequestTokenT = Aws::String>
75 void SetClientRequestToken(ClientRequestTokenT&& value) {
76 m_clientRequestTokenHasBeenSet = true;
77 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
78 }
79 template <typename ClientRequestTokenT = Aws::String>
80 StartQueryExecutionRequest& WithClientRequestToken(ClientRequestTokenT&& value) {
81 SetClientRequestToken(std::forward<ClientRequestTokenT>(value));
82 return *this;
83 }
85
87
90 inline const QueryExecutionContext& GetQueryExecutionContext() const { return m_queryExecutionContext; }
91 inline bool QueryExecutionContextHasBeenSet() const { return m_queryExecutionContextHasBeenSet; }
92 template <typename QueryExecutionContextT = QueryExecutionContext>
93 void SetQueryExecutionContext(QueryExecutionContextT&& value) {
94 m_queryExecutionContextHasBeenSet = true;
95 m_queryExecutionContext = std::forward<QueryExecutionContextT>(value);
96 }
97 template <typename QueryExecutionContextT = QueryExecutionContext>
98 StartQueryExecutionRequest& WithQueryExecutionContext(QueryExecutionContextT&& value) {
99 SetQueryExecutionContext(std::forward<QueryExecutionContextT>(value));
100 return *this;
101 }
103
105
113 inline const ResultConfiguration& GetResultConfiguration() const { return m_resultConfiguration; }
114 inline bool ResultConfigurationHasBeenSet() const { return m_resultConfigurationHasBeenSet; }
115 template <typename ResultConfigurationT = ResultConfiguration>
116 void SetResultConfiguration(ResultConfigurationT&& value) {
117 m_resultConfigurationHasBeenSet = true;
118 m_resultConfiguration = std::forward<ResultConfigurationT>(value);
119 }
120 template <typename ResultConfigurationT = ResultConfiguration>
122 SetResultConfiguration(std::forward<ResultConfigurationT>(value));
123 return *this;
124 }
126
128
131 inline const Aws::String& GetWorkGroup() const { return m_workGroup; }
132 inline bool WorkGroupHasBeenSet() const { return m_workGroupHasBeenSet; }
133 template <typename WorkGroupT = Aws::String>
134 void SetWorkGroup(WorkGroupT&& value) {
135 m_workGroupHasBeenSet = true;
136 m_workGroup = std::forward<WorkGroupT>(value);
137 }
138 template <typename WorkGroupT = Aws::String>
140 SetWorkGroup(std::forward<WorkGroupT>(value));
141 return *this;
142 }
144
146
151 inline const Aws::Vector<Aws::String>& GetExecutionParameters() const { return m_executionParameters; }
152 inline bool ExecutionParametersHasBeenSet() const { return m_executionParametersHasBeenSet; }
153 template <typename ExecutionParametersT = Aws::Vector<Aws::String>>
154 void SetExecutionParameters(ExecutionParametersT&& value) {
155 m_executionParametersHasBeenSet = true;
156 m_executionParameters = std::forward<ExecutionParametersT>(value);
157 }
158 template <typename ExecutionParametersT = Aws::Vector<Aws::String>>
160 SetExecutionParameters(std::forward<ExecutionParametersT>(value));
161 return *this;
162 }
163 template <typename ExecutionParametersT = Aws::String>
164 StartQueryExecutionRequest& AddExecutionParameters(ExecutionParametersT&& value) {
165 m_executionParametersHasBeenSet = true;
166 m_executionParameters.emplace_back(std::forward<ExecutionParametersT>(value));
167 return *this;
168 }
170
172
175 inline const ResultReuseConfiguration& GetResultReuseConfiguration() const { return m_resultReuseConfiguration; }
176 inline bool ResultReuseConfigurationHasBeenSet() const { return m_resultReuseConfigurationHasBeenSet; }
177 template <typename ResultReuseConfigurationT = ResultReuseConfiguration>
178 void SetResultReuseConfiguration(ResultReuseConfigurationT&& value) {
179 m_resultReuseConfigurationHasBeenSet = true;
180 m_resultReuseConfiguration = std::forward<ResultReuseConfigurationT>(value);
181 }
182 template <typename ResultReuseConfigurationT = ResultReuseConfiguration>
183 StartQueryExecutionRequest& WithResultReuseConfiguration(ResultReuseConfigurationT&& value) {
184 SetResultReuseConfiguration(std::forward<ResultReuseConfigurationT>(value));
185 return *this;
186 }
188
190
201 inline const EngineConfiguration& GetEngineConfiguration() const { return m_engineConfiguration; }
202 inline bool EngineConfigurationHasBeenSet() const { return m_engineConfigurationHasBeenSet; }
203 template <typename EngineConfigurationT = EngineConfiguration>
204 void SetEngineConfiguration(EngineConfigurationT&& value) {
205 m_engineConfigurationHasBeenSet = true;
206 m_engineConfiguration = std::forward<EngineConfigurationT>(value);
207 }
208 template <typename EngineConfigurationT = EngineConfiguration>
210 SetEngineConfiguration(std::forward<EngineConfigurationT>(value));
211 return *this;
212 }
214 private:
215 Aws::String m_queryString;
216
217 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
218
219 QueryExecutionContext m_queryExecutionContext;
220
221 ResultConfiguration m_resultConfiguration;
222
223 Aws::String m_workGroup;
224
225 Aws::Vector<Aws::String> m_executionParameters;
226
227 ResultReuseConfiguration m_resultReuseConfiguration;
228
229 EngineConfiguration m_engineConfiguration;
230 bool m_queryStringHasBeenSet = false;
231 bool m_clientRequestTokenHasBeenSet = true;
232 bool m_queryExecutionContextHasBeenSet = false;
233 bool m_resultConfigurationHasBeenSet = false;
234 bool m_workGroupHasBeenSet = false;
235 bool m_executionParametersHasBeenSet = false;
236 bool m_resultReuseConfigurationHasBeenSet = false;
237 bool m_engineConfigurationHasBeenSet = false;
238};
239
240} // namespace Model
241} // namespace Athena
242} // namespace Aws
StartQueryExecutionRequest & WithExecutionParameters(ExecutionParametersT &&value)
void SetEngineConfiguration(EngineConfigurationT &&value)
void SetQueryExecutionContext(QueryExecutionContextT &&value)
virtual const char * GetServiceRequestName() const override
const Aws::Vector< Aws::String > & GetExecutionParameters() const
void SetResultConfiguration(ResultConfigurationT &&value)
StartQueryExecutionRequest & WithEngineConfiguration(EngineConfigurationT &&value)
StartQueryExecutionRequest & WithQueryExecutionContext(QueryExecutionContextT &&value)
void SetResultReuseConfiguration(ResultReuseConfigurationT &&value)
StartQueryExecutionRequest & WithClientRequestToken(ClientRequestTokenT &&value)
StartQueryExecutionRequest & WithResultReuseConfiguration(ResultReuseConfigurationT &&value)
void SetExecutionParameters(ExecutionParametersT &&value)
StartQueryExecutionRequest & WithResultConfiguration(ResultConfigurationT &&value)
StartQueryExecutionRequest & AddExecutionParameters(ExecutionParametersT &&value)
const QueryExecutionContext & GetQueryExecutionContext() const
AWS_ATHENA_API Aws::String SerializePayload() const override
AWS_ATHENA_API StartQueryExecutionRequest()=default
const EngineConfiguration & GetEngineConfiguration() const
StartQueryExecutionRequest & WithWorkGroup(WorkGroupT &&value)
StartQueryExecutionRequest & WithQueryString(QueryStringT &&value)
AWS_ATHENA_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const ResultConfiguration & GetResultConfiguration() const
const ResultReuseConfiguration & GetResultReuseConfiguration() const
static Aws::Utils::UUID PseudoRandomUUID()
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector