AWS SDK for C++

AWS SDK for C++ Version 1.11.746

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
40 inline const Aws::String& GetDomainIdentifier() const { return m_domainIdentifier; }
41 inline bool DomainIdentifierHasBeenSet() const { return m_domainIdentifierHasBeenSet; }
42 template <typename DomainIdentifierT = Aws::String>
43 void SetDomainIdentifier(DomainIdentifierT&& value) {
44 m_domainIdentifierHasBeenSet = true;
45 m_domainIdentifier = std::forward<DomainIdentifierT>(value);
46 }
47 template <typename DomainIdentifierT = Aws::String>
48 AddPolicyGrantRequest& WithDomainIdentifier(DomainIdentifierT&& value) {
49 SetDomainIdentifier(std::forward<DomainIdentifierT>(value));
50 return *this;
51 }
53
55
58 inline TargetEntityType GetEntityType() const { return m_entityType; }
59 inline bool EntityTypeHasBeenSet() const { return m_entityTypeHasBeenSet; }
60 inline void SetEntityType(TargetEntityType value) {
61 m_entityTypeHasBeenSet = true;
62 m_entityType = value;
63 }
65 SetEntityType(value);
66 return *this;
67 }
69
71
74 inline const Aws::String& GetEntityIdentifier() const { return m_entityIdentifier; }
75 inline bool EntityIdentifierHasBeenSet() const { return m_entityIdentifierHasBeenSet; }
76 template <typename EntityIdentifierT = Aws::String>
77 void SetEntityIdentifier(EntityIdentifierT&& value) {
78 m_entityIdentifierHasBeenSet = true;
79 m_entityIdentifier = std::forward<EntityIdentifierT>(value);
80 }
81 template <typename EntityIdentifierT = Aws::String>
82 AddPolicyGrantRequest& WithEntityIdentifier(EntityIdentifierT&& value) {
83 SetEntityIdentifier(std::forward<EntityIdentifierT>(value));
84 return *this;
85 }
87
89
92 inline ManagedPolicyType GetPolicyType() const { return m_policyType; }
93 inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; }
94 inline void SetPolicyType(ManagedPolicyType value) {
95 m_policyTypeHasBeenSet = true;
96 m_policyType = value;
97 }
99 SetPolicyType(value);
100 return *this;
101 }
103
105
108 inline const PolicyGrantPrincipal& GetPrincipal() const { return m_principal; }
109 inline bool PrincipalHasBeenSet() const { return m_principalHasBeenSet; }
110 template <typename PrincipalT = PolicyGrantPrincipal>
111 void SetPrincipal(PrincipalT&& value) {
112 m_principalHasBeenSet = true;
113 m_principal = std::forward<PrincipalT>(value);
114 }
115 template <typename PrincipalT = PolicyGrantPrincipal>
117 SetPrincipal(std::forward<PrincipalT>(value));
118 return *this;
119 }
121
123
126 inline const PolicyGrantDetail& GetDetail() const { return m_detail; }
127 inline bool DetailHasBeenSet() const { return m_detailHasBeenSet; }
128 template <typename DetailT = PolicyGrantDetail>
129 void SetDetail(DetailT&& value) {
130 m_detailHasBeenSet = true;
131 m_detail = std::forward<DetailT>(value);
132 }
133 template <typename DetailT = PolicyGrantDetail>
135 SetDetail(std::forward<DetailT>(value));
136 return *this;
137 }
139
141
145 inline const Aws::String& GetClientToken() const { return m_clientToken; }
146 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
147 template <typename ClientTokenT = Aws::String>
148 void SetClientToken(ClientTokenT&& value) {
149 m_clientTokenHasBeenSet = true;
150 m_clientToken = std::forward<ClientTokenT>(value);
151 }
152 template <typename ClientTokenT = Aws::String>
153 AddPolicyGrantRequest& WithClientToken(ClientTokenT&& value) {
154 SetClientToken(std::forward<ClientTokenT>(value));
155 return *this;
156 }
158 private:
159 Aws::String m_domainIdentifier;
160
162
163 Aws::String m_entityIdentifier;
164
166
167 PolicyGrantPrincipal m_principal;
168
169 PolicyGrantDetail m_detail;
170
172 bool m_domainIdentifierHasBeenSet = false;
173 bool m_entityTypeHasBeenSet = false;
174 bool m_entityIdentifierHasBeenSet = false;
175 bool m_policyTypeHasBeenSet = false;
176 bool m_principalHasBeenSet = false;
177 bool m_detailHasBeenSet = false;
178 bool m_clientTokenHasBeenSet = true;
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