7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/macie2/Macie2_EXPORTS.h>
11#include <aws/macie2/model/KeyValuePair.h>
12#include <aws/macie2/model/ServerSideEncryption.h>
13#include <aws/macie2/model/StorageClass.h>
46 template <
typename BucketArnT = Aws::String>
48 m_bucketArnHasBeenSet =
true;
49 m_bucketArn = std::forward<BucketArnT>(value);
51 template <
typename BucketArnT = Aws::String>
66 template <
typename ETagT = Aws::String>
68 m_eTagHasBeenSet =
true;
69 m_eTag = std::forward<ETagT>(value);
71 template <
typename ETagT = Aws::String>
73 SetETag(std::forward<ETagT>(value));
85 template <
typename ExtensionT = Aws::String>
87 m_extensionHasBeenSet =
true;
88 m_extension = std::forward<ExtensionT>(value);
90 template <
typename ExtensionT = Aws::String>
104 template <
typename KeyT = Aws::String>
106 m_keyHasBeenSet =
true;
107 m_key = std::forward<KeyT>(value);
109 template <
typename KeyT = Aws::String>
111 SetKey(std::forward<KeyT>(value));
123 template <
typename LastModifiedT = Aws::Utils::DateTime>
125 m_lastModifiedHasBeenSet =
true;
126 m_lastModified = std::forward<LastModifiedT>(value);
128 template <
typename LastModifiedT = Aws::Utils::DateTime>
142 template <
typename PathT = Aws::String>
144 m_pathHasBeenSet =
true;
145 m_path = std::forward<PathT>(value);
147 template <
typename PathT = Aws::String>
149 SetPath(std::forward<PathT>(value));
162 m_publicAccessHasBeenSet =
true;
163 m_publicAccess = value;
177 template <
typename ServerS
ideEncryptionT = ServerS
ideEncryption>
179 m_serverSideEncryptionHasBeenSet =
true;
180 m_serverSideEncryption = std::forward<ServerSideEncryptionT>(value);
182 template <
typename ServerS
ideEncryptionT = ServerS
ideEncryption>
193 inline long long GetSize()
const {
return m_size; }
196 m_sizeHasBeenSet =
true;
212 m_storageClassHasBeenSet =
true;
213 m_storageClass = value;
227 template <
typename TagsT = Aws::Vector<KeyValuePair>>
229 m_tagsHasBeenSet =
true;
230 m_tags = std::forward<TagsT>(value);
232 template <
typename TagsT = Aws::Vector<KeyValuePair>>
234 SetTags(std::forward<TagsT>(value));
237 template <
typename TagsT = KeyValuePair>
239 m_tagsHasBeenSet =
true;
240 m_tags.emplace_back(std::forward<TagsT>(value));
251 template <
typename VersionIdT = Aws::String>
253 m_versionIdHasBeenSet =
true;
254 m_versionId = std::forward<VersionIdT>(value);
256 template <
typename VersionIdT = Aws::String>
275 bool m_publicAccess{
false};
277 ServerSideEncryption m_serverSideEncryption;
286 bool m_bucketArnHasBeenSet =
false;
287 bool m_eTagHasBeenSet =
false;
288 bool m_extensionHasBeenSet =
false;
289 bool m_keyHasBeenSet =
false;
290 bool m_lastModifiedHasBeenSet =
false;
291 bool m_pathHasBeenSet =
false;
292 bool m_publicAccessHasBeenSet =
false;
293 bool m_serverSideEncryptionHasBeenSet =
false;
294 bool m_sizeHasBeenSet =
false;
295 bool m_storageClassHasBeenSet =
false;
296 bool m_tagsHasBeenSet =
false;
297 bool m_versionIdHasBeenSet =
false;
bool PublicAccessHasBeenSet() const
const Aws::String & GetPath() const
bool ServerSideEncryptionHasBeenSet() const
void SetLastModified(LastModifiedT &&value)
S3Object & WithBucketArn(BucketArnT &&value)
void SetKey(KeyT &&value)
bool GetPublicAccess() const
void SetExtension(ExtensionT &&value)
const Aws::Vector< KeyValuePair > & GetTags() const
S3Object & WithETag(ETagT &&value)
bool KeyHasBeenSet() const
const ServerSideEncryption & GetServerSideEncryption() const
S3Object & WithPath(PathT &&value)
void SetServerSideEncryption(ServerSideEncryptionT &&value)
void SetTags(TagsT &&value)
S3Object & AddTags(TagsT &&value)
S3Object & WithExtension(ExtensionT &&value)
void SetStorageClass(StorageClass value)
bool VersionIdHasBeenSet() const
AWS_MACIE2_API S3Object & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetLastModified() const
S3Object & WithLastModified(LastModifiedT &&value)
AWS_MACIE2_API S3Object(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetExtension() const
S3Object & WithKey(KeyT &&value)
S3Object & WithPublicAccess(bool value)
S3Object & WithVersionId(VersionIdT &&value)
const Aws::String & GetVersionId() const
bool ETagHasBeenSet() const
void SetETag(ETagT &&value)
bool TagsHasBeenSet() const
bool BucketArnHasBeenSet() const
AWS_MACIE2_API Aws::Utils::Json::JsonValue Jsonize() const
long long GetSize() const
const Aws::String & GetBucketArn() const
void SetBucketArn(BucketArnT &&value)
void SetPublicAccess(bool value)
bool LastModifiedHasBeenSet() const
S3Object & WithTags(TagsT &&value)
AWS_MACIE2_API S3Object()=default
void SetPath(PathT &&value)
bool PathHasBeenSet() const
const Aws::String & GetETag() const
void SetSize(long long value)
bool ExtensionHasBeenSet() const
S3Object & WithSize(long long value)
bool StorageClassHasBeenSet() const
S3Object & WithServerSideEncryption(ServerSideEncryptionT &&value)
StorageClass GetStorageClass() const
void SetVersionId(VersionIdT &&value)
const Aws::String & GetKey() const
bool SizeHasBeenSet() const
S3Object & WithStorageClass(StorageClass value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue