AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
SelectObjectContentRequest.h
1
6#pragma once
7#include <aws/s3/S3_EXPORTS.h>
8#include <aws/s3/S3Request.h>
9#include <aws/s3/model/SelectObjectContentHandler.h>
10#include <aws/core/utils/event/EventStreamDecoder.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/s3/model/ExpressionType.h>
13#include <aws/s3/model/RequestProgress.h>
14#include <aws/s3/model/InputSerialization.h>
15#include <aws/s3/model/OutputSerialization.h>
16#include <aws/s3/model/ScanRange.h>
17#include <aws/core/utils/memory/stl/AWSMap.h>
18#include <utility>
19
20namespace Aws
21{
22namespace Http
23{
24 class URI;
25} //namespace Http
26namespace S3
27{
28namespace Model
29{
30
49 {
50 public:
51 AWS_S3_API SelectObjectContentRequest() = default;
52
53 // Service request name is the Operation name which will send this request out,
54 // each operation should has unique request name, so that we can get operation's name from this request.
55 // Note: this is not true for response, multiple operations may have the same response name,
56 // so we can not get operation's name from response.
57 inline virtual const char* GetServiceRequestName() const override { return "SelectObjectContent"; }
58
59 inline virtual bool HasEventStreamResponse() const override { return true; }
60 AWS_S3_API Aws::String SerializePayload() const override;
61
62 AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
63
65
66 AWS_S3_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override;
71
75 inline SelectObjectContentHandler& GetEventStreamHandler() { return m_handler; }
76
80 inline void SetEventStreamHandler(const SelectObjectContentHandler& value) { m_handler = value; m_decoder.ResetEventStreamHandler(&m_handler); }
81
86
90 AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
91
93
96 inline const Aws::String& GetBucket() const { return m_bucket; }
97 inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
98 template<typename BucketT = Aws::String>
99 void SetBucket(BucketT&& value) { m_bucketHasBeenSet = true; m_bucket = std::forward<BucketT>(value); }
100 template<typename BucketT = Aws::String>
101 SelectObjectContentRequest& WithBucket(BucketT&& value) { SetBucket(std::forward<BucketT>(value)); return *this;}
103
105
108 inline const Aws::String& GetKey() const { return m_key; }
109 inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
110 template<typename KeyT = Aws::String>
111 void SetKey(KeyT&& value) { m_keyHasBeenSet = true; m_key = std::forward<KeyT>(value); }
112 template<typename KeyT = Aws::String>
113 SelectObjectContentRequest& WithKey(KeyT&& value) { SetKey(std::forward<KeyT>(value)); return *this;}
115
117
124 inline const Aws::String& GetSSECustomerAlgorithm() const { return m_sSECustomerAlgorithm; }
125 inline bool SSECustomerAlgorithmHasBeenSet() const { return m_sSECustomerAlgorithmHasBeenSet; }
126 template<typename SSECustomerAlgorithmT = Aws::String>
127 void SetSSECustomerAlgorithm(SSECustomerAlgorithmT&& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = std::forward<SSECustomerAlgorithmT>(value); }
128 template<typename SSECustomerAlgorithmT = Aws::String>
129 SelectObjectContentRequest& WithSSECustomerAlgorithm(SSECustomerAlgorithmT&& value) { SetSSECustomerAlgorithm(std::forward<SSECustomerAlgorithmT>(value)); return *this;}
131
133
140 inline const Aws::String& GetSSECustomerKey() const { return m_sSECustomerKey; }
141 inline bool SSECustomerKeyHasBeenSet() const { return m_sSECustomerKeyHasBeenSet; }
142 template<typename SSECustomerKeyT = Aws::String>
143 void SetSSECustomerKey(SSECustomerKeyT&& value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey = std::forward<SSECustomerKeyT>(value); }
144 template<typename SSECustomerKeyT = Aws::String>
145 SelectObjectContentRequest& WithSSECustomerKey(SSECustomerKeyT&& value) { SetSSECustomerKey(std::forward<SSECustomerKeyT>(value)); return *this;}
147
149
156 inline const Aws::String& GetSSECustomerKeyMD5() const { return m_sSECustomerKeyMD5; }
157 inline bool SSECustomerKeyMD5HasBeenSet() const { return m_sSECustomerKeyMD5HasBeenSet; }
158 template<typename SSECustomerKeyMD5T = Aws::String>
159 void SetSSECustomerKeyMD5(SSECustomerKeyMD5T&& value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5 = std::forward<SSECustomerKeyMD5T>(value); }
160 template<typename SSECustomerKeyMD5T = Aws::String>
161 SelectObjectContentRequest& WithSSECustomerKeyMD5(SSECustomerKeyMD5T&& value) { SetSSECustomerKeyMD5(std::forward<SSECustomerKeyMD5T>(value)); return *this;}
163
165
168 inline const Aws::String& GetExpression() const { return m_expression; }
169 inline bool ExpressionHasBeenSet() const { return m_expressionHasBeenSet; }
170 template<typename ExpressionT = Aws::String>
171 void SetExpression(ExpressionT&& value) { m_expressionHasBeenSet = true; m_expression = std::forward<ExpressionT>(value); }
172 template<typename ExpressionT = Aws::String>
173 SelectObjectContentRequest& WithExpression(ExpressionT&& value) { SetExpression(std::forward<ExpressionT>(value)); return *this;}
175
177
180 inline ExpressionType GetExpressionType() const { return m_expressionType; }
181 inline bool ExpressionTypeHasBeenSet() const { return m_expressionTypeHasBeenSet; }
182 inline void SetExpressionType(ExpressionType value) { m_expressionTypeHasBeenSet = true; m_expressionType = value; }
185
187
190 inline const RequestProgress& GetRequestProgress() const { return m_requestProgress; }
191 inline bool RequestProgressHasBeenSet() const { return m_requestProgressHasBeenSet; }
192 template<typename RequestProgressT = RequestProgress>
193 void SetRequestProgress(RequestProgressT&& value) { m_requestProgressHasBeenSet = true; m_requestProgress = std::forward<RequestProgressT>(value); }
194 template<typename RequestProgressT = RequestProgress>
195 SelectObjectContentRequest& WithRequestProgress(RequestProgressT&& value) { SetRequestProgress(std::forward<RequestProgressT>(value)); return *this;}
197
199
202 inline const InputSerialization& GetInputSerialization() const { return m_inputSerialization; }
203 inline bool InputSerializationHasBeenSet() const { return m_inputSerializationHasBeenSet; }
204 template<typename InputSerializationT = InputSerialization>
205 void SetInputSerialization(InputSerializationT&& value) { m_inputSerializationHasBeenSet = true; m_inputSerialization = std::forward<InputSerializationT>(value); }
206 template<typename InputSerializationT = InputSerialization>
207 SelectObjectContentRequest& WithInputSerialization(InputSerializationT&& value) { SetInputSerialization(std::forward<InputSerializationT>(value)); return *this;}
209
211
215 inline const OutputSerialization& GetOutputSerialization() const { return m_outputSerialization; }
216 inline bool OutputSerializationHasBeenSet() const { return m_outputSerializationHasBeenSet; }
217 template<typename OutputSerializationT = OutputSerialization>
218 void SetOutputSerialization(OutputSerializationT&& value) { m_outputSerializationHasBeenSet = true; m_outputSerialization = std::forward<OutputSerializationT>(value); }
219 template<typename OutputSerializationT = OutputSerialization>
220 SelectObjectContentRequest& WithOutputSerialization(OutputSerializationT&& value) { SetOutputSerialization(std::forward<OutputSerializationT>(value)); return *this;}
222
224
238 inline const ScanRange& GetScanRange() const { return m_scanRange; }
239 inline bool ScanRangeHasBeenSet() const { return m_scanRangeHasBeenSet; }
240 template<typename ScanRangeT = ScanRange>
241 void SetScanRange(ScanRangeT&& value) { m_scanRangeHasBeenSet = true; m_scanRange = std::forward<ScanRangeT>(value); }
242 template<typename ScanRangeT = ScanRange>
243 SelectObjectContentRequest& WithScanRange(ScanRangeT&& value) { SetScanRange(std::forward<ScanRangeT>(value)); return *this;}
245
247
252 inline const Aws::String& GetExpectedBucketOwner() const { return m_expectedBucketOwner; }
253 inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
254 template<typename ExpectedBucketOwnerT = Aws::String>
255 void SetExpectedBucketOwner(ExpectedBucketOwnerT&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::forward<ExpectedBucketOwnerT>(value); }
256 template<typename ExpectedBucketOwnerT = Aws::String>
257 SelectObjectContentRequest& WithExpectedBucketOwner(ExpectedBucketOwnerT&& value) { SetExpectedBucketOwner(std::forward<ExpectedBucketOwnerT>(value)); return *this;}
259
261
262 inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const { return m_customizedAccessLogTag; }
263 inline bool CustomizedAccessLogTagHasBeenSet() const { return m_customizedAccessLogTagHasBeenSet; }
264 template<typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
265 void SetCustomizedAccessLogTag(CustomizedAccessLogTagT&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag = std::forward<CustomizedAccessLogTagT>(value); }
266 template<typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
267 SelectObjectContentRequest& WithCustomizedAccessLogTag(CustomizedAccessLogTagT&& value) { SetCustomizedAccessLogTag(std::forward<CustomizedAccessLogTagT>(value)); return *this;}
268 template<typename CustomizedAccessLogTagKeyT = Aws::String, typename CustomizedAccessLogTagValueT = Aws::String>
269 SelectObjectContentRequest& AddCustomizedAccessLogTag(CustomizedAccessLogTagKeyT&& key, CustomizedAccessLogTagValueT&& value) {
270 m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::forward<CustomizedAccessLogTagKeyT>(key), std::forward<CustomizedAccessLogTagValueT>(value)); return *this;
271 }
273 private:
274
275 Aws::String m_bucket;
276 bool m_bucketHasBeenSet = false;
277
278 Aws::String m_key;
279 bool m_keyHasBeenSet = false;
280
281 Aws::String m_sSECustomerAlgorithm;
282 bool m_sSECustomerAlgorithmHasBeenSet = false;
283
284 Aws::String m_sSECustomerKey;
285 bool m_sSECustomerKeyHasBeenSet = false;
286
287 Aws::String m_sSECustomerKeyMD5;
288 bool m_sSECustomerKeyMD5HasBeenSet = false;
289
290 Aws::String m_expression;
291 bool m_expressionHasBeenSet = false;
292
293 ExpressionType m_expressionType{ExpressionType::NOT_SET};
294 bool m_expressionTypeHasBeenSet = false;
295
296 RequestProgress m_requestProgress;
297 bool m_requestProgressHasBeenSet = false;
298
299 InputSerialization m_inputSerialization;
300 bool m_inputSerializationHasBeenSet = false;
301
302 OutputSerialization m_outputSerialization;
303 bool m_outputSerializationHasBeenSet = false;
304
305 ScanRange m_scanRange;
306 bool m_scanRangeHasBeenSet = false;
307
308 Aws::String m_expectedBucketOwner;
309 bool m_expectedBucketOwnerHasBeenSet = false;
310
311 Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
312 bool m_customizedAccessLogTagHasBeenSet = false;
313 SelectObjectContentHandler m_handler;
315
316 };
317
318} // namespace Model
319} // namespace S3
320} // namespace Aws
SelectObjectContentRequest & WithKey(KeyT &&value)
void SetExpectedBucketOwner(ExpectedBucketOwnerT &&value)
SelectObjectContentRequest & WithCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
void SetOutputSerialization(OutputSerializationT &&value)
const OutputSerialization & GetOutputSerialization() const
virtual const char * GetServiceRequestName() const override
void SetSSECustomerKeyMD5(SSECustomerKeyMD5T &&value)
SelectObjectContentRequest & WithSSECustomerKey(SSECustomerKeyT &&value)
SelectObjectContentRequest & WithBucket(BucketT &&value)
SelectObjectContentRequest & WithRequestProgress(RequestProgressT &&value)
void SetSSECustomerAlgorithm(SSECustomerAlgorithmT &&value)
AWS_S3_API EndpointParameters GetEndpointContextParams() const override
SelectObjectContentRequest & WithExpectedBucketOwner(ExpectedBucketOwnerT &&value)
const Aws::Map< Aws::String, Aws::String > & GetCustomizedAccessLogTag() const
SelectObjectContentRequest & WithOutputSerialization(OutputSerializationT &&value)
SelectObjectContentRequest & WithExpressionType(ExpressionType value)
const InputSerialization & GetInputSerialization() const
AWS_S3_API Aws::String SerializePayload() const override
SelectObjectContentRequest & WithScanRange(ScanRangeT &&value)
SelectObjectContentRequest & WithSSECustomerAlgorithm(SSECustomerAlgorithmT &&value)
void SetInputSerialization(InputSerializationT &&value)
SelectObjectContentRequest & WithEventStreamHandler(const SelectObjectContentHandler &value)
Aws::Utils::Event::EventStreamDecoder & GetEventStreamDecoder()
AWS_S3_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
void SetEventStreamHandler(const SelectObjectContentHandler &value)
SelectObjectContentRequest & WithSSECustomerKeyMD5(SSECustomerKeyMD5T &&value)
AWS_S3_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override
void SetCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
SelectObjectContentRequest & WithExpression(ExpressionT &&value)
SelectObjectContentRequest & AddCustomizedAccessLogTag(CustomizedAccessLogTagKeyT &&key, CustomizedAccessLogTagValueT &&value)
SelectObjectContentRequest & WithInputSerialization(InputSerializationT &&value)
AWS_S3_API SelectObjectContentRequest()=default
AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
Aws::Endpoint::EndpointParameters EndpointParameters
Definition S3Request.h:22
void ResetEventStreamHandler(EventStreamHandler *handler)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_iostream< char, std::char_traits< char > > IOStream
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String