7#include <aws/core/http/HttpResponse.h>
8#include <aws/core/utils/DateTime.h>
9#include <aws/core/utils/memory/stl/AWSMap.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/s3-crt/S3Crt_EXPORTS.h>
12#include <aws/s3-crt/model/ArchiveStatus.h>
13#include <aws/s3-crt/model/ChecksumType.h>
14#include <aws/s3-crt/model/ObjectLockLegalHoldStatus.h>
15#include <aws/s3-crt/model/ObjectLockMode.h>
16#include <aws/s3-crt/model/ReplicationStatus.h>
17#include <aws/s3-crt/model/RequestCharged.h>
18#include <aws/s3-crt/model/ServerSideEncryption.h>
19#include <aws/s3-crt/model/StorageClass.h>
24template <
typename RESULT_TYPE>
25class AmazonWebServiceResult;
48 m_deleteMarkerHasBeenSet =
true;
49 m_deleteMarker = value;
62 template <
typename AcceptRangesT = Aws::String>
64 m_acceptRangesHasBeenSet =
true;
65 m_acceptRanges = std::forward<AcceptRangesT>(value);
67 template <
typename AcceptRangesT = Aws::String>
87 template <
typename ExpirationT = Aws::String>
89 m_expirationHasBeenSet =
true;
90 m_expiration = std::forward<ExpirationT>(value);
92 template <
typename ExpirationT = Aws::String>
120 template <
typename RestoreT = Aws::String>
122 m_restoreHasBeenSet =
true;
123 m_restore = std::forward<RestoreT>(value);
125 template <
typename RestoreT = Aws::String>
139 m_archiveStatusHasBeenSet =
true;
140 m_archiveStatus = value;
153 template <
typename LastModifiedT = Aws::Utils::DateTime>
155 m_lastModifiedHasBeenSet =
true;
156 m_lastModified = std::forward<LastModifiedT>(value);
158 template <
typename LastModifiedT = Aws::Utils::DateTime>
171 m_contentLengthHasBeenSet =
true;
172 m_contentLength = value;
192 template <
typename ChecksumCRC32T = Aws::String>
194 m_checksumCRC32HasBeenSet =
true;
195 m_checksumCRC32 = std::forward<ChecksumCRC32T>(value);
197 template <
typename ChecksumCRC32T = Aws::String>
216 template <
typename ChecksumCRC32CT = Aws::String>
218 m_checksumCRC32CHasBeenSet =
true;
219 m_checksumCRC32C = std::forward<ChecksumCRC32CT>(value);
221 template <
typename ChecksumCRC32CT = Aws::String>
236 template <
typename ChecksumCRC64NVMET = Aws::String>
238 m_checksumCRC64NVMEHasBeenSet =
true;
239 m_checksumCRC64NVME = std::forward<ChecksumCRC64NVMET>(value);
241 template <
typename ChecksumCRC64NVMET = Aws::String>
260 template <
typename ChecksumSHA1T = Aws::String>
262 m_checksumSHA1HasBeenSet =
true;
263 m_checksumSHA1 = std::forward<ChecksumSHA1T>(value);
265 template <
typename ChecksumSHA1T = Aws::String>
284 template <
typename ChecksumSHA256T = Aws::String>
286 m_checksumSHA256HasBeenSet =
true;
287 m_checksumSHA256 = std::forward<ChecksumSHA256T>(value);
289 template <
typename ChecksumSHA256T = Aws::String>
308 m_checksumTypeHasBeenSet =
true;
309 m_checksumType = value;
323 template <
typename ETagT = Aws::String>
325 m_eTagHasBeenSet =
true;
326 m_eTag = std::forward<ETagT>(value);
328 template <
typename ETagT = Aws::String>
330 SetETag(std::forward<ETagT>(value));
346 m_missingMetaHasBeenSet =
true;
347 m_missingMeta = value;
361 template <
typename VersionIdT = Aws::String>
363 m_versionIdHasBeenSet =
true;
364 m_versionId = std::forward<VersionIdT>(value);
366 template <
typename VersionIdT = Aws::String>
378 template <
typename CacheControlT = Aws::String>
380 m_cacheControlHasBeenSet =
true;
381 m_cacheControl = std::forward<CacheControlT>(value);
383 template <
typename CacheControlT = Aws::String>
395 template <
typename ContentDispositionT = Aws::String>
397 m_contentDispositionHasBeenSet =
true;
398 m_contentDisposition = std::forward<ContentDispositionT>(value);
400 template <
typename ContentDispositionT = Aws::String>
414 template <
typename ContentEncodingT = Aws::String>
416 m_contentEncodingHasBeenSet =
true;
417 m_contentEncoding = std::forward<ContentEncodingT>(value);
419 template <
typename ContentEncodingT = Aws::String>
431 template <
typename ContentLanguageT = Aws::String>
433 m_contentLanguageHasBeenSet =
true;
434 m_contentLanguage = std::forward<ContentLanguageT>(value);
436 template <
typename ContentLanguageT = Aws::String>
448 template <
typename ContentTypeT = Aws::String>
450 m_contentTypeHasBeenSet =
true;
451 m_contentType = std::forward<ContentTypeT>(value);
453 template <
typename ContentTypeT = Aws::String>
466 template <
typename ContentRangeT = Aws::String>
468 m_contentRangeHasBeenSet =
true;
469 m_contentRange = std::forward<ContentRangeT>(value);
471 template <
typename ContentRangeT = Aws::String>
483 template <
typename ExpiresT = Aws::Utils::DateTime>
485 m_expiresHasBeenSet =
true;
486 m_expires = std::forward<ExpiresT>(value);
488 template <
typename ExpiresT = Aws::Utils::DateTime>
503 template <
typename WebsiteRedirectLocationT = Aws::String>
505 m_websiteRedirectLocationHasBeenSet =
true;
506 m_websiteRedirectLocation = std::forward<WebsiteRedirectLocationT>(value);
508 template <
typename WebsiteRedirectLocationT = Aws::String>
524 m_serverSideEncryptionHasBeenSet =
true;
525 m_serverSideEncryption = value;
538 template <
typename MetadataT = Aws::Map<Aws::String, Aws::String>>
540 m_metadataHasBeenSet =
true;
541 m_metadata = std::forward<MetadataT>(value);
543 template <
typename MetadataT = Aws::Map<Aws::String, Aws::String>>
548 template <
typename MetadataKeyT = Aws::String,
typename MetadataValueT = Aws::String>
550 m_metadataHasBeenSet =
true;
551 m_metadata.emplace(std::forward<MetadataKeyT>(key), std::forward<MetadataValueT>(value));
564 template <
typename SSECustomerAlgorithmT = Aws::String>
566 m_sSECustomerAlgorithmHasBeenSet =
true;
567 m_sSECustomerAlgorithm = std::forward<SSECustomerAlgorithmT>(value);
569 template <
typename SSECustomerAlgorithmT = Aws::String>
584 template <
typename SSECustomerKeyMD5T = Aws::String>
586 m_sSECustomerKeyMD5HasBeenSet =
true;
587 m_sSECustomerKeyMD5 = std::forward<SSECustomerKeyMD5T>(value);
589 template <
typename SSECustomerKeyMD5T = Aws::String>
602 template <
typename SSEKMSKeyIdT = Aws::String>
604 m_sSEKMSKeyIdHasBeenSet =
true;
605 m_sSEKMSKeyId = std::forward<SSEKMSKeyIdT>(value);
607 template <
typename SSEKMSKeyIdT = Aws::String>
621 m_bucketKeyEnabledHasBeenSet =
true;
622 m_bucketKeyEnabled = value;
643 m_storageClassHasBeenSet =
true;
644 m_storageClass = value;
656 m_requestChargedHasBeenSet =
true;
657 m_requestCharged = value;
700 m_replicationStatusHasBeenSet =
true;
701 m_replicationStatus = value;
717 m_partsCountHasBeenSet =
true;
718 m_partsCount = value;
736 m_tagCountHasBeenSet =
true;
756 m_objectLockModeHasBeenSet =
true;
757 m_objectLockMode = value;
773 template <
typename ObjectLockRetainUntilDateT = Aws::Utils::DateTime>
775 m_objectLockRetainUntilDateHasBeenSet =
true;
776 m_objectLockRetainUntilDate = std::forward<ObjectLockRetainUntilDateT>(value);
778 template <
typename ObjectLockRetainUntilDateT = Aws::Utils::DateTime>
798 m_objectLockLegalHoldStatusHasBeenSet =
true;
799 m_objectLockLegalHoldStatus = value;
812 template <
typename ExpiresStringT = Aws::String>
814 m_expiresStringHasBeenSet =
true;
815 m_expiresString = std::forward<ExpiresStringT>(value);
817 template <
typename ExpiresStringT = Aws::String>
827 template <
typename RequestIdT = Aws::String>
829 m_requestIdHasBeenSet =
true;
830 m_requestId = std::forward<RequestIdT>(value);
832 template <
typename RequestIdT = Aws::String>
841 bool m_deleteMarker{
false};
853 long long m_contentLength{0};
869 int m_missingMeta{0};
899 bool m_bucketKeyEnabled{
false};
921 bool m_deleteMarkerHasBeenSet =
false;
922 bool m_acceptRangesHasBeenSet =
false;
923 bool m_expirationHasBeenSet =
false;
924 bool m_restoreHasBeenSet =
false;
925 bool m_archiveStatusHasBeenSet =
false;
926 bool m_lastModifiedHasBeenSet =
false;
927 bool m_contentLengthHasBeenSet =
false;
928 bool m_checksumCRC32HasBeenSet =
false;
929 bool m_checksumCRC32CHasBeenSet =
false;
930 bool m_checksumCRC64NVMEHasBeenSet =
false;
931 bool m_checksumSHA1HasBeenSet =
false;
932 bool m_checksumSHA256HasBeenSet =
false;
933 bool m_checksumTypeHasBeenSet =
false;
934 bool m_eTagHasBeenSet =
false;
935 bool m_missingMetaHasBeenSet =
false;
936 bool m_versionIdHasBeenSet =
false;
937 bool m_cacheControlHasBeenSet =
false;
938 bool m_contentDispositionHasBeenSet =
false;
939 bool m_contentEncodingHasBeenSet =
false;
940 bool m_contentLanguageHasBeenSet =
false;
941 bool m_contentTypeHasBeenSet =
false;
942 bool m_contentRangeHasBeenSet =
false;
943 bool m_expiresHasBeenSet =
false;
944 bool m_websiteRedirectLocationHasBeenSet =
false;
945 bool m_serverSideEncryptionHasBeenSet =
false;
946 bool m_metadataHasBeenSet =
false;
947 bool m_sSECustomerAlgorithmHasBeenSet =
false;
948 bool m_sSECustomerKeyMD5HasBeenSet =
false;
949 bool m_sSEKMSKeyIdHasBeenSet =
false;
950 bool m_bucketKeyEnabledHasBeenSet =
false;
951 bool m_storageClassHasBeenSet =
false;
952 bool m_requestChargedHasBeenSet =
false;
953 bool m_replicationStatusHasBeenSet =
false;
954 bool m_partsCountHasBeenSet =
false;
955 bool m_tagCountHasBeenSet =
false;
956 bool m_objectLockModeHasBeenSet =
false;
957 bool m_objectLockRetainUntilDateHasBeenSet =
false;
958 bool m_objectLockLegalHoldStatusHasBeenSet =
false;
959 bool m_expiresStringHasBeenSet =
false;
960 bool m_requestIdHasBeenSet =
false;
HeadObjectResult & WithBucketKeyEnabled(bool value)
void SetContentLanguage(ContentLanguageT &&value)
void SetChecksumCRC32C(ChecksumCRC32CT &&value)
HeadObjectResult & WithSSEKMSKeyId(SSEKMSKeyIdT &&value)
HeadObjectResult & WithSSECustomerKeyMD5(SSECustomerKeyMD5T &&value)
const Aws::String & GetContentLanguage() const
const Aws::String & GetChecksumCRC64NVME() const
void SetObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus value)
const Aws::String & GetContentDisposition() const
void SetChecksumCRC64NVME(ChecksumCRC64NVMET &&value)
HeadObjectResult & WithObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus value)
AWS_S3CRT_API HeadObjectResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
void SetArchiveStatus(ArchiveStatus value)
void SetContentDisposition(ContentDispositionT &&value)
HeadObjectResult & WithServerSideEncryption(ServerSideEncryption value)
const Aws::String & GetChecksumSHA256() const
ReplicationStatus GetReplicationStatus() const
const Aws::Utils::DateTime & GetObjectLockRetainUntilDate() const
HeadObjectResult & WithAcceptRanges(AcceptRangesT &&value)
const Aws::String & GetSSEKMSKeyId() const
HeadObjectResult & AddMetadata(MetadataKeyT &&key, MetadataValueT &&value)
const Aws::String & GetExpiration() const
HeadObjectResult & WithChecksumSHA1(ChecksumSHA1T &&value)
HeadObjectResult & WithExpiration(ExpirationT &&value)
HeadObjectResult & WithStorageClass(StorageClass value)
const Aws::String & GetAcceptRanges() const
HeadObjectResult & WithLastModified(LastModifiedT &&value)
void SetAcceptRanges(AcceptRangesT &&value)
HeadObjectResult & WithChecksumCRC32(ChecksumCRC32T &&value)
void SetStorageClass(StorageClass value)
HeadObjectResult & WithChecksumCRC32C(ChecksumCRC32CT &&value)
long long GetContentLength() const
bool GetBucketKeyEnabled() const
const Aws::Utils::DateTime & GetExpires() const
HeadObjectResult & WithContentLength(long long value)
void SetExpiration(ExpirationT &&value)
void SetRequestCharged(RequestCharged value)
void SetChecksumType(ChecksumType value)
void SetSSECustomerAlgorithm(SSECustomerAlgorithmT &&value)
void SetChecksumCRC32(ChecksumCRC32T &&value)
const Aws::String & GetContentEncoding() const
HeadObjectResult & WithMissingMeta(int value)
RequestCharged GetRequestCharged() const
void SetMetadata(MetadataT &&value)
HeadObjectResult & WithVersionId(VersionIdT &&value)
void SetContentRange(ContentRangeT &&value)
HeadObjectResult & WithRequestCharged(RequestCharged value)
void SetExpires(ExpiresT &&value)
void SetContentType(ContentTypeT &&value)
void SetContentEncoding(ContentEncodingT &&value)
HeadObjectResult & WithReplicationStatus(ReplicationStatus value)
HeadObjectResult & WithDeleteMarker(bool value)
void SetBucketKeyEnabled(bool value)
bool GetDeleteMarker() const
void SetSSEKMSKeyId(SSEKMSKeyIdT &&value)
const Aws::String & GetRequestId() const
HeadObjectResult & WithExpires(ExpiresT &&value)
HeadObjectResult & WithArchiveStatus(ArchiveStatus value)
void SetRestore(RestoreT &&value)
const Aws::String & GetChecksumCRC32() const
void SetLastModified(LastModifiedT &&value)
HeadObjectResult & WithContentLanguage(ContentLanguageT &&value)
void SetReplicationStatus(ReplicationStatus value)
HeadObjectResult & WithObjectLockMode(ObjectLockMode value)
void SetETag(ETagT &&value)
HeadObjectResult & WithWebsiteRedirectLocation(WebsiteRedirectLocationT &&value)
HeadObjectResult & WithRequestId(RequestIdT &&value)
void SetCacheControl(CacheControlT &&value)
const Aws::String & GetSSECustomerKeyMD5() const
HeadObjectResult & WithChecksumSHA256(ChecksumSHA256T &&value)
Aws::Http::HttpResponseCode GetHttpResponseCode() const
void SetWebsiteRedirectLocation(WebsiteRedirectLocationT &&value)
HeadObjectResult & WithExpiresString(ExpiresStringT &&value)
ServerSideEncryption GetServerSideEncryption() const
HeadObjectResult & WithChecksumType(ChecksumType value)
HeadObjectResult & WithContentRange(ContentRangeT &&value)
const Aws::Map< Aws::String, Aws::String > & GetMetadata() const
void SetMissingMeta(int value)
HeadObjectResult & WithCacheControl(CacheControlT &&value)
HeadObjectResult & WithSSECustomerAlgorithm(SSECustomerAlgorithmT &&value)
const Aws::String & GetContentRange() const
HeadObjectResult & WithPartsCount(int value)
void SetVersionId(VersionIdT &&value)
const Aws::String & GetChecksumSHA1() const
const Aws::String & GetExpiresString() const
HeadObjectResult & WithTagCount(int value)
ChecksumType GetChecksumType() const
ObjectLockMode GetObjectLockMode() const
const Aws::String & GetCacheControl() const
AWS_S3CRT_API HeadObjectResult(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
void SetChecksumSHA256(ChecksumSHA256T &&value)
AWS_S3CRT_API HeadObjectResult()=default
HeadObjectResult & WithChecksumCRC64NVME(ChecksumCRC64NVMET &&value)
StorageClass GetStorageClass() const
HeadObjectResult & WithMetadata(MetadataT &&value)
const Aws::String & GetSSECustomerAlgorithm() const
const Aws::String & GetETag() const
void SetObjectLockRetainUntilDate(ObjectLockRetainUntilDateT &&value)
const Aws::Utils::DateTime & GetLastModified() const
ArchiveStatus GetArchiveStatus() const
void SetChecksumSHA1(ChecksumSHA1T &&value)
void SetPartsCount(int value)
const Aws::String & GetRestore() const
HeadObjectResult & WithContentType(ContentTypeT &&value)
HeadObjectResult & WithETag(ETagT &&value)
void SetRequestId(RequestIdT &&value)
void SetSSECustomerKeyMD5(SSECustomerKeyMD5T &&value)
HeadObjectResult & WithObjectLockRetainUntilDate(ObjectLockRetainUntilDateT &&value)
HeadObjectResult & WithContentDisposition(ContentDispositionT &&value)
const Aws::String & GetWebsiteRedirectLocation() const
const Aws::String & GetContentType() const
const Aws::String & GetChecksumCRC32C() const
void SetTagCount(int value)
void SetServerSideEncryption(ServerSideEncryption value)
const Aws::String & GetVersionId() const
void SetExpiresString(ExpiresStringT &&value)
int GetMissingMeta() const
int GetPartsCount() const
ObjectLockLegalHoldStatus GetObjectLockLegalHoldStatus() const
HeadObjectResult & WithContentEncoding(ContentEncodingT &&value)
void SetContentLength(long long value)
void SetDeleteMarker(bool value)
void SetObjectLockMode(ObjectLockMode value)
HeadObjectResult & WithRestore(RestoreT &&value)
ObjectLockLegalHoldStatus
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Xml::XmlDocument XmlDocument