AWS SDK for C++

AWS SDK for C++ Version 1.11.754

Loading...
Searching...
No Matches
BucketLevelPermissions.h
1
6#pragma once
7#include <aws/guardduty/GuardDuty_EXPORTS.h>
8#include <aws/guardduty/model/AccessControlList.h>
9#include <aws/guardduty/model/BlockPublicAccess.h>
10#include <aws/guardduty/model/BucketPolicy.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace GuardDuty {
22namespace Model {
23
31 public:
32 AWS_GUARDDUTY_API BucketLevelPermissions() = default;
35 AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline const AccessControlList& GetAccessControlList() const { return m_accessControlList; }
43 inline bool AccessControlListHasBeenSet() const { return m_accessControlListHasBeenSet; }
44 template <typename AccessControlListT = AccessControlList>
45 void SetAccessControlList(AccessControlListT&& value) {
46 m_accessControlListHasBeenSet = true;
47 m_accessControlList = std::forward<AccessControlListT>(value);
48 }
49 template <typename AccessControlListT = AccessControlList>
50 BucketLevelPermissions& WithAccessControlList(AccessControlListT&& value) {
51 SetAccessControlList(std::forward<AccessControlListT>(value));
52 return *this;
53 }
55
57
60 inline const BucketPolicy& GetBucketPolicy() const { return m_bucketPolicy; }
61 inline bool BucketPolicyHasBeenSet() const { return m_bucketPolicyHasBeenSet; }
62 template <typename BucketPolicyT = BucketPolicy>
63 void SetBucketPolicy(BucketPolicyT&& value) {
64 m_bucketPolicyHasBeenSet = true;
65 m_bucketPolicy = std::forward<BucketPolicyT>(value);
66 }
67 template <typename BucketPolicyT = BucketPolicy>
68 BucketLevelPermissions& WithBucketPolicy(BucketPolicyT&& value) {
69 SetBucketPolicy(std::forward<BucketPolicyT>(value));
70 return *this;
71 }
73
75
79 inline const BlockPublicAccess& GetBlockPublicAccess() const { return m_blockPublicAccess; }
80 inline bool BlockPublicAccessHasBeenSet() const { return m_blockPublicAccessHasBeenSet; }
81 template <typename BlockPublicAccessT = BlockPublicAccess>
82 void SetBlockPublicAccess(BlockPublicAccessT&& value) {
83 m_blockPublicAccessHasBeenSet = true;
84 m_blockPublicAccess = std::forward<BlockPublicAccessT>(value);
85 }
86 template <typename BlockPublicAccessT = BlockPublicAccess>
87 BucketLevelPermissions& WithBlockPublicAccess(BlockPublicAccessT&& value) {
88 SetBlockPublicAccess(std::forward<BlockPublicAccessT>(value));
89 return *this;
90 }
92 private:
93 AccessControlList m_accessControlList;
94
95 BucketPolicy m_bucketPolicy;
96
97 BlockPublicAccess m_blockPublicAccess;
98 bool m_accessControlListHasBeenSet = false;
99 bool m_bucketPolicyHasBeenSet = false;
100 bool m_blockPublicAccessHasBeenSet = false;
101};
102
103} // namespace Model
104} // namespace GuardDuty
105} // namespace Aws
const AccessControlList & GetAccessControlList() const
AWS_GUARDDUTY_API BucketLevelPermissions()=default
AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_GUARDDUTY_API BucketLevelPermissions & operator=(Aws::Utils::Json::JsonView jsonValue)
const BlockPublicAccess & GetBlockPublicAccess() const
BucketLevelPermissions & WithAccessControlList(AccessControlListT &&value)
void SetAccessControlList(AccessControlListT &&value)
AWS_GUARDDUTY_API BucketLevelPermissions(Aws::Utils::Json::JsonView jsonValue)
BucketLevelPermissions & WithBucketPolicy(BucketPolicyT &&value)
void SetBlockPublicAccess(BlockPublicAccessT &&value)
BucketLevelPermissions & WithBlockPublicAccess(BlockPublicAccessT &&value)
Aws::Utils::Json::JsonValue JsonValue