AWS SDK for C++

AWS SDK for C++ Version 1.11.759

Loading...
Searching...
No Matches
DelegationRequest.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/iam/IAM_EXPORTS.h>
12#include <aws/iam/model/DelegationPermission.h>
13#include <aws/iam/model/StateType.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Xml {
20class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace IAM {
24namespace Model {
25
33 public:
34 AWS_IAM_API DelegationRequest() = default;
35 AWS_IAM_API DelegationRequest(const Aws::Utils::Xml::XmlNode& xmlNode);
37
38 AWS_IAM_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
39 AWS_IAM_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
40
42
45 inline const Aws::String& GetDelegationRequestId() const { return m_delegationRequestId; }
46 inline bool DelegationRequestIdHasBeenSet() const { return m_delegationRequestIdHasBeenSet; }
47 template <typename DelegationRequestIdT = Aws::String>
48 void SetDelegationRequestId(DelegationRequestIdT&& value) {
49 m_delegationRequestIdHasBeenSet = true;
50 m_delegationRequestId = std::forward<DelegationRequestIdT>(value);
51 }
52 template <typename DelegationRequestIdT = Aws::String>
53 DelegationRequest& WithDelegationRequestId(DelegationRequestIdT&& value) {
54 SetDelegationRequestId(std::forward<DelegationRequestIdT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetOwnerAccountId() const { return m_ownerAccountId; }
64 inline bool OwnerAccountIdHasBeenSet() const { return m_ownerAccountIdHasBeenSet; }
65 template <typename OwnerAccountIdT = Aws::String>
66 void SetOwnerAccountId(OwnerAccountIdT&& value) {
67 m_ownerAccountIdHasBeenSet = true;
68 m_ownerAccountId = std::forward<OwnerAccountIdT>(value);
69 }
70 template <typename OwnerAccountIdT = Aws::String>
71 DelegationRequest& WithOwnerAccountId(OwnerAccountIdT&& value) {
72 SetOwnerAccountId(std::forward<OwnerAccountIdT>(value));
73 return *this;
74 }
76
78
82 inline const Aws::String& GetDescription() const { return m_description; }
83 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
84 template <typename DescriptionT = Aws::String>
85 void SetDescription(DescriptionT&& value) {
86 m_descriptionHasBeenSet = true;
87 m_description = std::forward<DescriptionT>(value);
88 }
89 template <typename DescriptionT = Aws::String>
90 DelegationRequest& WithDescription(DescriptionT&& value) {
91 SetDescription(std::forward<DescriptionT>(value));
92 return *this;
93 }
95
97
104 inline const Aws::String& GetRequestMessage() const { return m_requestMessage; }
105 inline bool RequestMessageHasBeenSet() const { return m_requestMessageHasBeenSet; }
106 template <typename RequestMessageT = Aws::String>
107 void SetRequestMessage(RequestMessageT&& value) {
108 m_requestMessageHasBeenSet = true;
109 m_requestMessage = std::forward<RequestMessageT>(value);
110 }
111 template <typename RequestMessageT = Aws::String>
112 DelegationRequest& WithRequestMessage(RequestMessageT&& value) {
113 SetRequestMessage(std::forward<RequestMessageT>(value));
114 return *this;
115 }
117
119
120 inline const DelegationPermission& GetPermissions() const { return m_permissions; }
121 inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; }
122 template <typename PermissionsT = DelegationPermission>
123 void SetPermissions(PermissionsT&& value) {
124 m_permissionsHasBeenSet = true;
125 m_permissions = std::forward<PermissionsT>(value);
126 }
127 template <typename PermissionsT = DelegationPermission>
128 DelegationRequest& WithPermissions(PermissionsT&& value) {
129 SetPermissions(std::forward<PermissionsT>(value));
130 return *this;
131 }
133
135
139 inline const Aws::String& GetPermissionPolicy() const { return m_permissionPolicy; }
140 inline bool PermissionPolicyHasBeenSet() const { return m_permissionPolicyHasBeenSet; }
141 template <typename PermissionPolicyT = Aws::String>
142 void SetPermissionPolicy(PermissionPolicyT&& value) {
143 m_permissionPolicyHasBeenSet = true;
144 m_permissionPolicy = std::forward<PermissionPolicyT>(value);
145 }
146 template <typename PermissionPolicyT = Aws::String>
147 DelegationRequest& WithPermissionPolicy(PermissionPolicyT&& value) {
148 SetPermissionPolicy(std::forward<PermissionPolicyT>(value));
149 return *this;
150 }
152
154
162 inline const Aws::Vector<Aws::String>& GetRolePermissionRestrictionArns() const { return m_rolePermissionRestrictionArns; }
163 inline bool RolePermissionRestrictionArnsHasBeenSet() const { return m_rolePermissionRestrictionArnsHasBeenSet; }
164 template <typename RolePermissionRestrictionArnsT = Aws::Vector<Aws::String>>
165 void SetRolePermissionRestrictionArns(RolePermissionRestrictionArnsT&& value) {
166 m_rolePermissionRestrictionArnsHasBeenSet = true;
167 m_rolePermissionRestrictionArns = std::forward<RolePermissionRestrictionArnsT>(value);
168 }
169 template <typename RolePermissionRestrictionArnsT = Aws::Vector<Aws::String>>
170 DelegationRequest& WithRolePermissionRestrictionArns(RolePermissionRestrictionArnsT&& value) {
171 SetRolePermissionRestrictionArns(std::forward<RolePermissionRestrictionArnsT>(value));
172 return *this;
173 }
174 template <typename RolePermissionRestrictionArnsT = Aws::String>
175 DelegationRequest& AddRolePermissionRestrictionArns(RolePermissionRestrictionArnsT&& value) {
176 m_rolePermissionRestrictionArnsHasBeenSet = true;
177 m_rolePermissionRestrictionArns.emplace_back(std::forward<RolePermissionRestrictionArnsT>(value));
178 return *this;
179 }
181
183
186 inline const Aws::String& GetOwnerId() const { return m_ownerId; }
187 inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; }
188 template <typename OwnerIdT = Aws::String>
189 void SetOwnerId(OwnerIdT&& value) {
190 m_ownerIdHasBeenSet = true;
191 m_ownerId = std::forward<OwnerIdT>(value);
192 }
193 template <typename OwnerIdT = Aws::String>
194 DelegationRequest& WithOwnerId(OwnerIdT&& value) {
195 SetOwnerId(std::forward<OwnerIdT>(value));
196 return *this;
197 }
199
201
202 inline const Aws::String& GetApproverId() const { return m_approverId; }
203 inline bool ApproverIdHasBeenSet() const { return m_approverIdHasBeenSet; }
204 template <typename ApproverIdT = Aws::String>
205 void SetApproverId(ApproverIdT&& value) {
206 m_approverIdHasBeenSet = true;
207 m_approverId = std::forward<ApproverIdT>(value);
208 }
209 template <typename ApproverIdT = Aws::String>
210 DelegationRequest& WithApproverId(ApproverIdT&& value) {
211 SetApproverId(std::forward<ApproverIdT>(value));
212 return *this;
213 }
215
217
223 inline StateType GetState() const { return m_state; }
224 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
225 inline void SetState(StateType value) {
226 m_stateHasBeenSet = true;
227 m_state = value;
228 }
230 SetState(value);
231 return *this;
232 }
234
236
242 inline const Aws::Utils::DateTime& GetExpirationTime() const { return m_expirationTime; }
243 inline bool ExpirationTimeHasBeenSet() const { return m_expirationTimeHasBeenSet; }
244 template <typename ExpirationTimeT = Aws::Utils::DateTime>
245 void SetExpirationTime(ExpirationTimeT&& value) {
246 m_expirationTimeHasBeenSet = true;
247 m_expirationTime = std::forward<ExpirationTimeT>(value);
248 }
249 template <typename ExpirationTimeT = Aws::Utils::DateTime>
250 DelegationRequest& WithExpirationTime(ExpirationTimeT&& value) {
251 SetExpirationTime(std::forward<ExpirationTimeT>(value));
252 return *this;
253 }
255
257
261 inline const Aws::String& GetRequestorId() const { return m_requestorId; }
262 inline bool RequestorIdHasBeenSet() const { return m_requestorIdHasBeenSet; }
263 template <typename RequestorIdT = Aws::String>
264 void SetRequestorId(RequestorIdT&& value) {
265 m_requestorIdHasBeenSet = true;
266 m_requestorId = std::forward<RequestorIdT>(value);
267 }
268 template <typename RequestorIdT = Aws::String>
269 DelegationRequest& WithRequestorId(RequestorIdT&& value) {
270 SetRequestorId(std::forward<RequestorIdT>(value));
271 return *this;
272 }
274
276
279 inline const Aws::String& GetRequestorName() const { return m_requestorName; }
280 inline bool RequestorNameHasBeenSet() const { return m_requestorNameHasBeenSet; }
281 template <typename RequestorNameT = Aws::String>
282 void SetRequestorName(RequestorNameT&& value) {
283 m_requestorNameHasBeenSet = true;
284 m_requestorName = std::forward<RequestorNameT>(value);
285 }
286 template <typename RequestorNameT = Aws::String>
287 DelegationRequest& WithRequestorName(RequestorNameT&& value) {
288 SetRequestorName(std::forward<RequestorNameT>(value));
289 return *this;
290 }
292
294
297 inline const Aws::Utils::DateTime& GetCreateDate() const { return m_createDate; }
298 inline bool CreateDateHasBeenSet() const { return m_createDateHasBeenSet; }
299 template <typename CreateDateT = Aws::Utils::DateTime>
300 void SetCreateDate(CreateDateT&& value) {
301 m_createDateHasBeenSet = true;
302 m_createDate = std::forward<CreateDateT>(value);
303 }
304 template <typename CreateDateT = Aws::Utils::DateTime>
305 DelegationRequest& WithCreateDate(CreateDateT&& value) {
306 SetCreateDate(std::forward<CreateDateT>(value));
307 return *this;
308 }
310
312
315 inline int GetSessionDuration() const { return m_sessionDuration; }
316 inline bool SessionDurationHasBeenSet() const { return m_sessionDurationHasBeenSet; }
317 inline void SetSessionDuration(int value) {
318 m_sessionDurationHasBeenSet = true;
319 m_sessionDuration = value;
320 }
322 SetSessionDuration(value);
323 return *this;
324 }
326
328
332 inline const Aws::String& GetRedirectUrl() const { return m_redirectUrl; }
333 inline bool RedirectUrlHasBeenSet() const { return m_redirectUrlHasBeenSet; }
334 template <typename RedirectUrlT = Aws::String>
335 void SetRedirectUrl(RedirectUrlT&& value) {
336 m_redirectUrlHasBeenSet = true;
337 m_redirectUrl = std::forward<RedirectUrlT>(value);
338 }
339 template <typename RedirectUrlT = Aws::String>
340 DelegationRequest& WithRedirectUrl(RedirectUrlT&& value) {
341 SetRedirectUrl(std::forward<RedirectUrlT>(value));
342 return *this;
343 }
345
347
353 inline const Aws::String& GetNotes() const { return m_notes; }
354 inline bool NotesHasBeenSet() const { return m_notesHasBeenSet; }
355 template <typename NotesT = Aws::String>
356 void SetNotes(NotesT&& value) {
357 m_notesHasBeenSet = true;
358 m_notes = std::forward<NotesT>(value);
359 }
360 template <typename NotesT = Aws::String>
361 DelegationRequest& WithNotes(NotesT&& value) {
362 SetNotes(std::forward<NotesT>(value));
363 return *this;
364 }
366
368
374 inline const Aws::String& GetRejectionReason() const { return m_rejectionReason; }
375 inline bool RejectionReasonHasBeenSet() const { return m_rejectionReasonHasBeenSet; }
376 template <typename RejectionReasonT = Aws::String>
377 void SetRejectionReason(RejectionReasonT&& value) {
378 m_rejectionReasonHasBeenSet = true;
379 m_rejectionReason = std::forward<RejectionReasonT>(value);
380 }
381 template <typename RejectionReasonT = Aws::String>
382 DelegationRequest& WithRejectionReason(RejectionReasonT&& value) {
383 SetRejectionReason(std::forward<RejectionReasonT>(value));
384 return *this;
385 }
387
389
395 inline bool GetOnlySendByOwner() const { return m_onlySendByOwner; }
396 inline bool OnlySendByOwnerHasBeenSet() const { return m_onlySendByOwnerHasBeenSet; }
397 inline void SetOnlySendByOwner(bool value) {
398 m_onlySendByOwnerHasBeenSet = true;
399 m_onlySendByOwner = value;
400 }
402 SetOnlySendByOwner(value);
403 return *this;
404 }
406
408
411 inline const Aws::Utils::DateTime& GetUpdatedTime() const { return m_updatedTime; }
412 inline bool UpdatedTimeHasBeenSet() const { return m_updatedTimeHasBeenSet; }
413 template <typename UpdatedTimeT = Aws::Utils::DateTime>
414 void SetUpdatedTime(UpdatedTimeT&& value) {
415 m_updatedTimeHasBeenSet = true;
416 m_updatedTime = std::forward<UpdatedTimeT>(value);
417 }
418 template <typename UpdatedTimeT = Aws::Utils::DateTime>
419 DelegationRequest& WithUpdatedTime(UpdatedTimeT&& value) {
420 SetUpdatedTime(std::forward<UpdatedTimeT>(value));
421 return *this;
422 }
424 private:
425 Aws::String m_delegationRequestId;
426
427 Aws::String m_ownerAccountId;
428
429 Aws::String m_description;
430
431 Aws::String m_requestMessage;
432
433 DelegationPermission m_permissions;
434
435 Aws::String m_permissionPolicy;
436
437 Aws::Vector<Aws::String> m_rolePermissionRestrictionArns;
438
439 Aws::String m_ownerId;
440
441 Aws::String m_approverId;
442
444
445 Aws::Utils::DateTime m_expirationTime{};
446
447 Aws::String m_requestorId;
448
449 Aws::String m_requestorName;
450
451 Aws::Utils::DateTime m_createDate{};
452
453 int m_sessionDuration{0};
454
455 Aws::String m_redirectUrl;
456
457 Aws::String m_notes;
458
459 Aws::String m_rejectionReason;
460
461 bool m_onlySendByOwner{false};
462
463 Aws::Utils::DateTime m_updatedTime{};
464 bool m_delegationRequestIdHasBeenSet = false;
465 bool m_ownerAccountIdHasBeenSet = false;
466 bool m_descriptionHasBeenSet = false;
467 bool m_requestMessageHasBeenSet = false;
468 bool m_permissionsHasBeenSet = false;
469 bool m_permissionPolicyHasBeenSet = false;
470 bool m_rolePermissionRestrictionArnsHasBeenSet = false;
471 bool m_ownerIdHasBeenSet = false;
472 bool m_approverIdHasBeenSet = false;
473 bool m_stateHasBeenSet = false;
474 bool m_expirationTimeHasBeenSet = false;
475 bool m_requestorIdHasBeenSet = false;
476 bool m_requestorNameHasBeenSet = false;
477 bool m_createDateHasBeenSet = false;
478 bool m_sessionDurationHasBeenSet = false;
479 bool m_redirectUrlHasBeenSet = false;
480 bool m_notesHasBeenSet = false;
481 bool m_rejectionReasonHasBeenSet = false;
482 bool m_onlySendByOwnerHasBeenSet = false;
483 bool m_updatedTimeHasBeenSet = false;
484};
485
486} // namespace Model
487} // namespace IAM
488} // namespace Aws
const Aws::String & GetApproverId() const
void SetExpirationTime(ExpirationTimeT &&value)
const Aws::String & GetRequestMessage() const
void SetRejectionReason(RejectionReasonT &&value)
DelegationRequest & WithRequestMessage(RequestMessageT &&value)
const Aws::String & GetRequestorName() const
DelegationRequest & WithState(StateType value)
DelegationRequest & WithDescription(DescriptionT &&value)
void SetRequestorName(RequestorNameT &&value)
void SetRequestorId(RequestorIdT &&value)
DelegationRequest & WithRequestorName(RequestorNameT &&value)
DelegationRequest & WithSessionDuration(int value)
const Aws::String & GetDelegationRequestId() const
void SetApproverId(ApproverIdT &&value)
DelegationRequest & WithCreateDate(CreateDateT &&value)
const Aws::Vector< Aws::String > & GetRolePermissionRestrictionArns() const
const Aws::String & GetDescription() const
AWS_IAM_API DelegationRequest & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_IAM_API DelegationRequest(const Aws::Utils::Xml::XmlNode &xmlNode)
DelegationRequest & WithRejectionReason(RejectionReasonT &&value)
void SetRolePermissionRestrictionArns(RolePermissionRestrictionArnsT &&value)
void SetDelegationRequestId(DelegationRequestIdT &&value)
AWS_IAM_API void OutputToStream(Aws::OStream &oStream, const char *location) const
DelegationRequest & WithUpdatedTime(UpdatedTimeT &&value)
void SetRequestMessage(RequestMessageT &&value)
void SetRedirectUrl(RedirectUrlT &&value)
void SetOwnerAccountId(OwnerAccountIdT &&value)
AWS_IAM_API DelegationRequest()=default
DelegationRequest & WithOwnerAccountId(OwnerAccountIdT &&value)
DelegationRequest & WithApproverId(ApproverIdT &&value)
const Aws::String & GetRedirectUrl() const
const Aws::String & GetRequestorId() const
DelegationRequest & WithExpirationTime(ExpirationTimeT &&value)
const Aws::String & GetOwnerAccountId() const
DelegationRequest & WithRedirectUrl(RedirectUrlT &&value)
AWS_IAM_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
DelegationRequest & WithRequestorId(RequestorIdT &&value)
DelegationRequest & WithNotes(NotesT &&value)
void SetUpdatedTime(UpdatedTimeT &&value)
DelegationRequest & WithRolePermissionRestrictionArns(RolePermissionRestrictionArnsT &&value)
DelegationRequest & AddRolePermissionRestrictionArns(RolePermissionRestrictionArnsT &&value)
DelegationRequest & WithOnlySendByOwner(bool value)
const Aws::String & GetPermissionPolicy() const
void SetCreateDate(CreateDateT &&value)
DelegationRequest & WithDelegationRequestId(DelegationRequestIdT &&value)
const DelegationPermission & GetPermissions() const
void SetPermissionPolicy(PermissionPolicyT &&value)
const Aws::String & GetNotes() const
const Aws::Utils::DateTime & GetCreateDate() const
const Aws::String & GetRejectionReason() const
const Aws::String & GetOwnerId() const
DelegationRequest & WithPermissions(PermissionsT &&value)
const Aws::Utils::DateTime & GetExpirationTime() const
DelegationRequest & WithOwnerId(OwnerIdT &&value)
const Aws::Utils::DateTime & GetUpdatedTime() const
void SetDescription(DescriptionT &&value)
void SetPermissions(PermissionsT &&value)
DelegationRequest & WithPermissionPolicy(PermissionPolicyT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream