7#include <aws/securityhub/SecurityHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/securityhub/model/AwsS3BucketServerSideEncryptionConfiguration.h>
10#include <aws/securityhub/model/AwsS3BucketBucketLifecycleConfigurationDetails.h>
11#include <aws/securityhub/model/AwsS3AccountPublicAccessBlockDetails.h>
12#include <aws/securityhub/model/AwsS3BucketLoggingConfiguration.h>
13#include <aws/securityhub/model/AwsS3BucketWebsiteConfiguration.h>
14#include <aws/securityhub/model/AwsS3BucketNotificationConfiguration.h>
15#include <aws/securityhub/model/AwsS3BucketBucketVersioningConfiguration.h>
16#include <aws/securityhub/model/AwsS3BucketObjectLockConfiguration.h>
55 template<
typename OwnerIdT = Aws::String>
56 void SetOwnerId(OwnerIdT&& value) { m_ownerIdHasBeenSet =
true; m_ownerId = std::forward<OwnerIdT>(value); }
57 template<
typename OwnerIdT = Aws::String>
67 template<
typename OwnerNameT = Aws::String>
68 void SetOwnerName(OwnerNameT&& value) { m_ownerNameHasBeenSet =
true; m_ownerName = std::forward<OwnerNameT>(value); }
69 template<
typename OwnerNameT = Aws::String>
80 template<
typename OwnerAccountIdT = Aws::String>
81 void SetOwnerAccountId(OwnerAccountIdT&& value) { m_ownerAccountIdHasBeenSet =
true; m_ownerAccountId = std::forward<OwnerAccountIdT>(value); }
82 template<
typename OwnerAccountIdT = Aws::String>
94 template<
typename CreatedAtT = Aws::String>
95 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet =
true; m_createdAt = std::forward<CreatedAtT>(value); }
96 template<
typename CreatedAtT = Aws::String>
106 template<
typename ServerS
ideEncryptionConfigurationT = AwsS3BucketServerS
ideEncryptionConfiguration>
107 void SetServerSideEncryptionConfiguration(ServerSideEncryptionConfigurationT&& value) { m_serverSideEncryptionConfigurationHasBeenSet =
true; m_serverSideEncryptionConfiguration = std::forward<ServerSideEncryptionConfigurationT>(value); }
108 template<
typename ServerS
ideEncryptionConfigurationT = AwsS3BucketServerS
ideEncryptionConfiguration>
118 template<
typename BucketLifecycleConfigurationT = AwsS3BucketBucketLifecycleConfigurationDetails>
119 void SetBucketLifecycleConfiguration(BucketLifecycleConfigurationT&& value) { m_bucketLifecycleConfigurationHasBeenSet =
true; m_bucketLifecycleConfiguration = std::forward<BucketLifecycleConfigurationT>(value); }
120 template<
typename BucketLifecycleConfigurationT = AwsS3BucketBucketLifecycleConfigurationDetails>
131 template<
typename PublicAccessBlockConfigurationT = AwsS3AccountPublicAccessBlockDetails>
132 void SetPublicAccessBlockConfiguration(PublicAccessBlockConfigurationT&& value) { m_publicAccessBlockConfigurationHasBeenSet =
true; m_publicAccessBlockConfiguration = std::forward<PublicAccessBlockConfigurationT>(value); }
133 template<
typename PublicAccessBlockConfigurationT = AwsS3AccountPublicAccessBlockDetails>
143 template<
typename AccessControlListT = Aws::String>
144 void SetAccessControlList(AccessControlListT&& value) { m_accessControlListHasBeenSet =
true; m_accessControlList = std::forward<AccessControlListT>(value); }
145 template<
typename AccessControlListT = Aws::String>
155 template<
typename BucketLoggingConfigurationT = AwsS3BucketLoggingConfiguration>
156 void SetBucketLoggingConfiguration(BucketLoggingConfigurationT&& value) { m_bucketLoggingConfigurationHasBeenSet =
true; m_bucketLoggingConfiguration = std::forward<BucketLoggingConfigurationT>(value); }
157 template<
typename BucketLoggingConfigurationT = AwsS3BucketLoggingConfiguration>
167 template<
typename BucketWebsiteConfigurationT = AwsS3BucketWebsiteConfiguration>
168 void SetBucketWebsiteConfiguration(BucketWebsiteConfigurationT&& value) { m_bucketWebsiteConfigurationHasBeenSet =
true; m_bucketWebsiteConfiguration = std::forward<BucketWebsiteConfigurationT>(value); }
169 template<
typename BucketWebsiteConfigurationT = AwsS3BucketWebsiteConfiguration>
179 template<
typename BucketNotificationConfigurationT = AwsS3BucketNotificationConfiguration>
180 void SetBucketNotificationConfiguration(BucketNotificationConfigurationT&& value) { m_bucketNotificationConfigurationHasBeenSet =
true; m_bucketNotificationConfiguration = std::forward<BucketNotificationConfigurationT>(value); }
181 template<
typename BucketNotificationConfigurationT = AwsS3BucketNotificationConfiguration>
191 template<
typename BucketVersioningConfigurationT = AwsS3BucketBucketVersioningConfiguration>
192 void SetBucketVersioningConfiguration(BucketVersioningConfigurationT&& value) { m_bucketVersioningConfigurationHasBeenSet =
true; m_bucketVersioningConfiguration = std::forward<BucketVersioningConfigurationT>(value); }
193 template<
typename BucketVersioningConfigurationT = AwsS3BucketBucketVersioningConfiguration>
204 template<
typename ObjectLockConfigurationT = AwsS3BucketObjectLockConfiguration>
205 void SetObjectLockConfiguration(ObjectLockConfigurationT&& value) { m_objectLockConfigurationHasBeenSet =
true; m_objectLockConfiguration = std::forward<ObjectLockConfigurationT>(value); }
206 template<
typename ObjectLockConfigurationT = AwsS3BucketObjectLockConfiguration>
216 template<
typename NameT = Aws::String>
217 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
218 template<
typename NameT = Aws::String>
224 bool m_ownerIdHasBeenSet =
false;
227 bool m_ownerNameHasBeenSet =
false;
230 bool m_ownerAccountIdHasBeenSet =
false;
233 bool m_createdAtHasBeenSet =
false;
236 bool m_serverSideEncryptionConfigurationHasBeenSet =
false;
239 bool m_bucketLifecycleConfigurationHasBeenSet =
false;
242 bool m_publicAccessBlockConfigurationHasBeenSet =
false;
245 bool m_accessControlListHasBeenSet =
false;
248 bool m_bucketLoggingConfigurationHasBeenSet =
false;
251 bool m_bucketWebsiteConfigurationHasBeenSet =
false;
254 bool m_bucketNotificationConfigurationHasBeenSet =
false;
257 bool m_bucketVersioningConfigurationHasBeenSet =
false;
260 bool m_objectLockConfigurationHasBeenSet =
false;
263 bool m_nameHasBeenSet =
false;
const AwsS3BucketLoggingConfiguration & GetBucketLoggingConfiguration() const
bool PublicAccessBlockConfigurationHasBeenSet() const
AwsS3BucketDetails & WithBucketWebsiteConfiguration(BucketWebsiteConfigurationT &&value)
AwsS3BucketDetails & WithOwnerId(OwnerIdT &&value)
AwsS3BucketDetails & WithPublicAccessBlockConfiguration(PublicAccessBlockConfigurationT &&value)
void SetAccessControlList(AccessControlListT &&value)
const AwsS3BucketServerSideEncryptionConfiguration & GetServerSideEncryptionConfiguration() const
AWS_SECURITYHUB_API AwsS3BucketDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
bool AccessControlListHasBeenSet() const
bool ServerSideEncryptionConfigurationHasBeenSet() const
void SetName(NameT &&value)
AwsS3BucketDetails & WithBucketLoggingConfiguration(BucketLoggingConfigurationT &&value)
bool BucketWebsiteConfigurationHasBeenSet() const
AwsS3BucketDetails & WithObjectLockConfiguration(ObjectLockConfigurationT &&value)
AwsS3BucketDetails & WithServerSideEncryptionConfiguration(ServerSideEncryptionConfigurationT &&value)
const Aws::String & GetOwnerName() const
AWS_SECURITYHUB_API AwsS3BucketDetails(Aws::Utils::Json::JsonView jsonValue)
AwsS3BucketDetails & WithOwnerAccountId(OwnerAccountIdT &&value)
bool OwnerNameHasBeenSet() const
const AwsS3BucketBucketVersioningConfiguration & GetBucketVersioningConfiguration() const
bool BucketLoggingConfigurationHasBeenSet() const
const AwsS3BucketWebsiteConfiguration & GetBucketWebsiteConfiguration() const
void SetBucketWebsiteConfiguration(BucketWebsiteConfigurationT &&value)
AwsS3BucketDetails & WithName(NameT &&value)
void SetOwnerAccountId(OwnerAccountIdT &&value)
AwsS3BucketDetails & WithCreatedAt(CreatedAtT &&value)
const AwsS3BucketObjectLockConfiguration & GetObjectLockConfiguration() const
AwsS3BucketDetails & WithBucketLifecycleConfiguration(BucketLifecycleConfigurationT &&value)
void SetBucketLifecycleConfiguration(BucketLifecycleConfigurationT &&value)
const AwsS3BucketNotificationConfiguration & GetBucketNotificationConfiguration() const
const Aws::String & GetName() const
bool BucketLifecycleConfigurationHasBeenSet() const
bool BucketVersioningConfigurationHasBeenSet() const
bool OwnerIdHasBeenSet() const
void SetBucketLoggingConfiguration(BucketLoggingConfigurationT &&value)
bool NameHasBeenSet() const
bool OwnerAccountIdHasBeenSet() const
void SetOwnerId(OwnerIdT &&value)
const Aws::String & GetCreatedAt() const
const AwsS3AccountPublicAccessBlockDetails & GetPublicAccessBlockConfiguration() const
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
void SetCreatedAt(CreatedAtT &&value)
AwsS3BucketDetails & WithBucketVersioningConfiguration(BucketVersioningConfigurationT &&value)
const Aws::String & GetAccessControlList() const
AwsS3BucketDetails & WithBucketNotificationConfiguration(BucketNotificationConfigurationT &&value)
void SetObjectLockConfiguration(ObjectLockConfigurationT &&value)
void SetBucketNotificationConfiguration(BucketNotificationConfigurationT &&value)
const Aws::String & GetOwnerAccountId() const
void SetOwnerName(OwnerNameT &&value)
const AwsS3BucketBucketLifecycleConfigurationDetails & GetBucketLifecycleConfiguration() const
bool ObjectLockConfigurationHasBeenSet() const
void SetServerSideEncryptionConfiguration(ServerSideEncryptionConfigurationT &&value)
AWS_SECURITYHUB_API AwsS3BucketDetails()=default
void SetPublicAccessBlockConfiguration(PublicAccessBlockConfigurationT &&value)
void SetBucketVersioningConfiguration(BucketVersioningConfigurationT &&value)
bool BucketNotificationConfigurationHasBeenSet() const
bool CreatedAtHasBeenSet() const
AwsS3BucketDetails & WithOwnerName(OwnerNameT &&value)
AwsS3BucketDetails & WithAccessControlList(AccessControlListT &&value)
const Aws::String & GetOwnerId() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue