AWS SDK for C++

AWS SDK for C++ Version 1.11.718

Loading...
Searching...
No Matches
AwsS3BucketDetails.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/securityhub/SecurityHub_EXPORTS.h>
9#include <aws/securityhub/model/AwsS3AccountPublicAccessBlockDetails.h>
10#include <aws/securityhub/model/AwsS3BucketBucketLifecycleConfigurationDetails.h>
11#include <aws/securityhub/model/AwsS3BucketBucketVersioningConfiguration.h>
12#include <aws/securityhub/model/AwsS3BucketLoggingConfiguration.h>
13#include <aws/securityhub/model/AwsS3BucketNotificationConfiguration.h>
14#include <aws/securityhub/model/AwsS3BucketObjectLockConfiguration.h>
15#include <aws/securityhub/model/AwsS3BucketServerSideEncryptionConfiguration.h>
16#include <aws/securityhub/model/AwsS3BucketWebsiteConfiguration.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Json {
23class JsonValue;
24class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace SecurityHub {
28namespace Model {
29
37 public:
38 AWS_SECURITYHUB_API AwsS3BucketDetails() = default;
39 AWS_SECURITYHUB_API AwsS3BucketDetails(Aws::Utils::Json::JsonView jsonValue);
41 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
42
44
47 inline const Aws::String& GetOwnerId() const { return m_ownerId; }
48 inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; }
49 template <typename OwnerIdT = Aws::String>
50 void SetOwnerId(OwnerIdT&& value) {
51 m_ownerIdHasBeenSet = true;
52 m_ownerId = std::forward<OwnerIdT>(value);
53 }
54 template <typename OwnerIdT = Aws::String>
55 AwsS3BucketDetails& WithOwnerId(OwnerIdT&& value) {
56 SetOwnerId(std::forward<OwnerIdT>(value));
57 return *this;
58 }
60
62
65 inline const Aws::String& GetOwnerName() const { return m_ownerName; }
66 inline bool OwnerNameHasBeenSet() const { return m_ownerNameHasBeenSet; }
67 template <typename OwnerNameT = Aws::String>
68 void SetOwnerName(OwnerNameT&& value) {
69 m_ownerNameHasBeenSet = true;
70 m_ownerName = std::forward<OwnerNameT>(value);
71 }
72 template <typename OwnerNameT = Aws::String>
73 AwsS3BucketDetails& WithOwnerName(OwnerNameT&& value) {
74 SetOwnerName(std::forward<OwnerNameT>(value));
75 return *this;
76 }
78
80
84 inline const Aws::String& GetOwnerAccountId() const { return m_ownerAccountId; }
85 inline bool OwnerAccountIdHasBeenSet() const { return m_ownerAccountIdHasBeenSet; }
86 template <typename OwnerAccountIdT = Aws::String>
87 void SetOwnerAccountId(OwnerAccountIdT&& value) {
88 m_ownerAccountIdHasBeenSet = true;
89 m_ownerAccountId = std::forward<OwnerAccountIdT>(value);
90 }
91 template <typename OwnerAccountIdT = Aws::String>
92 AwsS3BucketDetails& WithOwnerAccountId(OwnerAccountIdT&& value) {
93 SetOwnerAccountId(std::forward<OwnerAccountIdT>(value));
94 return *this;
95 }
97
99
104 inline const Aws::String& GetCreatedAt() const { return m_createdAt; }
105 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
106 template <typename CreatedAtT = Aws::String>
107 void SetCreatedAt(CreatedAtT&& value) {
108 m_createdAtHasBeenSet = true;
109 m_createdAt = std::forward<CreatedAtT>(value);
110 }
111 template <typename CreatedAtT = Aws::String>
112 AwsS3BucketDetails& WithCreatedAt(CreatedAtT&& value) {
113 SetCreatedAt(std::forward<CreatedAtT>(value));
114 return *this;
115 }
117
119
123 return m_serverSideEncryptionConfiguration;
124 }
125 inline bool ServerSideEncryptionConfigurationHasBeenSet() const { return m_serverSideEncryptionConfigurationHasBeenSet; }
126 template <typename ServerSideEncryptionConfigurationT = AwsS3BucketServerSideEncryptionConfiguration>
127 void SetServerSideEncryptionConfiguration(ServerSideEncryptionConfigurationT&& value) {
128 m_serverSideEncryptionConfigurationHasBeenSet = true;
129 m_serverSideEncryptionConfiguration = std::forward<ServerSideEncryptionConfigurationT>(value);
130 }
131 template <typename ServerSideEncryptionConfigurationT = AwsS3BucketServerSideEncryptionConfiguration>
132 AwsS3BucketDetails& WithServerSideEncryptionConfiguration(ServerSideEncryptionConfigurationT&& value) {
133 SetServerSideEncryptionConfiguration(std::forward<ServerSideEncryptionConfigurationT>(value));
134 return *this;
135 }
137
139
143 return m_bucketLifecycleConfiguration;
144 }
145 inline bool BucketLifecycleConfigurationHasBeenSet() const { return m_bucketLifecycleConfigurationHasBeenSet; }
146 template <typename BucketLifecycleConfigurationT = AwsS3BucketBucketLifecycleConfigurationDetails>
147 void SetBucketLifecycleConfiguration(BucketLifecycleConfigurationT&& value) {
148 m_bucketLifecycleConfigurationHasBeenSet = true;
149 m_bucketLifecycleConfiguration = std::forward<BucketLifecycleConfigurationT>(value);
150 }
151 template <typename BucketLifecycleConfigurationT = AwsS3BucketBucketLifecycleConfigurationDetails>
152 AwsS3BucketDetails& WithBucketLifecycleConfiguration(BucketLifecycleConfigurationT&& value) {
153 SetBucketLifecycleConfiguration(std::forward<BucketLifecycleConfigurationT>(value));
154 return *this;
155 }
157
159
163 inline const AwsS3AccountPublicAccessBlockDetails& GetPublicAccessBlockConfiguration() const { return m_publicAccessBlockConfiguration; }
164 inline bool PublicAccessBlockConfigurationHasBeenSet() const { return m_publicAccessBlockConfigurationHasBeenSet; }
165 template <typename PublicAccessBlockConfigurationT = AwsS3AccountPublicAccessBlockDetails>
166 void SetPublicAccessBlockConfiguration(PublicAccessBlockConfigurationT&& value) {
167 m_publicAccessBlockConfigurationHasBeenSet = true;
168 m_publicAccessBlockConfiguration = std::forward<PublicAccessBlockConfigurationT>(value);
169 }
170 template <typename PublicAccessBlockConfigurationT = AwsS3AccountPublicAccessBlockDetails>
171 AwsS3BucketDetails& WithPublicAccessBlockConfiguration(PublicAccessBlockConfigurationT&& value) {
172 SetPublicAccessBlockConfiguration(std::forward<PublicAccessBlockConfigurationT>(value));
173 return *this;
174 }
176
178
181 inline const Aws::String& GetAccessControlList() const { return m_accessControlList; }
182 inline bool AccessControlListHasBeenSet() const { return m_accessControlListHasBeenSet; }
183 template <typename AccessControlListT = Aws::String>
184 void SetAccessControlList(AccessControlListT&& value) {
185 m_accessControlListHasBeenSet = true;
186 m_accessControlList = std::forward<AccessControlListT>(value);
187 }
188 template <typename AccessControlListT = Aws::String>
189 AwsS3BucketDetails& WithAccessControlList(AccessControlListT&& value) {
190 SetAccessControlList(std::forward<AccessControlListT>(value));
191 return *this;
192 }
194
196
199 inline const AwsS3BucketLoggingConfiguration& GetBucketLoggingConfiguration() const { return m_bucketLoggingConfiguration; }
200 inline bool BucketLoggingConfigurationHasBeenSet() const { return m_bucketLoggingConfigurationHasBeenSet; }
201 template <typename BucketLoggingConfigurationT = AwsS3BucketLoggingConfiguration>
202 void SetBucketLoggingConfiguration(BucketLoggingConfigurationT&& value) {
203 m_bucketLoggingConfigurationHasBeenSet = true;
204 m_bucketLoggingConfiguration = std::forward<BucketLoggingConfigurationT>(value);
205 }
206 template <typename BucketLoggingConfigurationT = AwsS3BucketLoggingConfiguration>
207 AwsS3BucketDetails& WithBucketLoggingConfiguration(BucketLoggingConfigurationT&& value) {
208 SetBucketLoggingConfiguration(std::forward<BucketLoggingConfigurationT>(value));
209 return *this;
210 }
212
214
217 inline const AwsS3BucketWebsiteConfiguration& GetBucketWebsiteConfiguration() const { return m_bucketWebsiteConfiguration; }
218 inline bool BucketWebsiteConfigurationHasBeenSet() const { return m_bucketWebsiteConfigurationHasBeenSet; }
219 template <typename BucketWebsiteConfigurationT = AwsS3BucketWebsiteConfiguration>
220 void SetBucketWebsiteConfiguration(BucketWebsiteConfigurationT&& value) {
221 m_bucketWebsiteConfigurationHasBeenSet = true;
222 m_bucketWebsiteConfiguration = std::forward<BucketWebsiteConfigurationT>(value);
223 }
224 template <typename BucketWebsiteConfigurationT = AwsS3BucketWebsiteConfiguration>
225 AwsS3BucketDetails& WithBucketWebsiteConfiguration(BucketWebsiteConfigurationT&& value) {
226 SetBucketWebsiteConfiguration(std::forward<BucketWebsiteConfigurationT>(value));
227 return *this;
228 }
230
232
236 return m_bucketNotificationConfiguration;
237 }
238 inline bool BucketNotificationConfigurationHasBeenSet() const { return m_bucketNotificationConfigurationHasBeenSet; }
239 template <typename BucketNotificationConfigurationT = AwsS3BucketNotificationConfiguration>
240 void SetBucketNotificationConfiguration(BucketNotificationConfigurationT&& value) {
241 m_bucketNotificationConfigurationHasBeenSet = true;
242 m_bucketNotificationConfiguration = std::forward<BucketNotificationConfigurationT>(value);
243 }
244 template <typename BucketNotificationConfigurationT = AwsS3BucketNotificationConfiguration>
245 AwsS3BucketDetails& WithBucketNotificationConfiguration(BucketNotificationConfigurationT&& value) {
246 SetBucketNotificationConfiguration(std::forward<BucketNotificationConfigurationT>(value));
247 return *this;
248 }
250
252
256 return m_bucketVersioningConfiguration;
257 }
258 inline bool BucketVersioningConfigurationHasBeenSet() const { return m_bucketVersioningConfigurationHasBeenSet; }
259 template <typename BucketVersioningConfigurationT = AwsS3BucketBucketVersioningConfiguration>
260 void SetBucketVersioningConfiguration(BucketVersioningConfigurationT&& value) {
261 m_bucketVersioningConfigurationHasBeenSet = true;
262 m_bucketVersioningConfiguration = std::forward<BucketVersioningConfigurationT>(value);
263 }
264 template <typename BucketVersioningConfigurationT = AwsS3BucketBucketVersioningConfiguration>
265 AwsS3BucketDetails& WithBucketVersioningConfiguration(BucketVersioningConfigurationT&& value) {
266 SetBucketVersioningConfiguration(std::forward<BucketVersioningConfigurationT>(value));
267 return *this;
268 }
270
272
276 inline const AwsS3BucketObjectLockConfiguration& GetObjectLockConfiguration() const { return m_objectLockConfiguration; }
277 inline bool ObjectLockConfigurationHasBeenSet() const { return m_objectLockConfigurationHasBeenSet; }
278 template <typename ObjectLockConfigurationT = AwsS3BucketObjectLockConfiguration>
279 void SetObjectLockConfiguration(ObjectLockConfigurationT&& value) {
280 m_objectLockConfigurationHasBeenSet = true;
281 m_objectLockConfiguration = std::forward<ObjectLockConfigurationT>(value);
282 }
283 template <typename ObjectLockConfigurationT = AwsS3BucketObjectLockConfiguration>
284 AwsS3BucketDetails& WithObjectLockConfiguration(ObjectLockConfigurationT&& value) {
285 SetObjectLockConfiguration(std::forward<ObjectLockConfigurationT>(value));
286 return *this;
287 }
289
291
294 inline const Aws::String& GetName() const { return m_name; }
295 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
296 template <typename NameT = Aws::String>
297 void SetName(NameT&& value) {
298 m_nameHasBeenSet = true;
299 m_name = std::forward<NameT>(value);
300 }
301 template <typename NameT = Aws::String>
302 AwsS3BucketDetails& WithName(NameT&& value) {
303 SetName(std::forward<NameT>(value));
304 return *this;
305 }
307 private:
308 Aws::String m_ownerId;
309
310 Aws::String m_ownerName;
311
312 Aws::String m_ownerAccountId;
313
314 Aws::String m_createdAt;
315
316 AwsS3BucketServerSideEncryptionConfiguration m_serverSideEncryptionConfiguration;
317
318 AwsS3BucketBucketLifecycleConfigurationDetails m_bucketLifecycleConfiguration;
319
320 AwsS3AccountPublicAccessBlockDetails m_publicAccessBlockConfiguration;
321
322 Aws::String m_accessControlList;
323
324 AwsS3BucketLoggingConfiguration m_bucketLoggingConfiguration;
325
326 AwsS3BucketWebsiteConfiguration m_bucketWebsiteConfiguration;
327
328 AwsS3BucketNotificationConfiguration m_bucketNotificationConfiguration;
329
330 AwsS3BucketBucketVersioningConfiguration m_bucketVersioningConfiguration;
331
332 AwsS3BucketObjectLockConfiguration m_objectLockConfiguration;
333
334 Aws::String m_name;
335 bool m_ownerIdHasBeenSet = false;
336 bool m_ownerNameHasBeenSet = false;
337 bool m_ownerAccountIdHasBeenSet = false;
338 bool m_createdAtHasBeenSet = false;
339 bool m_serverSideEncryptionConfigurationHasBeenSet = false;
340 bool m_bucketLifecycleConfigurationHasBeenSet = false;
341 bool m_publicAccessBlockConfigurationHasBeenSet = false;
342 bool m_accessControlListHasBeenSet = false;
343 bool m_bucketLoggingConfigurationHasBeenSet = false;
344 bool m_bucketWebsiteConfigurationHasBeenSet = false;
345 bool m_bucketNotificationConfigurationHasBeenSet = false;
346 bool m_bucketVersioningConfigurationHasBeenSet = false;
347 bool m_objectLockConfigurationHasBeenSet = false;
348 bool m_nameHasBeenSet = false;
349};
350
351} // namespace Model
352} // namespace SecurityHub
353} // namespace Aws
const AwsS3BucketLoggingConfiguration & GetBucketLoggingConfiguration() 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)
AwsS3BucketDetails & WithBucketLoggingConfiguration(BucketLoggingConfigurationT &&value)
AwsS3BucketDetails & WithObjectLockConfiguration(ObjectLockConfigurationT &&value)
AwsS3BucketDetails & WithServerSideEncryptionConfiguration(ServerSideEncryptionConfigurationT &&value)
AWS_SECURITYHUB_API AwsS3BucketDetails(Aws::Utils::Json::JsonView jsonValue)
AwsS3BucketDetails & WithOwnerAccountId(OwnerAccountIdT &&value)
const AwsS3BucketBucketVersioningConfiguration & GetBucketVersioningConfiguration() 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
void SetBucketLoggingConfiguration(BucketLoggingConfigurationT &&value)
const AwsS3AccountPublicAccessBlockDetails & GetPublicAccessBlockConfiguration() const
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AwsS3BucketDetails & WithBucketVersioningConfiguration(BucketVersioningConfigurationT &&value)
AwsS3BucketDetails & WithBucketNotificationConfiguration(BucketNotificationConfigurationT &&value)
void SetObjectLockConfiguration(ObjectLockConfigurationT &&value)
void SetBucketNotificationConfiguration(BucketNotificationConfigurationT &&value)
const AwsS3BucketBucketLifecycleConfigurationDetails & GetBucketLifecycleConfiguration() const
void SetServerSideEncryptionConfiguration(ServerSideEncryptionConfigurationT &&value)
AWS_SECURITYHUB_API AwsS3BucketDetails()=default
void SetPublicAccessBlockConfiguration(PublicAccessBlockConfigurationT &&value)
void SetBucketVersioningConfiguration(BucketVersioningConfigurationT &&value)
AwsS3BucketDetails & WithOwnerName(OwnerNameT &&value)
AwsS3BucketDetails & WithAccessControlList(AccessControlListT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue