AWS SDK for C++

AWS SDK for C++ Version 1.11.899

Loading...
Searching...
No Matches
AccessGrant.h
1
6#pragma once
7#include <aws/cloudwatchomni/CloudWatchOmni_EXPORTS.h>
8#include <aws/cloudwatchomni/model/AccessGrantPermission.h>
9#include <aws/cloudwatchomni/model/AccessGrantPrincipal.h>
10#include <aws/cloudwatchomni/model/AccessGrantType.h>
11#include <aws/cloudwatchomni/model/ScopedActions.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15#include <aws/crt/cbor/Cbor.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Cbor {
22class CborValue;
23} // namespace Cbor
24} // namespace Utils
25namespace CloudWatchOmni {
26namespace Model {
27
35 public:
36 AWS_CLOUDWATCHOMNI_API AccessGrant() = default;
37 AWS_CLOUDWATCHOMNI_API AccessGrant(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
38 AWS_CLOUDWATCHOMNI_API AccessGrant& operator=(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
39 AWS_CLOUDWATCHOMNI_API void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder) const;
40
42
45 inline const Aws::String& GetGrantId() const { return m_grantId; }
46 inline bool GrantIdHasBeenSet() const { return m_grantIdHasBeenSet; }
47 template <typename GrantIdT = Aws::String>
48 void SetGrantId(GrantIdT&& value) {
49 m_grantIdHasBeenSet = true;
50 m_grantId = std::forward<GrantIdT>(value);
51 }
52 template <typename GrantIdT = Aws::String>
53 AccessGrant& WithGrantId(GrantIdT&& value) {
54 SetGrantId(std::forward<GrantIdT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetGrantArn() const { return m_grantArn; }
64 inline bool GrantArnHasBeenSet() const { return m_grantArnHasBeenSet; }
65 template <typename GrantArnT = Aws::String>
66 void SetGrantArn(GrantArnT&& value) {
67 m_grantArnHasBeenSet = true;
68 m_grantArn = std::forward<GrantArnT>(value);
69 }
70 template <typename GrantArnT = Aws::String>
71 AccessGrant& WithGrantArn(GrantArnT&& value) {
72 SetGrantArn(std::forward<GrantArnT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::String& GetName() const { return m_name; }
82 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
83 template <typename NameT = Aws::String>
84 void SetName(NameT&& value) {
85 m_nameHasBeenSet = true;
86 m_name = std::forward<NameT>(value);
87 }
88 template <typename NameT = Aws::String>
89 AccessGrant& WithName(NameT&& value) {
90 SetName(std::forward<NameT>(value));
91 return *this;
92 }
94
96
99 inline const Aws::String& GetAccountId() const { return m_accountId; }
100 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
101 template <typename AccountIdT = Aws::String>
102 void SetAccountId(AccountIdT&& value) {
103 m_accountIdHasBeenSet = true;
104 m_accountId = std::forward<AccountIdT>(value);
105 }
106 template <typename AccountIdT = Aws::String>
107 AccessGrant& WithAccountId(AccountIdT&& value) {
108 SetAccountId(std::forward<AccountIdT>(value));
109 return *this;
110 }
112
114
117 inline const Aws::String& GetDomainId() const { return m_domainId; }
118 inline bool DomainIdHasBeenSet() const { return m_domainIdHasBeenSet; }
119 template <typename DomainIdT = Aws::String>
120 void SetDomainId(DomainIdT&& value) {
121 m_domainIdHasBeenSet = true;
122 m_domainId = std::forward<DomainIdT>(value);
123 }
124 template <typename DomainIdT = Aws::String>
125 AccessGrant& WithDomainId(DomainIdT&& value) {
126 SetDomainId(std::forward<DomainIdT>(value));
127 return *this;
128 }
130
132
135 inline const AccessGrantPrincipal& GetPrincipal() const { return m_principal; }
136 inline bool PrincipalHasBeenSet() const { return m_principalHasBeenSet; }
137 template <typename PrincipalT = AccessGrantPrincipal>
138 void SetPrincipal(PrincipalT&& value) {
139 m_principalHasBeenSet = true;
140 m_principal = std::forward<PrincipalT>(value);
141 }
142 template <typename PrincipalT = AccessGrantPrincipal>
143 AccessGrant& WithPrincipal(PrincipalT&& value) {
144 SetPrincipal(std::forward<PrincipalT>(value));
145 return *this;
146 }
148
150
153 inline AccessGrantPermission GetPermission() const { return m_permission; }
154 inline bool PermissionHasBeenSet() const { return m_permissionHasBeenSet; }
156 m_permissionHasBeenSet = true;
157 m_permission = value;
158 }
160 SetPermission(value);
161 return *this;
162 }
164
166
169 inline AccessGrantType GetGrantType() const { return m_grantType; }
170 inline bool GrantTypeHasBeenSet() const { return m_grantTypeHasBeenSet; }
171 inline void SetGrantType(AccessGrantType value) {
172 m_grantTypeHasBeenSet = true;
173 m_grantType = value;
174 }
176 SetGrantType(value);
177 return *this;
178 }
180
182
185 inline const Aws::String& GetCreatedBy() const { return m_createdBy; }
186 inline bool CreatedByHasBeenSet() const { return m_createdByHasBeenSet; }
187 template <typename CreatedByT = Aws::String>
188 void SetCreatedBy(CreatedByT&& value) {
189 m_createdByHasBeenSet = true;
190 m_createdBy = std::forward<CreatedByT>(value);
191 }
192 template <typename CreatedByT = Aws::String>
193 AccessGrant& WithCreatedBy(CreatedByT&& value) {
194 SetCreatedBy(std::forward<CreatedByT>(value));
195 return *this;
196 }
198
200
203 inline const Aws::Utils::DateTime& GetCreatedAt() const { return m_createdAt; }
204 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
205 template <typename CreatedAtT = Aws::Utils::DateTime>
206 void SetCreatedAt(CreatedAtT&& value) {
207 m_createdAtHasBeenSet = true;
208 m_createdAt = std::forward<CreatedAtT>(value);
209 }
210 template <typename CreatedAtT = Aws::Utils::DateTime>
211 AccessGrant& WithCreatedAt(CreatedAtT&& value) {
212 SetCreatedAt(std::forward<CreatedAtT>(value));
213 return *this;
214 }
216
218
221 inline const Aws::Utils::DateTime& GetUpdatedAt() const { return m_updatedAt; }
222 inline bool UpdatedAtHasBeenSet() const { return m_updatedAtHasBeenSet; }
223 template <typename UpdatedAtT = Aws::Utils::DateTime>
224 void SetUpdatedAt(UpdatedAtT&& value) {
225 m_updatedAtHasBeenSet = true;
226 m_updatedAt = std::forward<UpdatedAtT>(value);
227 }
228 template <typename UpdatedAtT = Aws::Utils::DateTime>
229 AccessGrant& WithUpdatedAt(UpdatedAtT&& value) {
230 SetUpdatedAt(std::forward<UpdatedAtT>(value));
231 return *this;
232 }
234
236
240 inline const Aws::String& GetSpaceId() const { return m_spaceId; }
241 inline bool SpaceIdHasBeenSet() const { return m_spaceIdHasBeenSet; }
242 template <typename SpaceIdT = Aws::String>
243 void SetSpaceId(SpaceIdT&& value) {
244 m_spaceIdHasBeenSet = true;
245 m_spaceId = std::forward<SpaceIdT>(value);
246 }
247 template <typename SpaceIdT = Aws::String>
248 AccessGrant& WithSpaceId(SpaceIdT&& value) {
249 SetSpaceId(std::forward<SpaceIdT>(value));
250 return *this;
251 }
253
255
259 inline const Aws::Vector<ScopedActions>& GetScopedActions() const { return m_scopedActions; }
260 inline bool ScopedActionsHasBeenSet() const { return m_scopedActionsHasBeenSet; }
261 template <typename ScopedActionsT = Aws::Vector<ScopedActions>>
262 void SetScopedActions(ScopedActionsT&& value) {
263 m_scopedActionsHasBeenSet = true;
264 m_scopedActions = std::forward<ScopedActionsT>(value);
265 }
266 template <typename ScopedActionsT = Aws::Vector<ScopedActions>>
267 AccessGrant& WithScopedActions(ScopedActionsT&& value) {
268 SetScopedActions(std::forward<ScopedActionsT>(value));
269 return *this;
270 }
271 template <typename ScopedActionsT = ScopedActions>
272 AccessGrant& AddScopedActions(ScopedActionsT&& value) {
273 m_scopedActionsHasBeenSet = true;
274 m_scopedActions.emplace_back(std::forward<ScopedActionsT>(value));
275 return *this;
276 }
278 private:
279 Aws::String m_grantId;
280
281 Aws::String m_grantArn;
282
283 Aws::String m_name;
284
285 Aws::String m_accountId;
286
287 Aws::String m_domainId;
288
289 AccessGrantPrincipal m_principal;
290
292
294
295 Aws::String m_createdBy;
296
297 Aws::Utils::DateTime m_createdAt{};
298
299 Aws::Utils::DateTime m_updatedAt{};
300
301 Aws::String m_spaceId;
302
303 Aws::Vector<ScopedActions> m_scopedActions;
304 bool m_grantIdHasBeenSet = false;
305 bool m_grantArnHasBeenSet = false;
306 bool m_nameHasBeenSet = false;
307 bool m_accountIdHasBeenSet = false;
308 bool m_domainIdHasBeenSet = false;
309 bool m_principalHasBeenSet = false;
310 bool m_permissionHasBeenSet = false;
311 bool m_grantTypeHasBeenSet = false;
312 bool m_createdByHasBeenSet = false;
313 bool m_createdAtHasBeenSet = false;
314 bool m_updatedAtHasBeenSet = false;
315 bool m_spaceIdHasBeenSet = false;
316 bool m_scopedActionsHasBeenSet = false;
317};
318
319} // namespace Model
320} // namespace CloudWatchOmni
321} // namespace Aws
void SetGrantType(AccessGrantType value)
AccessGrant & WithDomainId(DomainIdT &&value)
void SetCreatedAt(CreatedAtT &&value)
AccessGrant & WithName(NameT &&value)
Definition AccessGrant.h:89
void SetCreatedBy(CreatedByT &&value)
AWS_CLOUDWATCHOMNI_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const
AccessGrant & WithScopedActions(ScopedActionsT &&value)
const Aws::String & GetName() const
Definition AccessGrant.h:81
const Aws::String & GetSpaceId() const
const Aws::String & GetGrantArn() const
Definition AccessGrant.h:63
void SetPrincipal(PrincipalT &&value)
AccessGrant & WithGrantId(GrantIdT &&value)
Definition AccessGrant.h:53
const Aws::String & GetCreatedBy() const
AccessGrant & WithPermission(AccessGrantPermission value)
AWS_CLOUDWATCHOMNI_API AccessGrant & operator=(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
void SetUpdatedAt(UpdatedAtT &&value)
const Aws::String & GetAccountId() const
Definition AccessGrant.h:99
void SetAccountId(AccountIdT &&value)
AccessGrant & WithCreatedBy(CreatedByT &&value)
AccessGrant & WithGrantType(AccessGrantType value)
const Aws::Vector< ScopedActions > & GetScopedActions() const
const Aws::String & GetDomainId() const
AccessGrant & WithSpaceId(SpaceIdT &&value)
const Aws::String & GetGrantId() const
Definition AccessGrant.h:45
AccessGrantType GetGrantType() const
AccessGrant & WithCreatedAt(CreatedAtT &&value)
void SetScopedActions(ScopedActionsT &&value)
void SetDomainId(DomainIdT &&value)
void SetGrantArn(GrantArnT &&value)
Definition AccessGrant.h:66
AccessGrant & WithUpdatedAt(UpdatedAtT &&value)
AccessGrant & WithGrantArn(GrantArnT &&value)
Definition AccessGrant.h:71
AWS_CLOUDWATCHOMNI_API AccessGrant()=default
AccessGrant & AddScopedActions(ScopedActionsT &&value)
AccessGrant & WithAccountId(AccountIdT &&value)
AccessGrant & WithPrincipal(PrincipalT &&value)
const Aws::Utils::DateTime & GetUpdatedAt() const
const AccessGrantPrincipal & GetPrincipal() const
AWS_CLOUDWATCHOMNI_API AccessGrant(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
const Aws::Utils::DateTime & GetCreatedAt() const
void SetPermission(AccessGrantPermission value)
AccessGrantPermission GetPermission() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector