AWS SDK for C++

AWS SDK for C++ Version 1.11.695

Loading...
Searching...
No Matches
AddPolicyGrantRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/datazone/DataZoneRequest.h>
10#include <aws/datazone/DataZone_EXPORTS.h>
11#include <aws/datazone/model/ManagedPolicyType.h>
12#include <aws/datazone/model/PolicyGrantDetail.h>
13#include <aws/datazone/model/PolicyGrantPrincipal.h>
14#include <aws/datazone/model/TargetEntityType.h>
15
16#include <utility>
17
18namespace Aws {
19namespace DataZone {
20namespace Model {
21
25 public:
26 AWS_DATAZONE_API AddPolicyGrantRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "AddPolicyGrant"; }
33
34 AWS_DATAZONE_API Aws::String SerializePayload() const override;
35
37
41 inline const Aws::String& GetClientToken() const { return m_clientToken; }
42 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
43 template <typename ClientTokenT = Aws::String>
44 void SetClientToken(ClientTokenT&& value) {
45 m_clientTokenHasBeenSet = true;
46 m_clientToken = std::forward<ClientTokenT>(value);
47 }
48 template <typename ClientTokenT = Aws::String>
49 AddPolicyGrantRequest& WithClientToken(ClientTokenT&& value) {
50 SetClientToken(std::forward<ClientTokenT>(value));
51 return *this;
52 }
54
56
59 inline const PolicyGrantDetail& GetDetail() const { return m_detail; }
60 inline bool DetailHasBeenSet() const { return m_detailHasBeenSet; }
61 template <typename DetailT = PolicyGrantDetail>
62 void SetDetail(DetailT&& value) {
63 m_detailHasBeenSet = true;
64 m_detail = std::forward<DetailT>(value);
65 }
66 template <typename DetailT = PolicyGrantDetail>
68 SetDetail(std::forward<DetailT>(value));
69 return *this;
70 }
72
74
77 inline const Aws::String& GetDomainIdentifier() const { return m_domainIdentifier; }
78 inline bool DomainIdentifierHasBeenSet() const { return m_domainIdentifierHasBeenSet; }
79 template <typename DomainIdentifierT = Aws::String>
80 void SetDomainIdentifier(DomainIdentifierT&& value) {
81 m_domainIdentifierHasBeenSet = true;
82 m_domainIdentifier = std::forward<DomainIdentifierT>(value);
83 }
84 template <typename DomainIdentifierT = Aws::String>
85 AddPolicyGrantRequest& WithDomainIdentifier(DomainIdentifierT&& value) {
86 SetDomainIdentifier(std::forward<DomainIdentifierT>(value));
87 return *this;
88 }
90
92
95 inline const Aws::String& GetEntityIdentifier() const { return m_entityIdentifier; }
96 inline bool EntityIdentifierHasBeenSet() const { return m_entityIdentifierHasBeenSet; }
97 template <typename EntityIdentifierT = Aws::String>
98 void SetEntityIdentifier(EntityIdentifierT&& value) {
99 m_entityIdentifierHasBeenSet = true;
100 m_entityIdentifier = std::forward<EntityIdentifierT>(value);
101 }
102 template <typename EntityIdentifierT = Aws::String>
103 AddPolicyGrantRequest& WithEntityIdentifier(EntityIdentifierT&& value) {
104 SetEntityIdentifier(std::forward<EntityIdentifierT>(value));
105 return *this;
106 }
108
110
113 inline TargetEntityType GetEntityType() const { return m_entityType; }
114 inline bool EntityTypeHasBeenSet() const { return m_entityTypeHasBeenSet; }
115 inline void SetEntityType(TargetEntityType value) {
116 m_entityTypeHasBeenSet = true;
117 m_entityType = value;
118 }
120 SetEntityType(value);
121 return *this;
122 }
124
126
129 inline ManagedPolicyType GetPolicyType() const { return m_policyType; }
130 inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; }
131 inline void SetPolicyType(ManagedPolicyType value) {
132 m_policyTypeHasBeenSet = true;
133 m_policyType = value;
134 }
136 SetPolicyType(value);
137 return *this;
138 }
140
142
145 inline const PolicyGrantPrincipal& GetPrincipal() const { return m_principal; }
146 inline bool PrincipalHasBeenSet() const { return m_principalHasBeenSet; }
147 template <typename PrincipalT = PolicyGrantPrincipal>
148 void SetPrincipal(PrincipalT&& value) {
149 m_principalHasBeenSet = true;
150 m_principal = std::forward<PrincipalT>(value);
151 }
152 template <typename PrincipalT = PolicyGrantPrincipal>
154 SetPrincipal(std::forward<PrincipalT>(value));
155 return *this;
156 }
158 private:
160 bool m_clientTokenHasBeenSet = true;
161
162 PolicyGrantDetail m_detail;
163 bool m_detailHasBeenSet = false;
164
165 Aws::String m_domainIdentifier;
166 bool m_domainIdentifierHasBeenSet = false;
167
168 Aws::String m_entityIdentifier;
169 bool m_entityIdentifierHasBeenSet = false;
170
172 bool m_entityTypeHasBeenSet = false;
173
175 bool m_policyTypeHasBeenSet = false;
176
177 PolicyGrantPrincipal m_principal;
178 bool m_principalHasBeenSet = false;
179};
180
181} // namespace Model
182} // namespace DataZone
183} // namespace Aws
AddPolicyGrantRequest & WithEntityType(TargetEntityType value)
void SetDomainIdentifier(DomainIdentifierT &&value)
AWS_DATAZONE_API AddPolicyGrantRequest()=default
AddPolicyGrantRequest & WithDetail(DetailT &&value)
virtual const char * GetServiceRequestName() const override
const PolicyGrantDetail & GetDetail() const
AddPolicyGrantRequest & WithClientToken(ClientTokenT &&value)
const PolicyGrantPrincipal & GetPrincipal() const
AddPolicyGrantRequest & WithDomainIdentifier(DomainIdentifierT &&value)
AddPolicyGrantRequest & WithPolicyType(ManagedPolicyType value)
AddPolicyGrantRequest & WithPrincipal(PrincipalT &&value)
AddPolicyGrantRequest & WithEntityIdentifier(EntityIdentifierT &&value)
AWS_DATAZONE_API Aws::String SerializePayload() const override
void SetEntityIdentifier(EntityIdentifierT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String