1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/s3/S3_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/s3/model/ArchiveStatus.h>
10 #include <aws/core/utils/DateTime.h>
11 #include <aws/s3/model/ServerSideEncryption.h>
12 #include <aws/core/utils/memory/stl/AWSMap.h>
13 #include <aws/s3/model/StorageClass.h>
14 #include <aws/s3/model/RequestCharged.h>
15 #include <aws/s3/model/ReplicationStatus.h>
16 #include <aws/s3/model/ObjectLockMode.h>
17 #include <aws/s3/model/ObjectLockLegalHoldStatus.h>
18 #include <utility>
19 
20 namespace Aws
21 {
22 template<typename RESULT_TYPE>
23 class AmazonWebServiceResult;
24 
25 namespace Utils
26 {
27 namespace Xml
28 {
29   class XmlDocument;
30 } // namespace Xml
31 } // namespace Utils
32 namespace S3
33 {
34 namespace Model
35 {
36   class AWS_S3_API HeadObjectResult
37   {
38   public:
39     HeadObjectResult();
40     HeadObjectResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
41     HeadObjectResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
42 
43 
44     /**
45      * <p>Specifies whether the object retrieved was (true) or was not (false) a Delete
46      * Marker. If false, this response header does not appear in the response.</p>
47      */
GetDeleteMarker()48     inline bool GetDeleteMarker() const{ return m_deleteMarker; }
49 
50     /**
51      * <p>Specifies whether the object retrieved was (true) or was not (false) a Delete
52      * Marker. If false, this response header does not appear in the response.</p>
53      */
SetDeleteMarker(bool value)54     inline void SetDeleteMarker(bool value) { m_deleteMarker = value; }
55 
56     /**
57      * <p>Specifies whether the object retrieved was (true) or was not (false) a Delete
58      * Marker. If false, this response header does not appear in the response.</p>
59      */
WithDeleteMarker(bool value)60     inline HeadObjectResult& WithDeleteMarker(bool value) { SetDeleteMarker(value); return *this;}
61 
62 
63     /**
64      * <p>Indicates that a range of bytes was specified.</p>
65      */
GetAcceptRanges()66     inline const Aws::String& GetAcceptRanges() const{ return m_acceptRanges; }
67 
68     /**
69      * <p>Indicates that a range of bytes was specified.</p>
70      */
SetAcceptRanges(const Aws::String & value)71     inline void SetAcceptRanges(const Aws::String& value) { m_acceptRanges = value; }
72 
73     /**
74      * <p>Indicates that a range of bytes was specified.</p>
75      */
SetAcceptRanges(Aws::String && value)76     inline void SetAcceptRanges(Aws::String&& value) { m_acceptRanges = std::move(value); }
77 
78     /**
79      * <p>Indicates that a range of bytes was specified.</p>
80      */
SetAcceptRanges(const char * value)81     inline void SetAcceptRanges(const char* value) { m_acceptRanges.assign(value); }
82 
83     /**
84      * <p>Indicates that a range of bytes was specified.</p>
85      */
WithAcceptRanges(const Aws::String & value)86     inline HeadObjectResult& WithAcceptRanges(const Aws::String& value) { SetAcceptRanges(value); return *this;}
87 
88     /**
89      * <p>Indicates that a range of bytes was specified.</p>
90      */
WithAcceptRanges(Aws::String && value)91     inline HeadObjectResult& WithAcceptRanges(Aws::String&& value) { SetAcceptRanges(std::move(value)); return *this;}
92 
93     /**
94      * <p>Indicates that a range of bytes was specified.</p>
95      */
WithAcceptRanges(const char * value)96     inline HeadObjectResult& WithAcceptRanges(const char* value) { SetAcceptRanges(value); return *this;}
97 
98 
99     /**
100      * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
101      * response includes this header. It includes the expiry-date and rule-id key-value
102      * pairs providing object expiration information. The value of the rule-id is URL
103      * encoded.</p>
104      */
GetExpiration()105     inline const Aws::String& GetExpiration() const{ return m_expiration; }
106 
107     /**
108      * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
109      * response includes this header. It includes the expiry-date and rule-id key-value
110      * pairs providing object expiration information. The value of the rule-id is URL
111      * encoded.</p>
112      */
SetExpiration(const Aws::String & value)113     inline void SetExpiration(const Aws::String& value) { m_expiration = value; }
114 
115     /**
116      * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
117      * response includes this header. It includes the expiry-date and rule-id key-value
118      * pairs providing object expiration information. The value of the rule-id is URL
119      * encoded.</p>
120      */
SetExpiration(Aws::String && value)121     inline void SetExpiration(Aws::String&& value) { m_expiration = std::move(value); }
122 
123     /**
124      * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
125      * response includes this header. It includes the expiry-date and rule-id key-value
126      * pairs providing object expiration information. The value of the rule-id is URL
127      * encoded.</p>
128      */
SetExpiration(const char * value)129     inline void SetExpiration(const char* value) { m_expiration.assign(value); }
130 
131     /**
132      * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
133      * response includes this header. It includes the expiry-date and rule-id key-value
134      * pairs providing object expiration information. The value of the rule-id is URL
135      * encoded.</p>
136      */
WithExpiration(const Aws::String & value)137     inline HeadObjectResult& WithExpiration(const Aws::String& value) { SetExpiration(value); return *this;}
138 
139     /**
140      * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
141      * response includes this header. It includes the expiry-date and rule-id key-value
142      * pairs providing object expiration information. The value of the rule-id is URL
143      * encoded.</p>
144      */
WithExpiration(Aws::String && value)145     inline HeadObjectResult& WithExpiration(Aws::String&& value) { SetExpiration(std::move(value)); return *this;}
146 
147     /**
148      * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
149      * response includes this header. It includes the expiry-date and rule-id key-value
150      * pairs providing object expiration information. The value of the rule-id is URL
151      * encoded.</p>
152      */
WithExpiration(const char * value)153     inline HeadObjectResult& WithExpiration(const char* value) { SetExpiration(value); return *this;}
154 
155 
156     /**
157      * <p>If the object is an archived object (an object whose storage class is
158      * GLACIER), the response includes this header if either the archive restoration is
159      * in progress (see <a
160      * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>
161      * or an archive copy is already restored.</p> <p> If an archive copy is already
162      * restored, the header value indicates when Amazon S3 is scheduled to delete the
163      * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false",
164      * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object
165      * restoration is in progress, the header returns the value
166      * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving
167      * objects, see <a
168      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations">Transitioning
169      * Objects: General Considerations</a>.</p>
170      */
GetRestore()171     inline const Aws::String& GetRestore() const{ return m_restore; }
172 
173     /**
174      * <p>If the object is an archived object (an object whose storage class is
175      * GLACIER), the response includes this header if either the archive restoration is
176      * in progress (see <a
177      * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>
178      * or an archive copy is already restored.</p> <p> If an archive copy is already
179      * restored, the header value indicates when Amazon S3 is scheduled to delete the
180      * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false",
181      * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object
182      * restoration is in progress, the header returns the value
183      * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving
184      * objects, see <a
185      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations">Transitioning
186      * Objects: General Considerations</a>.</p>
187      */
SetRestore(const Aws::String & value)188     inline void SetRestore(const Aws::String& value) { m_restore = value; }
189 
190     /**
191      * <p>If the object is an archived object (an object whose storage class is
192      * GLACIER), the response includes this header if either the archive restoration is
193      * in progress (see <a
194      * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>
195      * or an archive copy is already restored.</p> <p> If an archive copy is already
196      * restored, the header value indicates when Amazon S3 is scheduled to delete the
197      * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false",
198      * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object
199      * restoration is in progress, the header returns the value
200      * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving
201      * objects, see <a
202      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations">Transitioning
203      * Objects: General Considerations</a>.</p>
204      */
SetRestore(Aws::String && value)205     inline void SetRestore(Aws::String&& value) { m_restore = std::move(value); }
206 
207     /**
208      * <p>If the object is an archived object (an object whose storage class is
209      * GLACIER), the response includes this header if either the archive restoration is
210      * in progress (see <a
211      * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>
212      * or an archive copy is already restored.</p> <p> If an archive copy is already
213      * restored, the header value indicates when Amazon S3 is scheduled to delete the
214      * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false",
215      * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object
216      * restoration is in progress, the header returns the value
217      * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving
218      * objects, see <a
219      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations">Transitioning
220      * Objects: General Considerations</a>.</p>
221      */
SetRestore(const char * value)222     inline void SetRestore(const char* value) { m_restore.assign(value); }
223 
224     /**
225      * <p>If the object is an archived object (an object whose storage class is
226      * GLACIER), the response includes this header if either the archive restoration is
227      * in progress (see <a
228      * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>
229      * or an archive copy is already restored.</p> <p> If an archive copy is already
230      * restored, the header value indicates when Amazon S3 is scheduled to delete the
231      * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false",
232      * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object
233      * restoration is in progress, the header returns the value
234      * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving
235      * objects, see <a
236      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations">Transitioning
237      * Objects: General Considerations</a>.</p>
238      */
WithRestore(const Aws::String & value)239     inline HeadObjectResult& WithRestore(const Aws::String& value) { SetRestore(value); return *this;}
240 
241     /**
242      * <p>If the object is an archived object (an object whose storage class is
243      * GLACIER), the response includes this header if either the archive restoration is
244      * in progress (see <a
245      * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>
246      * or an archive copy is already restored.</p> <p> If an archive copy is already
247      * restored, the header value indicates when Amazon S3 is scheduled to delete the
248      * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false",
249      * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object
250      * restoration is in progress, the header returns the value
251      * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving
252      * objects, see <a
253      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations">Transitioning
254      * Objects: General Considerations</a>.</p>
255      */
WithRestore(Aws::String && value)256     inline HeadObjectResult& WithRestore(Aws::String&& value) { SetRestore(std::move(value)); return *this;}
257 
258     /**
259      * <p>If the object is an archived object (an object whose storage class is
260      * GLACIER), the response includes this header if either the archive restoration is
261      * in progress (see <a
262      * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>
263      * or an archive copy is already restored.</p> <p> If an archive copy is already
264      * restored, the header value indicates when Amazon S3 is scheduled to delete the
265      * object copy. For example:</p> <p> <code>x-amz-restore: ongoing-request="false",
266      * expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"</code> </p> <p>If the object
267      * restoration is in progress, the header returns the value
268      * <code>ongoing-request="true"</code>.</p> <p>For more information about archiving
269      * objects, see <a
270      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-transition-general-considerations">Transitioning
271      * Objects: General Considerations</a>.</p>
272      */
WithRestore(const char * value)273     inline HeadObjectResult& WithRestore(const char* value) { SetRestore(value); return *this;}
274 
275 
276     /**
277      * <p>The archive state of the head object.</p>
278      */
GetArchiveStatus()279     inline const ArchiveStatus& GetArchiveStatus() const{ return m_archiveStatus; }
280 
281     /**
282      * <p>The archive state of the head object.</p>
283      */
SetArchiveStatus(const ArchiveStatus & value)284     inline void SetArchiveStatus(const ArchiveStatus& value) { m_archiveStatus = value; }
285 
286     /**
287      * <p>The archive state of the head object.</p>
288      */
SetArchiveStatus(ArchiveStatus && value)289     inline void SetArchiveStatus(ArchiveStatus&& value) { m_archiveStatus = std::move(value); }
290 
291     /**
292      * <p>The archive state of the head object.</p>
293      */
WithArchiveStatus(const ArchiveStatus & value)294     inline HeadObjectResult& WithArchiveStatus(const ArchiveStatus& value) { SetArchiveStatus(value); return *this;}
295 
296     /**
297      * <p>The archive state of the head object.</p>
298      */
WithArchiveStatus(ArchiveStatus && value)299     inline HeadObjectResult& WithArchiveStatus(ArchiveStatus&& value) { SetArchiveStatus(std::move(value)); return *this;}
300 
301 
302     /**
303      * <p>Creation date of the object.</p>
304      */
GetLastModified()305     inline const Aws::Utils::DateTime& GetLastModified() const{ return m_lastModified; }
306 
307     /**
308      * <p>Creation date of the object.</p>
309      */
SetLastModified(const Aws::Utils::DateTime & value)310     inline void SetLastModified(const Aws::Utils::DateTime& value) { m_lastModified = value; }
311 
312     /**
313      * <p>Creation date of the object.</p>
314      */
SetLastModified(Aws::Utils::DateTime && value)315     inline void SetLastModified(Aws::Utils::DateTime&& value) { m_lastModified = std::move(value); }
316 
317     /**
318      * <p>Creation date of the object.</p>
319      */
WithLastModified(const Aws::Utils::DateTime & value)320     inline HeadObjectResult& WithLastModified(const Aws::Utils::DateTime& value) { SetLastModified(value); return *this;}
321 
322     /**
323      * <p>Creation date of the object.</p>
324      */
WithLastModified(Aws::Utils::DateTime && value)325     inline HeadObjectResult& WithLastModified(Aws::Utils::DateTime&& value) { SetLastModified(std::move(value)); return *this;}
326 
327 
328     /**
329      * <p>Size of the body in bytes.</p>
330      */
GetContentLength()331     inline long long GetContentLength() const{ return m_contentLength; }
332 
333     /**
334      * <p>Size of the body in bytes.</p>
335      */
SetContentLength(long long value)336     inline void SetContentLength(long long value) { m_contentLength = value; }
337 
338     /**
339      * <p>Size of the body in bytes.</p>
340      */
WithContentLength(long long value)341     inline HeadObjectResult& WithContentLength(long long value) { SetContentLength(value); return *this;}
342 
343 
344     /**
345      * <p>An ETag is an opaque identifier assigned by a web server to a specific
346      * version of a resource found at a URL.</p>
347      */
GetETag()348     inline const Aws::String& GetETag() const{ return m_eTag; }
349 
350     /**
351      * <p>An ETag is an opaque identifier assigned by a web server to a specific
352      * version of a resource found at a URL.</p>
353      */
SetETag(const Aws::String & value)354     inline void SetETag(const Aws::String& value) { m_eTag = value; }
355 
356     /**
357      * <p>An ETag is an opaque identifier assigned by a web server to a specific
358      * version of a resource found at a URL.</p>
359      */
SetETag(Aws::String && value)360     inline void SetETag(Aws::String&& value) { m_eTag = std::move(value); }
361 
362     /**
363      * <p>An ETag is an opaque identifier assigned by a web server to a specific
364      * version of a resource found at a URL.</p>
365      */
SetETag(const char * value)366     inline void SetETag(const char* value) { m_eTag.assign(value); }
367 
368     /**
369      * <p>An ETag is an opaque identifier assigned by a web server to a specific
370      * version of a resource found at a URL.</p>
371      */
WithETag(const Aws::String & value)372     inline HeadObjectResult& WithETag(const Aws::String& value) { SetETag(value); return *this;}
373 
374     /**
375      * <p>An ETag is an opaque identifier assigned by a web server to a specific
376      * version of a resource found at a URL.</p>
377      */
WithETag(Aws::String && value)378     inline HeadObjectResult& WithETag(Aws::String&& value) { SetETag(std::move(value)); return *this;}
379 
380     /**
381      * <p>An ETag is an opaque identifier assigned by a web server to a specific
382      * version of a resource found at a URL.</p>
383      */
WithETag(const char * value)384     inline HeadObjectResult& WithETag(const char* value) { SetETag(value); return *this;}
385 
386 
387     /**
388      * <p>This is set to the number of metadata entries not returned in
389      * <code>x-amz-meta</code> headers. This can happen if you create metadata using an
390      * API like SOAP that supports more flexible metadata than the REST API. For
391      * example, using SOAP, you can create metadata whose values are not legal HTTP
392      * headers.</p>
393      */
GetMissingMeta()394     inline int GetMissingMeta() const{ return m_missingMeta; }
395 
396     /**
397      * <p>This is set to the number of metadata entries not returned in
398      * <code>x-amz-meta</code> headers. This can happen if you create metadata using an
399      * API like SOAP that supports more flexible metadata than the REST API. For
400      * example, using SOAP, you can create metadata whose values are not legal HTTP
401      * headers.</p>
402      */
SetMissingMeta(int value)403     inline void SetMissingMeta(int value) { m_missingMeta = value; }
404 
405     /**
406      * <p>This is set to the number of metadata entries not returned in
407      * <code>x-amz-meta</code> headers. This can happen if you create metadata using an
408      * API like SOAP that supports more flexible metadata than the REST API. For
409      * example, using SOAP, you can create metadata whose values are not legal HTTP
410      * headers.</p>
411      */
WithMissingMeta(int value)412     inline HeadObjectResult& WithMissingMeta(int value) { SetMissingMeta(value); return *this;}
413 
414 
415     /**
416      * <p>Version of the object.</p>
417      */
GetVersionId()418     inline const Aws::String& GetVersionId() const{ return m_versionId; }
419 
420     /**
421      * <p>Version of the object.</p>
422      */
SetVersionId(const Aws::String & value)423     inline void SetVersionId(const Aws::String& value) { m_versionId = value; }
424 
425     /**
426      * <p>Version of the object.</p>
427      */
SetVersionId(Aws::String && value)428     inline void SetVersionId(Aws::String&& value) { m_versionId = std::move(value); }
429 
430     /**
431      * <p>Version of the object.</p>
432      */
SetVersionId(const char * value)433     inline void SetVersionId(const char* value) { m_versionId.assign(value); }
434 
435     /**
436      * <p>Version of the object.</p>
437      */
WithVersionId(const Aws::String & value)438     inline HeadObjectResult& WithVersionId(const Aws::String& value) { SetVersionId(value); return *this;}
439 
440     /**
441      * <p>Version of the object.</p>
442      */
WithVersionId(Aws::String && value)443     inline HeadObjectResult& WithVersionId(Aws::String&& value) { SetVersionId(std::move(value)); return *this;}
444 
445     /**
446      * <p>Version of the object.</p>
447      */
WithVersionId(const char * value)448     inline HeadObjectResult& WithVersionId(const char* value) { SetVersionId(value); return *this;}
449 
450 
451     /**
452      * <p>Specifies caching behavior along the request/reply chain.</p>
453      */
GetCacheControl()454     inline const Aws::String& GetCacheControl() const{ return m_cacheControl; }
455 
456     /**
457      * <p>Specifies caching behavior along the request/reply chain.</p>
458      */
SetCacheControl(const Aws::String & value)459     inline void SetCacheControl(const Aws::String& value) { m_cacheControl = value; }
460 
461     /**
462      * <p>Specifies caching behavior along the request/reply chain.</p>
463      */
SetCacheControl(Aws::String && value)464     inline void SetCacheControl(Aws::String&& value) { m_cacheControl = std::move(value); }
465 
466     /**
467      * <p>Specifies caching behavior along the request/reply chain.</p>
468      */
SetCacheControl(const char * value)469     inline void SetCacheControl(const char* value) { m_cacheControl.assign(value); }
470 
471     /**
472      * <p>Specifies caching behavior along the request/reply chain.</p>
473      */
WithCacheControl(const Aws::String & value)474     inline HeadObjectResult& WithCacheControl(const Aws::String& value) { SetCacheControl(value); return *this;}
475 
476     /**
477      * <p>Specifies caching behavior along the request/reply chain.</p>
478      */
WithCacheControl(Aws::String && value)479     inline HeadObjectResult& WithCacheControl(Aws::String&& value) { SetCacheControl(std::move(value)); return *this;}
480 
481     /**
482      * <p>Specifies caching behavior along the request/reply chain.</p>
483      */
WithCacheControl(const char * value)484     inline HeadObjectResult& WithCacheControl(const char* value) { SetCacheControl(value); return *this;}
485 
486 
487     /**
488      * <p>Specifies presentational information for the object.</p>
489      */
GetContentDisposition()490     inline const Aws::String& GetContentDisposition() const{ return m_contentDisposition; }
491 
492     /**
493      * <p>Specifies presentational information for the object.</p>
494      */
SetContentDisposition(const Aws::String & value)495     inline void SetContentDisposition(const Aws::String& value) { m_contentDisposition = value; }
496 
497     /**
498      * <p>Specifies presentational information for the object.</p>
499      */
SetContentDisposition(Aws::String && value)500     inline void SetContentDisposition(Aws::String&& value) { m_contentDisposition = std::move(value); }
501 
502     /**
503      * <p>Specifies presentational information for the object.</p>
504      */
SetContentDisposition(const char * value)505     inline void SetContentDisposition(const char* value) { m_contentDisposition.assign(value); }
506 
507     /**
508      * <p>Specifies presentational information for the object.</p>
509      */
WithContentDisposition(const Aws::String & value)510     inline HeadObjectResult& WithContentDisposition(const Aws::String& value) { SetContentDisposition(value); return *this;}
511 
512     /**
513      * <p>Specifies presentational information for the object.</p>
514      */
WithContentDisposition(Aws::String && value)515     inline HeadObjectResult& WithContentDisposition(Aws::String&& value) { SetContentDisposition(std::move(value)); return *this;}
516 
517     /**
518      * <p>Specifies presentational information for the object.</p>
519      */
WithContentDisposition(const char * value)520     inline HeadObjectResult& WithContentDisposition(const char* value) { SetContentDisposition(value); return *this;}
521 
522 
523     /**
524      * <p>Specifies what content encodings have been applied to the object and thus
525      * what decoding mechanisms must be applied to obtain the media-type referenced by
526      * the Content-Type header field.</p>
527      */
GetContentEncoding()528     inline const Aws::String& GetContentEncoding() const{ return m_contentEncoding; }
529 
530     /**
531      * <p>Specifies what content encodings have been applied to the object and thus
532      * what decoding mechanisms must be applied to obtain the media-type referenced by
533      * the Content-Type header field.</p>
534      */
SetContentEncoding(const Aws::String & value)535     inline void SetContentEncoding(const Aws::String& value) { m_contentEncoding = value; }
536 
537     /**
538      * <p>Specifies what content encodings have been applied to the object and thus
539      * what decoding mechanisms must be applied to obtain the media-type referenced by
540      * the Content-Type header field.</p>
541      */
SetContentEncoding(Aws::String && value)542     inline void SetContentEncoding(Aws::String&& value) { m_contentEncoding = std::move(value); }
543 
544     /**
545      * <p>Specifies what content encodings have been applied to the object and thus
546      * what decoding mechanisms must be applied to obtain the media-type referenced by
547      * the Content-Type header field.</p>
548      */
SetContentEncoding(const char * value)549     inline void SetContentEncoding(const char* value) { m_contentEncoding.assign(value); }
550 
551     /**
552      * <p>Specifies what content encodings have been applied to the object and thus
553      * what decoding mechanisms must be applied to obtain the media-type referenced by
554      * the Content-Type header field.</p>
555      */
WithContentEncoding(const Aws::String & value)556     inline HeadObjectResult& WithContentEncoding(const Aws::String& value) { SetContentEncoding(value); return *this;}
557 
558     /**
559      * <p>Specifies what content encodings have been applied to the object and thus
560      * what decoding mechanisms must be applied to obtain the media-type referenced by
561      * the Content-Type header field.</p>
562      */
WithContentEncoding(Aws::String && value)563     inline HeadObjectResult& WithContentEncoding(Aws::String&& value) { SetContentEncoding(std::move(value)); return *this;}
564 
565     /**
566      * <p>Specifies what content encodings have been applied to the object and thus
567      * what decoding mechanisms must be applied to obtain the media-type referenced by
568      * the Content-Type header field.</p>
569      */
WithContentEncoding(const char * value)570     inline HeadObjectResult& WithContentEncoding(const char* value) { SetContentEncoding(value); return *this;}
571 
572 
573     /**
574      * <p>The language the content is in.</p>
575      */
GetContentLanguage()576     inline const Aws::String& GetContentLanguage() const{ return m_contentLanguage; }
577 
578     /**
579      * <p>The language the content is in.</p>
580      */
SetContentLanguage(const Aws::String & value)581     inline void SetContentLanguage(const Aws::String& value) { m_contentLanguage = value; }
582 
583     /**
584      * <p>The language the content is in.</p>
585      */
SetContentLanguage(Aws::String && value)586     inline void SetContentLanguage(Aws::String&& value) { m_contentLanguage = std::move(value); }
587 
588     /**
589      * <p>The language the content is in.</p>
590      */
SetContentLanguage(const char * value)591     inline void SetContentLanguage(const char* value) { m_contentLanguage.assign(value); }
592 
593     /**
594      * <p>The language the content is in.</p>
595      */
WithContentLanguage(const Aws::String & value)596     inline HeadObjectResult& WithContentLanguage(const Aws::String& value) { SetContentLanguage(value); return *this;}
597 
598     /**
599      * <p>The language the content is in.</p>
600      */
WithContentLanguage(Aws::String && value)601     inline HeadObjectResult& WithContentLanguage(Aws::String&& value) { SetContentLanguage(std::move(value)); return *this;}
602 
603     /**
604      * <p>The language the content is in.</p>
605      */
WithContentLanguage(const char * value)606     inline HeadObjectResult& WithContentLanguage(const char* value) { SetContentLanguage(value); return *this;}
607 
608 
609     /**
610      * <p>A standard MIME type describing the format of the object data.</p>
611      */
GetContentType()612     inline const Aws::String& GetContentType() const{ return m_contentType; }
613 
614     /**
615      * <p>A standard MIME type describing the format of the object data.</p>
616      */
SetContentType(const Aws::String & value)617     inline void SetContentType(const Aws::String& value) { m_contentType = value; }
618 
619     /**
620      * <p>A standard MIME type describing the format of the object data.</p>
621      */
SetContentType(Aws::String && value)622     inline void SetContentType(Aws::String&& value) { m_contentType = std::move(value); }
623 
624     /**
625      * <p>A standard MIME type describing the format of the object data.</p>
626      */
SetContentType(const char * value)627     inline void SetContentType(const char* value) { m_contentType.assign(value); }
628 
629     /**
630      * <p>A standard MIME type describing the format of the object data.</p>
631      */
WithContentType(const Aws::String & value)632     inline HeadObjectResult& WithContentType(const Aws::String& value) { SetContentType(value); return *this;}
633 
634     /**
635      * <p>A standard MIME type describing the format of the object data.</p>
636      */
WithContentType(Aws::String && value)637     inline HeadObjectResult& WithContentType(Aws::String&& value) { SetContentType(std::move(value)); return *this;}
638 
639     /**
640      * <p>A standard MIME type describing the format of the object data.</p>
641      */
WithContentType(const char * value)642     inline HeadObjectResult& WithContentType(const char* value) { SetContentType(value); return *this;}
643 
644 
645     /**
646      * <p>The date and time at which the object is no longer cacheable.</p>
647      */
GetExpires()648     inline const Aws::Utils::DateTime& GetExpires() const{ return m_expires; }
649 
650     /**
651      * <p>The date and time at which the object is no longer cacheable.</p>
652      */
SetExpires(const Aws::Utils::DateTime & value)653     inline void SetExpires(const Aws::Utils::DateTime& value) { m_expires = value; }
654 
655     /**
656      * <p>The date and time at which the object is no longer cacheable.</p>
657      */
SetExpires(Aws::Utils::DateTime && value)658     inline void SetExpires(Aws::Utils::DateTime&& value) { m_expires = std::move(value); }
659 
660     /**
661      * <p>The date and time at which the object is no longer cacheable.</p>
662      */
WithExpires(const Aws::Utils::DateTime & value)663     inline HeadObjectResult& WithExpires(const Aws::Utils::DateTime& value) { SetExpires(value); return *this;}
664 
665     /**
666      * <p>The date and time at which the object is no longer cacheable.</p>
667      */
WithExpires(Aws::Utils::DateTime && value)668     inline HeadObjectResult& WithExpires(Aws::Utils::DateTime&& value) { SetExpires(std::move(value)); return *this;}
669 
670 
671     /**
672      * <p>If the bucket is configured as a website, redirects requests for this object
673      * to another object in the same bucket or to an external URL. Amazon S3 stores the
674      * value of this header in the object metadata.</p>
675      */
GetWebsiteRedirectLocation()676     inline const Aws::String& GetWebsiteRedirectLocation() const{ return m_websiteRedirectLocation; }
677 
678     /**
679      * <p>If the bucket is configured as a website, redirects requests for this object
680      * to another object in the same bucket or to an external URL. Amazon S3 stores the
681      * value of this header in the object metadata.</p>
682      */
SetWebsiteRedirectLocation(const Aws::String & value)683     inline void SetWebsiteRedirectLocation(const Aws::String& value) { m_websiteRedirectLocation = value; }
684 
685     /**
686      * <p>If the bucket is configured as a website, redirects requests for this object
687      * to another object in the same bucket or to an external URL. Amazon S3 stores the
688      * value of this header in the object metadata.</p>
689      */
SetWebsiteRedirectLocation(Aws::String && value)690     inline void SetWebsiteRedirectLocation(Aws::String&& value) { m_websiteRedirectLocation = std::move(value); }
691 
692     /**
693      * <p>If the bucket is configured as a website, redirects requests for this object
694      * to another object in the same bucket or to an external URL. Amazon S3 stores the
695      * value of this header in the object metadata.</p>
696      */
SetWebsiteRedirectLocation(const char * value)697     inline void SetWebsiteRedirectLocation(const char* value) { m_websiteRedirectLocation.assign(value); }
698 
699     /**
700      * <p>If the bucket is configured as a website, redirects requests for this object
701      * to another object in the same bucket or to an external URL. Amazon S3 stores the
702      * value of this header in the object metadata.</p>
703      */
WithWebsiteRedirectLocation(const Aws::String & value)704     inline HeadObjectResult& WithWebsiteRedirectLocation(const Aws::String& value) { SetWebsiteRedirectLocation(value); return *this;}
705 
706     /**
707      * <p>If the bucket is configured as a website, redirects requests for this object
708      * to another object in the same bucket or to an external URL. Amazon S3 stores the
709      * value of this header in the object metadata.</p>
710      */
WithWebsiteRedirectLocation(Aws::String && value)711     inline HeadObjectResult& WithWebsiteRedirectLocation(Aws::String&& value) { SetWebsiteRedirectLocation(std::move(value)); return *this;}
712 
713     /**
714      * <p>If the bucket is configured as a website, redirects requests for this object
715      * to another object in the same bucket or to an external URL. Amazon S3 stores the
716      * value of this header in the object metadata.</p>
717      */
WithWebsiteRedirectLocation(const char * value)718     inline HeadObjectResult& WithWebsiteRedirectLocation(const char* value) { SetWebsiteRedirectLocation(value); return *this;}
719 
720 
721     /**
722      * <p>If the object is stored using server-side encryption either with an Amazon
723      * Web Services KMS key or an Amazon S3-managed encryption key, the response
724      * includes this header with the value of the server-side encryption algorithm used
725      * when storing this object in Amazon S3 (for example, AES256, aws:kms).</p>
726      */
GetServerSideEncryption()727     inline const ServerSideEncryption& GetServerSideEncryption() const{ return m_serverSideEncryption; }
728 
729     /**
730      * <p>If the object is stored using server-side encryption either with an Amazon
731      * Web Services KMS key or an Amazon S3-managed encryption key, the response
732      * includes this header with the value of the server-side encryption algorithm used
733      * when storing this object in Amazon S3 (for example, AES256, aws:kms).</p>
734      */
SetServerSideEncryption(const ServerSideEncryption & value)735     inline void SetServerSideEncryption(const ServerSideEncryption& value) { m_serverSideEncryption = value; }
736 
737     /**
738      * <p>If the object is stored using server-side encryption either with an Amazon
739      * Web Services KMS key or an Amazon S3-managed encryption key, the response
740      * includes this header with the value of the server-side encryption algorithm used
741      * when storing this object in Amazon S3 (for example, AES256, aws:kms).</p>
742      */
SetServerSideEncryption(ServerSideEncryption && value)743     inline void SetServerSideEncryption(ServerSideEncryption&& value) { m_serverSideEncryption = std::move(value); }
744 
745     /**
746      * <p>If the object is stored using server-side encryption either with an Amazon
747      * Web Services KMS key or an Amazon S3-managed encryption key, the response
748      * includes this header with the value of the server-side encryption algorithm used
749      * when storing this object in Amazon S3 (for example, AES256, aws:kms).</p>
750      */
WithServerSideEncryption(const ServerSideEncryption & value)751     inline HeadObjectResult& WithServerSideEncryption(const ServerSideEncryption& value) { SetServerSideEncryption(value); return *this;}
752 
753     /**
754      * <p>If the object is stored using server-side encryption either with an Amazon
755      * Web Services KMS key or an Amazon S3-managed encryption key, the response
756      * includes this header with the value of the server-side encryption algorithm used
757      * when storing this object in Amazon S3 (for example, AES256, aws:kms).</p>
758      */
WithServerSideEncryption(ServerSideEncryption && value)759     inline HeadObjectResult& WithServerSideEncryption(ServerSideEncryption&& value) { SetServerSideEncryption(std::move(value)); return *this;}
760 
761 
762     /**
763      * <p>A map of metadata to store with the object in S3.</p>
764      */
GetMetadata()765     inline const Aws::Map<Aws::String, Aws::String>& GetMetadata() const{ return m_metadata; }
766 
767     /**
768      * <p>A map of metadata to store with the object in S3.</p>
769      */
SetMetadata(const Aws::Map<Aws::String,Aws::String> & value)770     inline void SetMetadata(const Aws::Map<Aws::String, Aws::String>& value) { m_metadata = value; }
771 
772     /**
773      * <p>A map of metadata to store with the object in S3.</p>
774      */
SetMetadata(Aws::Map<Aws::String,Aws::String> && value)775     inline void SetMetadata(Aws::Map<Aws::String, Aws::String>&& value) { m_metadata = std::move(value); }
776 
777     /**
778      * <p>A map of metadata to store with the object in S3.</p>
779      */
WithMetadata(const Aws::Map<Aws::String,Aws::String> & value)780     inline HeadObjectResult& WithMetadata(const Aws::Map<Aws::String, Aws::String>& value) { SetMetadata(value); return *this;}
781 
782     /**
783      * <p>A map of metadata to store with the object in S3.</p>
784      */
WithMetadata(Aws::Map<Aws::String,Aws::String> && value)785     inline HeadObjectResult& WithMetadata(Aws::Map<Aws::String, Aws::String>&& value) { SetMetadata(std::move(value)); return *this;}
786 
787     /**
788      * <p>A map of metadata to store with the object in S3.</p>
789      */
AddMetadata(const Aws::String & key,const Aws::String & value)790     inline HeadObjectResult& AddMetadata(const Aws::String& key, const Aws::String& value) { m_metadata.emplace(key, value); return *this; }
791 
792     /**
793      * <p>A map of metadata to store with the object in S3.</p>
794      */
AddMetadata(Aws::String && key,const Aws::String & value)795     inline HeadObjectResult& AddMetadata(Aws::String&& key, const Aws::String& value) { m_metadata.emplace(std::move(key), value); return *this; }
796 
797     /**
798      * <p>A map of metadata to store with the object in S3.</p>
799      */
AddMetadata(const Aws::String & key,Aws::String && value)800     inline HeadObjectResult& AddMetadata(const Aws::String& key, Aws::String&& value) { m_metadata.emplace(key, std::move(value)); return *this; }
801 
802     /**
803      * <p>A map of metadata to store with the object in S3.</p>
804      */
AddMetadata(Aws::String && key,Aws::String && value)805     inline HeadObjectResult& AddMetadata(Aws::String&& key, Aws::String&& value) { m_metadata.emplace(std::move(key), std::move(value)); return *this; }
806 
807     /**
808      * <p>A map of metadata to store with the object in S3.</p>
809      */
AddMetadata(const char * key,Aws::String && value)810     inline HeadObjectResult& AddMetadata(const char* key, Aws::String&& value) { m_metadata.emplace(key, std::move(value)); return *this; }
811 
812     /**
813      * <p>A map of metadata to store with the object in S3.</p>
814      */
AddMetadata(Aws::String && key,const char * value)815     inline HeadObjectResult& AddMetadata(Aws::String&& key, const char* value) { m_metadata.emplace(std::move(key), value); return *this; }
816 
817     /**
818      * <p>A map of metadata to store with the object in S3.</p>
819      */
AddMetadata(const char * key,const char * value)820     inline HeadObjectResult& AddMetadata(const char* key, const char* value) { m_metadata.emplace(key, value); return *this; }
821 
822 
823     /**
824      * <p>If server-side encryption with a customer-provided encryption key was
825      * requested, the response will include this header confirming the encryption
826      * algorithm used.</p>
827      */
GetSSECustomerAlgorithm()828     inline const Aws::String& GetSSECustomerAlgorithm() const{ return m_sSECustomerAlgorithm; }
829 
830     /**
831      * <p>If server-side encryption with a customer-provided encryption key was
832      * requested, the response will include this header confirming the encryption
833      * algorithm used.</p>
834      */
SetSSECustomerAlgorithm(const Aws::String & value)835     inline void SetSSECustomerAlgorithm(const Aws::String& value) { m_sSECustomerAlgorithm = value; }
836 
837     /**
838      * <p>If server-side encryption with a customer-provided encryption key was
839      * requested, the response will include this header confirming the encryption
840      * algorithm used.</p>
841      */
SetSSECustomerAlgorithm(Aws::String && value)842     inline void SetSSECustomerAlgorithm(Aws::String&& value) { m_sSECustomerAlgorithm = std::move(value); }
843 
844     /**
845      * <p>If server-side encryption with a customer-provided encryption key was
846      * requested, the response will include this header confirming the encryption
847      * algorithm used.</p>
848      */
SetSSECustomerAlgorithm(const char * value)849     inline void SetSSECustomerAlgorithm(const char* value) { m_sSECustomerAlgorithm.assign(value); }
850 
851     /**
852      * <p>If server-side encryption with a customer-provided encryption key was
853      * requested, the response will include this header confirming the encryption
854      * algorithm used.</p>
855      */
WithSSECustomerAlgorithm(const Aws::String & value)856     inline HeadObjectResult& WithSSECustomerAlgorithm(const Aws::String& value) { SetSSECustomerAlgorithm(value); return *this;}
857 
858     /**
859      * <p>If server-side encryption with a customer-provided encryption key was
860      * requested, the response will include this header confirming the encryption
861      * algorithm used.</p>
862      */
WithSSECustomerAlgorithm(Aws::String && value)863     inline HeadObjectResult& WithSSECustomerAlgorithm(Aws::String&& value) { SetSSECustomerAlgorithm(std::move(value)); return *this;}
864 
865     /**
866      * <p>If server-side encryption with a customer-provided encryption key was
867      * requested, the response will include this header confirming the encryption
868      * algorithm used.</p>
869      */
WithSSECustomerAlgorithm(const char * value)870     inline HeadObjectResult& WithSSECustomerAlgorithm(const char* value) { SetSSECustomerAlgorithm(value); return *this;}
871 
872 
873     /**
874      * <p>If server-side encryption with a customer-provided encryption key was
875      * requested, the response will include this header to provide round-trip message
876      * integrity verification of the customer-provided encryption key.</p>
877      */
GetSSECustomerKeyMD5()878     inline const Aws::String& GetSSECustomerKeyMD5() const{ return m_sSECustomerKeyMD5; }
879 
880     /**
881      * <p>If server-side encryption with a customer-provided encryption key was
882      * requested, the response will include this header to provide round-trip message
883      * integrity verification of the customer-provided encryption key.</p>
884      */
SetSSECustomerKeyMD5(const Aws::String & value)885     inline void SetSSECustomerKeyMD5(const Aws::String& value) { m_sSECustomerKeyMD5 = value; }
886 
887     /**
888      * <p>If server-side encryption with a customer-provided encryption key was
889      * requested, the response will include this header to provide round-trip message
890      * integrity verification of the customer-provided encryption key.</p>
891      */
SetSSECustomerKeyMD5(Aws::String && value)892     inline void SetSSECustomerKeyMD5(Aws::String&& value) { m_sSECustomerKeyMD5 = std::move(value); }
893 
894     /**
895      * <p>If server-side encryption with a customer-provided encryption key was
896      * requested, the response will include this header to provide round-trip message
897      * integrity verification of the customer-provided encryption key.</p>
898      */
SetSSECustomerKeyMD5(const char * value)899     inline void SetSSECustomerKeyMD5(const char* value) { m_sSECustomerKeyMD5.assign(value); }
900 
901     /**
902      * <p>If server-side encryption with a customer-provided encryption key was
903      * requested, the response will include this header to provide round-trip message
904      * integrity verification of the customer-provided encryption key.</p>
905      */
WithSSECustomerKeyMD5(const Aws::String & value)906     inline HeadObjectResult& WithSSECustomerKeyMD5(const Aws::String& value) { SetSSECustomerKeyMD5(value); return *this;}
907 
908     /**
909      * <p>If server-side encryption with a customer-provided encryption key was
910      * requested, the response will include this header to provide round-trip message
911      * integrity verification of the customer-provided encryption key.</p>
912      */
WithSSECustomerKeyMD5(Aws::String && value)913     inline HeadObjectResult& WithSSECustomerKeyMD5(Aws::String&& value) { SetSSECustomerKeyMD5(std::move(value)); return *this;}
914 
915     /**
916      * <p>If server-side encryption with a customer-provided encryption key was
917      * requested, the response will include this header to provide round-trip message
918      * integrity verification of the customer-provided encryption key.</p>
919      */
WithSSECustomerKeyMD5(const char * value)920     inline HeadObjectResult& WithSSECustomerKeyMD5(const char* value) { SetSSECustomerKeyMD5(value); return *this;}
921 
922 
923     /**
924      * <p>If present, specifies the ID of the Amazon Web Services Key Management
925      * Service (Amazon Web Services KMS) symmetric customer managed key that was used
926      * for the object.</p>
927      */
GetSSEKMSKeyId()928     inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
929 
930     /**
931      * <p>If present, specifies the ID of the Amazon Web Services Key Management
932      * Service (Amazon Web Services KMS) symmetric customer managed key that was used
933      * for the object.</p>
934      */
SetSSEKMSKeyId(const Aws::String & value)935     inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyId = value; }
936 
937     /**
938      * <p>If present, specifies the ID of the Amazon Web Services Key Management
939      * Service (Amazon Web Services KMS) symmetric customer managed key that was used
940      * for the object.</p>
941      */
SetSSEKMSKeyId(Aws::String && value)942     inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyId = std::move(value); }
943 
944     /**
945      * <p>If present, specifies the ID of the Amazon Web Services Key Management
946      * Service (Amazon Web Services KMS) symmetric customer managed key that was used
947      * for the object.</p>
948      */
SetSSEKMSKeyId(const char * value)949     inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyId.assign(value); }
950 
951     /**
952      * <p>If present, specifies the ID of the Amazon Web Services Key Management
953      * Service (Amazon Web Services KMS) symmetric customer managed key that was used
954      * for the object.</p>
955      */
WithSSEKMSKeyId(const Aws::String & value)956     inline HeadObjectResult& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
957 
958     /**
959      * <p>If present, specifies the ID of the Amazon Web Services Key Management
960      * Service (Amazon Web Services KMS) symmetric customer managed key that was used
961      * for the object.</p>
962      */
WithSSEKMSKeyId(Aws::String && value)963     inline HeadObjectResult& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
964 
965     /**
966      * <p>If present, specifies the ID of the Amazon Web Services Key Management
967      * Service (Amazon Web Services KMS) symmetric customer managed key that was used
968      * for the object.</p>
969      */
WithSSEKMSKeyId(const char * value)970     inline HeadObjectResult& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
971 
972 
973     /**
974      * <p>Indicates whether the object uses an S3 Bucket Key for server-side encryption
975      * with Amazon Web Services KMS (SSE-KMS).</p>
976      */
GetBucketKeyEnabled()977     inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; }
978 
979     /**
980      * <p>Indicates whether the object uses an S3 Bucket Key for server-side encryption
981      * with Amazon Web Services KMS (SSE-KMS).</p>
982      */
SetBucketKeyEnabled(bool value)983     inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabled = value; }
984 
985     /**
986      * <p>Indicates whether the object uses an S3 Bucket Key for server-side encryption
987      * with Amazon Web Services KMS (SSE-KMS).</p>
988      */
WithBucketKeyEnabled(bool value)989     inline HeadObjectResult& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;}
990 
991 
992     /**
993      * <p>Provides storage class information of the object. Amazon S3 returns this
994      * header for all objects except for S3 Standard storage class objects.</p> <p>For
995      * more information, see <a
996      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
997      * Classes</a>.</p>
998      */
GetStorageClass()999     inline const StorageClass& GetStorageClass() const{ return m_storageClass; }
1000 
1001     /**
1002      * <p>Provides storage class information of the object. Amazon S3 returns this
1003      * header for all objects except for S3 Standard storage class objects.</p> <p>For
1004      * more information, see <a
1005      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
1006      * Classes</a>.</p>
1007      */
SetStorageClass(const StorageClass & value)1008     inline void SetStorageClass(const StorageClass& value) { m_storageClass = value; }
1009 
1010     /**
1011      * <p>Provides storage class information of the object. Amazon S3 returns this
1012      * header for all objects except for S3 Standard storage class objects.</p> <p>For
1013      * more information, see <a
1014      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
1015      * Classes</a>.</p>
1016      */
SetStorageClass(StorageClass && value)1017     inline void SetStorageClass(StorageClass&& value) { m_storageClass = std::move(value); }
1018 
1019     /**
1020      * <p>Provides storage class information of the object. Amazon S3 returns this
1021      * header for all objects except for S3 Standard storage class objects.</p> <p>For
1022      * more information, see <a
1023      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
1024      * Classes</a>.</p>
1025      */
WithStorageClass(const StorageClass & value)1026     inline HeadObjectResult& WithStorageClass(const StorageClass& value) { SetStorageClass(value); return *this;}
1027 
1028     /**
1029      * <p>Provides storage class information of the object. Amazon S3 returns this
1030      * header for all objects except for S3 Standard storage class objects.</p> <p>For
1031      * more information, see <a
1032      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
1033      * Classes</a>.</p>
1034      */
WithStorageClass(StorageClass && value)1035     inline HeadObjectResult& WithStorageClass(StorageClass&& value) { SetStorageClass(std::move(value)); return *this;}
1036 
1037 
1038 
GetRequestCharged()1039     inline const RequestCharged& GetRequestCharged() const{ return m_requestCharged; }
1040 
1041 
SetRequestCharged(const RequestCharged & value)1042     inline void SetRequestCharged(const RequestCharged& value) { m_requestCharged = value; }
1043 
1044 
SetRequestCharged(RequestCharged && value)1045     inline void SetRequestCharged(RequestCharged&& value) { m_requestCharged = std::move(value); }
1046 
1047 
WithRequestCharged(const RequestCharged & value)1048     inline HeadObjectResult& WithRequestCharged(const RequestCharged& value) { SetRequestCharged(value); return *this;}
1049 
1050 
WithRequestCharged(RequestCharged && value)1051     inline HeadObjectResult& WithRequestCharged(RequestCharged&& value) { SetRequestCharged(std::move(value)); return *this;}
1052 
1053 
1054     /**
1055      * <p>Amazon S3 can return this header if your request involves a bucket that is
1056      * either a source or a destination in a replication rule.</p> <p>In replication,
1057      * you have a source bucket on which you configure replication and destination
1058      * bucket or buckets where Amazon S3 stores object replicas. When you request an
1059      * object (<code>GetObject</code>) or object metadata (<code>HeadObject</code>)
1060      * from these buckets, Amazon S3 will return the
1061      * <code>x-amz-replication-status</code> header in the response as follows:</p>
1062      * <ul> <li> <p>If requesting an object from the source bucket — Amazon S3 will
1063      * return the <code>x-amz-replication-status</code> header if the object in your
1064      * request is eligible for replication.</p> <p> For example, suppose that in your
1065      * replication configuration, you specify object prefix <code>TaxDocs</code>
1066      * requesting Amazon S3 to replicate objects with key prefix <code>TaxDocs</code>.
1067      * Any objects you upload with this key name prefix, for example
1068      * <code>TaxDocs/document1.pdf</code>, are eligible for replication. For any object
1069      * request with this key name prefix, Amazon S3 will return the
1070      * <code>x-amz-replication-status</code> header with value PENDING, COMPLETED or
1071      * FAILED indicating object replication status.</p> </li> <li> <p>If requesting an
1072      * object from a destination bucket — Amazon S3 will return the
1073      * <code>x-amz-replication-status</code> header with value REPLICA if the object in
1074      * your request is a replica that Amazon S3 created and there is no replica
1075      * modification replication in progress.</p> </li> <li> <p>When replicating objects
1076      * to multiple destination buckets the <code>x-amz-replication-status</code> header
1077      * acts differently. The header of the source object will only return a value of
1078      * COMPLETED when replication is successful to all destinations. The header will
1079      * remain at value PENDING until replication has completed for all destinations. If
1080      * one or more destinations fails replication the header will return FAILED. </p>
1081      * </li> </ul> <p>For more information, see <a
1082      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Replication</a>.</p>
1083      */
GetReplicationStatus()1084     inline const ReplicationStatus& GetReplicationStatus() const{ return m_replicationStatus; }
1085 
1086     /**
1087      * <p>Amazon S3 can return this header if your request involves a bucket that is
1088      * either a source or a destination in a replication rule.</p> <p>In replication,
1089      * you have a source bucket on which you configure replication and destination
1090      * bucket or buckets where Amazon S3 stores object replicas. When you request an
1091      * object (<code>GetObject</code>) or object metadata (<code>HeadObject</code>)
1092      * from these buckets, Amazon S3 will return the
1093      * <code>x-amz-replication-status</code> header in the response as follows:</p>
1094      * <ul> <li> <p>If requesting an object from the source bucket — Amazon S3 will
1095      * return the <code>x-amz-replication-status</code> header if the object in your
1096      * request is eligible for replication.</p> <p> For example, suppose that in your
1097      * replication configuration, you specify object prefix <code>TaxDocs</code>
1098      * requesting Amazon S3 to replicate objects with key prefix <code>TaxDocs</code>.
1099      * Any objects you upload with this key name prefix, for example
1100      * <code>TaxDocs/document1.pdf</code>, are eligible for replication. For any object
1101      * request with this key name prefix, Amazon S3 will return the
1102      * <code>x-amz-replication-status</code> header with value PENDING, COMPLETED or
1103      * FAILED indicating object replication status.</p> </li> <li> <p>If requesting an
1104      * object from a destination bucket — Amazon S3 will return the
1105      * <code>x-amz-replication-status</code> header with value REPLICA if the object in
1106      * your request is a replica that Amazon S3 created and there is no replica
1107      * modification replication in progress.</p> </li> <li> <p>When replicating objects
1108      * to multiple destination buckets the <code>x-amz-replication-status</code> header
1109      * acts differently. The header of the source object will only return a value of
1110      * COMPLETED when replication is successful to all destinations. The header will
1111      * remain at value PENDING until replication has completed for all destinations. If
1112      * one or more destinations fails replication the header will return FAILED. </p>
1113      * </li> </ul> <p>For more information, see <a
1114      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Replication</a>.</p>
1115      */
SetReplicationStatus(const ReplicationStatus & value)1116     inline void SetReplicationStatus(const ReplicationStatus& value) { m_replicationStatus = value; }
1117 
1118     /**
1119      * <p>Amazon S3 can return this header if your request involves a bucket that is
1120      * either a source or a destination in a replication rule.</p> <p>In replication,
1121      * you have a source bucket on which you configure replication and destination
1122      * bucket or buckets where Amazon S3 stores object replicas. When you request an
1123      * object (<code>GetObject</code>) or object metadata (<code>HeadObject</code>)
1124      * from these buckets, Amazon S3 will return the
1125      * <code>x-amz-replication-status</code> header in the response as follows:</p>
1126      * <ul> <li> <p>If requesting an object from the source bucket — Amazon S3 will
1127      * return the <code>x-amz-replication-status</code> header if the object in your
1128      * request is eligible for replication.</p> <p> For example, suppose that in your
1129      * replication configuration, you specify object prefix <code>TaxDocs</code>
1130      * requesting Amazon S3 to replicate objects with key prefix <code>TaxDocs</code>.
1131      * Any objects you upload with this key name prefix, for example
1132      * <code>TaxDocs/document1.pdf</code>, are eligible for replication. For any object
1133      * request with this key name prefix, Amazon S3 will return the
1134      * <code>x-amz-replication-status</code> header with value PENDING, COMPLETED or
1135      * FAILED indicating object replication status.</p> </li> <li> <p>If requesting an
1136      * object from a destination bucket — Amazon S3 will return the
1137      * <code>x-amz-replication-status</code> header with value REPLICA if the object in
1138      * your request is a replica that Amazon S3 created and there is no replica
1139      * modification replication in progress.</p> </li> <li> <p>When replicating objects
1140      * to multiple destination buckets the <code>x-amz-replication-status</code> header
1141      * acts differently. The header of the source object will only return a value of
1142      * COMPLETED when replication is successful to all destinations. The header will
1143      * remain at value PENDING until replication has completed for all destinations. If
1144      * one or more destinations fails replication the header will return FAILED. </p>
1145      * </li> </ul> <p>For more information, see <a
1146      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Replication</a>.</p>
1147      */
SetReplicationStatus(ReplicationStatus && value)1148     inline void SetReplicationStatus(ReplicationStatus&& value) { m_replicationStatus = std::move(value); }
1149 
1150     /**
1151      * <p>Amazon S3 can return this header if your request involves a bucket that is
1152      * either a source or a destination in a replication rule.</p> <p>In replication,
1153      * you have a source bucket on which you configure replication and destination
1154      * bucket or buckets where Amazon S3 stores object replicas. When you request an
1155      * object (<code>GetObject</code>) or object metadata (<code>HeadObject</code>)
1156      * from these buckets, Amazon S3 will return the
1157      * <code>x-amz-replication-status</code> header in the response as follows:</p>
1158      * <ul> <li> <p>If requesting an object from the source bucket — Amazon S3 will
1159      * return the <code>x-amz-replication-status</code> header if the object in your
1160      * request is eligible for replication.</p> <p> For example, suppose that in your
1161      * replication configuration, you specify object prefix <code>TaxDocs</code>
1162      * requesting Amazon S3 to replicate objects with key prefix <code>TaxDocs</code>.
1163      * Any objects you upload with this key name prefix, for example
1164      * <code>TaxDocs/document1.pdf</code>, are eligible for replication. For any object
1165      * request with this key name prefix, Amazon S3 will return the
1166      * <code>x-amz-replication-status</code> header with value PENDING, COMPLETED or
1167      * FAILED indicating object replication status.</p> </li> <li> <p>If requesting an
1168      * object from a destination bucket — Amazon S3 will return the
1169      * <code>x-amz-replication-status</code> header with value REPLICA if the object in
1170      * your request is a replica that Amazon S3 created and there is no replica
1171      * modification replication in progress.</p> </li> <li> <p>When replicating objects
1172      * to multiple destination buckets the <code>x-amz-replication-status</code> header
1173      * acts differently. The header of the source object will only return a value of
1174      * COMPLETED when replication is successful to all destinations. The header will
1175      * remain at value PENDING until replication has completed for all destinations. If
1176      * one or more destinations fails replication the header will return FAILED. </p>
1177      * </li> </ul> <p>For more information, see <a
1178      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Replication</a>.</p>
1179      */
WithReplicationStatus(const ReplicationStatus & value)1180     inline HeadObjectResult& WithReplicationStatus(const ReplicationStatus& value) { SetReplicationStatus(value); return *this;}
1181 
1182     /**
1183      * <p>Amazon S3 can return this header if your request involves a bucket that is
1184      * either a source or a destination in a replication rule.</p> <p>In replication,
1185      * you have a source bucket on which you configure replication and destination
1186      * bucket or buckets where Amazon S3 stores object replicas. When you request an
1187      * object (<code>GetObject</code>) or object metadata (<code>HeadObject</code>)
1188      * from these buckets, Amazon S3 will return the
1189      * <code>x-amz-replication-status</code> header in the response as follows:</p>
1190      * <ul> <li> <p>If requesting an object from the source bucket — Amazon S3 will
1191      * return the <code>x-amz-replication-status</code> header if the object in your
1192      * request is eligible for replication.</p> <p> For example, suppose that in your
1193      * replication configuration, you specify object prefix <code>TaxDocs</code>
1194      * requesting Amazon S3 to replicate objects with key prefix <code>TaxDocs</code>.
1195      * Any objects you upload with this key name prefix, for example
1196      * <code>TaxDocs/document1.pdf</code>, are eligible for replication. For any object
1197      * request with this key name prefix, Amazon S3 will return the
1198      * <code>x-amz-replication-status</code> header with value PENDING, COMPLETED or
1199      * FAILED indicating object replication status.</p> </li> <li> <p>If requesting an
1200      * object from a destination bucket — Amazon S3 will return the
1201      * <code>x-amz-replication-status</code> header with value REPLICA if the object in
1202      * your request is a replica that Amazon S3 created and there is no replica
1203      * modification replication in progress.</p> </li> <li> <p>When replicating objects
1204      * to multiple destination buckets the <code>x-amz-replication-status</code> header
1205      * acts differently. The header of the source object will only return a value of
1206      * COMPLETED when replication is successful to all destinations. The header will
1207      * remain at value PENDING until replication has completed for all destinations. If
1208      * one or more destinations fails replication the header will return FAILED. </p>
1209      * </li> </ul> <p>For more information, see <a
1210      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Replication</a>.</p>
1211      */
WithReplicationStatus(ReplicationStatus && value)1212     inline HeadObjectResult& WithReplicationStatus(ReplicationStatus&& value) { SetReplicationStatus(std::move(value)); return *this;}
1213 
1214 
1215     /**
1216      * <p>The count of parts this object has.</p>
1217      */
GetPartsCount()1218     inline int GetPartsCount() const{ return m_partsCount; }
1219 
1220     /**
1221      * <p>The count of parts this object has.</p>
1222      */
SetPartsCount(int value)1223     inline void SetPartsCount(int value) { m_partsCount = value; }
1224 
1225     /**
1226      * <p>The count of parts this object has.</p>
1227      */
WithPartsCount(int value)1228     inline HeadObjectResult& WithPartsCount(int value) { SetPartsCount(value); return *this;}
1229 
1230 
1231     /**
1232      * <p>The Object Lock mode, if any, that's in effect for this object. This header
1233      * is only returned if the requester has the <code>s3:GetObjectRetention</code>
1234      * permission. For more information about S3 Object Lock, see <a
1235      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object
1236      * Lock</a>. </p>
1237      */
GetObjectLockMode()1238     inline const ObjectLockMode& GetObjectLockMode() const{ return m_objectLockMode; }
1239 
1240     /**
1241      * <p>The Object Lock mode, if any, that's in effect for this object. This header
1242      * is only returned if the requester has the <code>s3:GetObjectRetention</code>
1243      * permission. For more information about S3 Object Lock, see <a
1244      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object
1245      * Lock</a>. </p>
1246      */
SetObjectLockMode(const ObjectLockMode & value)1247     inline void SetObjectLockMode(const ObjectLockMode& value) { m_objectLockMode = value; }
1248 
1249     /**
1250      * <p>The Object Lock mode, if any, that's in effect for this object. This header
1251      * is only returned if the requester has the <code>s3:GetObjectRetention</code>
1252      * permission. For more information about S3 Object Lock, see <a
1253      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object
1254      * Lock</a>. </p>
1255      */
SetObjectLockMode(ObjectLockMode && value)1256     inline void SetObjectLockMode(ObjectLockMode&& value) { m_objectLockMode = std::move(value); }
1257 
1258     /**
1259      * <p>The Object Lock mode, if any, that's in effect for this object. This header
1260      * is only returned if the requester has the <code>s3:GetObjectRetention</code>
1261      * permission. For more information about S3 Object Lock, see <a
1262      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object
1263      * Lock</a>. </p>
1264      */
WithObjectLockMode(const ObjectLockMode & value)1265     inline HeadObjectResult& WithObjectLockMode(const ObjectLockMode& value) { SetObjectLockMode(value); return *this;}
1266 
1267     /**
1268      * <p>The Object Lock mode, if any, that's in effect for this object. This header
1269      * is only returned if the requester has the <code>s3:GetObjectRetention</code>
1270      * permission. For more information about S3 Object Lock, see <a
1271      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object
1272      * Lock</a>. </p>
1273      */
WithObjectLockMode(ObjectLockMode && value)1274     inline HeadObjectResult& WithObjectLockMode(ObjectLockMode&& value) { SetObjectLockMode(std::move(value)); return *this;}
1275 
1276 
1277     /**
1278      * <p>The date and time when the Object Lock retention period expires. This header
1279      * is only returned if the requester has the <code>s3:GetObjectRetention</code>
1280      * permission.</p>
1281      */
GetObjectLockRetainUntilDate()1282     inline const Aws::Utils::DateTime& GetObjectLockRetainUntilDate() const{ return m_objectLockRetainUntilDate; }
1283 
1284     /**
1285      * <p>The date and time when the Object Lock retention period expires. This header
1286      * is only returned if the requester has the <code>s3:GetObjectRetention</code>
1287      * permission.</p>
1288      */
SetObjectLockRetainUntilDate(const Aws::Utils::DateTime & value)1289     inline void SetObjectLockRetainUntilDate(const Aws::Utils::DateTime& value) { m_objectLockRetainUntilDate = value; }
1290 
1291     /**
1292      * <p>The date and time when the Object Lock retention period expires. This header
1293      * is only returned if the requester has the <code>s3:GetObjectRetention</code>
1294      * permission.</p>
1295      */
SetObjectLockRetainUntilDate(Aws::Utils::DateTime && value)1296     inline void SetObjectLockRetainUntilDate(Aws::Utils::DateTime&& value) { m_objectLockRetainUntilDate = std::move(value); }
1297 
1298     /**
1299      * <p>The date and time when the Object Lock retention period expires. This header
1300      * is only returned if the requester has the <code>s3:GetObjectRetention</code>
1301      * permission.</p>
1302      */
WithObjectLockRetainUntilDate(const Aws::Utils::DateTime & value)1303     inline HeadObjectResult& WithObjectLockRetainUntilDate(const Aws::Utils::DateTime& value) { SetObjectLockRetainUntilDate(value); return *this;}
1304 
1305     /**
1306      * <p>The date and time when the Object Lock retention period expires. This header
1307      * is only returned if the requester has the <code>s3:GetObjectRetention</code>
1308      * permission.</p>
1309      */
WithObjectLockRetainUntilDate(Aws::Utils::DateTime && value)1310     inline HeadObjectResult& WithObjectLockRetainUntilDate(Aws::Utils::DateTime&& value) { SetObjectLockRetainUntilDate(std::move(value)); return *this;}
1311 
1312 
1313     /**
1314      * <p>Specifies whether a legal hold is in effect for this object. This header is
1315      * only returned if the requester has the <code>s3:GetObjectLegalHold</code>
1316      * permission. This header is not returned if the specified version of this object
1317      * has never had a legal hold applied. For more information about S3 Object Lock,
1318      * see <a
1319      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object
1320      * Lock</a>.</p>
1321      */
GetObjectLockLegalHoldStatus()1322     inline const ObjectLockLegalHoldStatus& GetObjectLockLegalHoldStatus() const{ return m_objectLockLegalHoldStatus; }
1323 
1324     /**
1325      * <p>Specifies whether a legal hold is in effect for this object. This header is
1326      * only returned if the requester has the <code>s3:GetObjectLegalHold</code>
1327      * permission. This header is not returned if the specified version of this object
1328      * has never had a legal hold applied. For more information about S3 Object Lock,
1329      * see <a
1330      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object
1331      * Lock</a>.</p>
1332      */
SetObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus & value)1333     inline void SetObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus& value) { m_objectLockLegalHoldStatus = value; }
1334 
1335     /**
1336      * <p>Specifies whether a legal hold is in effect for this object. This header is
1337      * only returned if the requester has the <code>s3:GetObjectLegalHold</code>
1338      * permission. This header is not returned if the specified version of this object
1339      * has never had a legal hold applied. For more information about S3 Object Lock,
1340      * see <a
1341      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object
1342      * Lock</a>.</p>
1343      */
SetObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus && value)1344     inline void SetObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus&& value) { m_objectLockLegalHoldStatus = std::move(value); }
1345 
1346     /**
1347      * <p>Specifies whether a legal hold is in effect for this object. This header is
1348      * only returned if the requester has the <code>s3:GetObjectLegalHold</code>
1349      * permission. This header is not returned if the specified version of this object
1350      * has never had a legal hold applied. For more information about S3 Object Lock,
1351      * see <a
1352      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object
1353      * Lock</a>.</p>
1354      */
WithObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus & value)1355     inline HeadObjectResult& WithObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus& value) { SetObjectLockLegalHoldStatus(value); return *this;}
1356 
1357     /**
1358      * <p>Specifies whether a legal hold is in effect for this object. This header is
1359      * only returned if the requester has the <code>s3:GetObjectLegalHold</code>
1360      * permission. This header is not returned if the specified version of this object
1361      * has never had a legal hold applied. For more information about S3 Object Lock,
1362      * see <a
1363      * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Object
1364      * Lock</a>.</p>
1365      */
WithObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus && value)1366     inline HeadObjectResult& WithObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus&& value) { SetObjectLockLegalHoldStatus(std::move(value)); return *this;}
1367 
1368   private:
1369 
1370     bool m_deleteMarker;
1371 
1372     Aws::String m_acceptRanges;
1373 
1374     Aws::String m_expiration;
1375 
1376     Aws::String m_restore;
1377 
1378     ArchiveStatus m_archiveStatus;
1379 
1380     Aws::Utils::DateTime m_lastModified;
1381 
1382     long long m_contentLength;
1383 
1384     Aws::String m_eTag;
1385 
1386     int m_missingMeta;
1387 
1388     Aws::String m_versionId;
1389 
1390     Aws::String m_cacheControl;
1391 
1392     Aws::String m_contentDisposition;
1393 
1394     Aws::String m_contentEncoding;
1395 
1396     Aws::String m_contentLanguage;
1397 
1398     Aws::String m_contentType;
1399 
1400     Aws::Utils::DateTime m_expires;
1401 
1402     Aws::String m_websiteRedirectLocation;
1403 
1404     ServerSideEncryption m_serverSideEncryption;
1405 
1406     Aws::Map<Aws::String, Aws::String> m_metadata;
1407 
1408     Aws::String m_sSECustomerAlgorithm;
1409 
1410     Aws::String m_sSECustomerKeyMD5;
1411 
1412     Aws::String m_sSEKMSKeyId;
1413 
1414     bool m_bucketKeyEnabled;
1415 
1416     StorageClass m_storageClass;
1417 
1418     RequestCharged m_requestCharged;
1419 
1420     ReplicationStatus m_replicationStatus;
1421 
1422     int m_partsCount;
1423 
1424     ObjectLockMode m_objectLockMode;
1425 
1426     Aws::Utils::DateTime m_objectLockRetainUntilDate;
1427 
1428     ObjectLockLegalHoldStatus m_objectLockLegalHoldStatus;
1429   };
1430 
1431 } // namespace Model
1432 } // namespace S3
1433 } // namespace Aws
1434