7#include <aws/macie2/Macie2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/macie2/model/ServerSideEncryption.h>
11#include <aws/macie2/model/StorageClass.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/macie2/model/KeyValuePair.h>
52 template<
typename BucketArnT = Aws::String>
53 void SetBucketArn(BucketArnT&& value) { m_bucketArnHasBeenSet =
true; m_bucketArn = std::forward<BucketArnT>(value); }
54 template<
typename BucketArnT = Aws::String>
66 template<
typename ETagT = Aws::String>
67 void SetETag(ETagT&& value) { m_eTagHasBeenSet =
true; m_eTag = std::forward<ETagT>(value); }
68 template<
typename ETagT = Aws::String>
79 template<
typename ExtensionT = Aws::String>
80 void SetExtension(ExtensionT&& value) { m_extensionHasBeenSet =
true; m_extension = std::forward<ExtensionT>(value); }
81 template<
typename ExtensionT = Aws::String>
92 template<
typename KeyT = Aws::String>
93 void SetKey(KeyT&& value) { m_keyHasBeenSet =
true; m_key = std::forward<KeyT>(value); }
94 template<
typename KeyT = Aws::String>
105 template<
typename LastModifiedT = Aws::Utils::DateTime>
106 void SetLastModified(LastModifiedT&& value) { m_lastModifiedHasBeenSet =
true; m_lastModified = std::forward<LastModifiedT>(value); }
107 template<
typename LastModifiedT = Aws::Utils::DateTime>
118 template<
typename PathT = Aws::String>
119 void SetPath(PathT&& value) { m_pathHasBeenSet =
true; m_path = std::forward<PathT>(value); }
120 template<
typename PathT = Aws::String>
131 inline void SetPublicAccess(
bool value) { m_publicAccessHasBeenSet =
true; m_publicAccess = value; }
141 template<
typename ServerS
ideEncryptionT = ServerS
ideEncryption>
142 void SetServerSideEncryption(ServerSideEncryptionT&& value) { m_serverSideEncryptionHasBeenSet =
true; m_serverSideEncryption = std::forward<ServerSideEncryptionT>(value); }
143 template<
typename ServerS
ideEncryptionT = ServerS
ideEncryption>
151 inline long long GetSize()
const {
return m_size; }
153 inline void SetSize(
long long value) { m_sizeHasBeenSet =
true; m_size = value; }
173 template<
typename TagsT = Aws::Vector<KeyValuePair>>
174 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
175 template<
typename TagsT = Aws::Vector<KeyValuePair>>
177 template<
typename TagsT = KeyValuePair>
178 S3Object&
AddTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags.emplace_back(std::forward<TagsT>(value));
return *
this; }
187 template<
typename VersionIdT = Aws::String>
188 void SetVersionId(VersionIdT&& value) { m_versionIdHasBeenSet =
true; m_versionId = std::forward<VersionIdT>(value); }
189 template<
typename VersionIdT = Aws::String>
195 bool m_bucketArnHasBeenSet =
false;
198 bool m_eTagHasBeenSet =
false;
201 bool m_extensionHasBeenSet =
false;
204 bool m_keyHasBeenSet =
false;
207 bool m_lastModifiedHasBeenSet =
false;
210 bool m_pathHasBeenSet =
false;
212 bool m_publicAccess{
false};
213 bool m_publicAccessHasBeenSet =
false;
215 ServerSideEncryption m_serverSideEncryption;
216 bool m_serverSideEncryptionHasBeenSet =
false;
219 bool m_sizeHasBeenSet =
false;
222 bool m_storageClassHasBeenSet =
false;
225 bool m_tagsHasBeenSet =
false;
228 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