AWS SDK for C++

AWS SDK for C++ Version 1.11.867

Loading...
Searching...
No Matches
SimulatePrincipalPolicyRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/iam/IAMRequest.h>
10#include <aws/iam/IAM_EXPORTS.h>
11#include <aws/iam/model/ContextEntry.h>
12#include <aws/iam/model/PolicyIdentifier.h>
13
14#include <utility>
15
16namespace Aws {
17namespace IAM {
18namespace Model {
19
23 public:
24 AWS_IAM_API SimulatePrincipalPolicyRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "SimulatePrincipalPolicy"; }
31
32 AWS_IAM_API Aws::String SerializePayload() const override;
33
34 protected:
35 AWS_IAM_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
36
37 public:
39
54 inline const Aws::String& GetPolicySourceArn() const { return m_policySourceArn; }
55 inline bool PolicySourceArnHasBeenSet() const { return m_policySourceArnHasBeenSet; }
56 template <typename PolicySourceArnT = Aws::String>
57 void SetPolicySourceArn(PolicySourceArnT&& value) {
58 m_policySourceArnHasBeenSet = true;
59 m_policySourceArn = std::forward<PolicySourceArnT>(value);
60 }
61 template <typename PolicySourceArnT = Aws::String>
63 SetPolicySourceArn(std::forward<PolicySourceArnT>(value));
64 return *this;
65 }
67
69
81 inline const Aws::Vector<Aws::String>& GetPolicyInputList() const { return m_policyInputList; }
82 inline bool PolicyInputListHasBeenSet() const { return m_policyInputListHasBeenSet; }
83 template <typename PolicyInputListT = Aws::Vector<Aws::String>>
84 void SetPolicyInputList(PolicyInputListT&& value) {
85 m_policyInputListHasBeenSet = true;
86 m_policyInputList = std::forward<PolicyInputListT>(value);
87 }
88 template <typename PolicyInputListT = Aws::Vector<Aws::String>>
90 SetPolicyInputList(std::forward<PolicyInputListT>(value));
91 return *this;
92 }
93 template <typename PolicyInputListT = Aws::String>
95 m_policyInputListHasBeenSet = true;
96 m_policyInputList.emplace_back(std::forward<PolicyInputListT>(value));
97 return *this;
98 }
100
102
129 inline const Aws::Vector<Aws::String>& GetPermissionsBoundaryPolicyInputList() const { return m_permissionsBoundaryPolicyInputList; }
130 inline bool PermissionsBoundaryPolicyInputListHasBeenSet() const { return m_permissionsBoundaryPolicyInputListHasBeenSet; }
131 template <typename PermissionsBoundaryPolicyInputListT = Aws::Vector<Aws::String>>
132 void SetPermissionsBoundaryPolicyInputList(PermissionsBoundaryPolicyInputListT&& value) {
133 m_permissionsBoundaryPolicyInputListHasBeenSet = true;
134 m_permissionsBoundaryPolicyInputList = std::forward<PermissionsBoundaryPolicyInputListT>(value);
135 }
136 template <typename PermissionsBoundaryPolicyInputListT = Aws::Vector<Aws::String>>
137 SimulatePrincipalPolicyRequest& WithPermissionsBoundaryPolicyInputList(PermissionsBoundaryPolicyInputListT&& value) {
138 SetPermissionsBoundaryPolicyInputList(std::forward<PermissionsBoundaryPolicyInputListT>(value));
139 return *this;
140 }
141 template <typename PermissionsBoundaryPolicyInputListT = Aws::String>
142 SimulatePrincipalPolicyRequest& AddPermissionsBoundaryPolicyInputList(PermissionsBoundaryPolicyInputListT&& value) {
143 m_permissionsBoundaryPolicyInputListHasBeenSet = true;
144 m_permissionsBoundaryPolicyInputList.emplace_back(std::forward<PermissionsBoundaryPolicyInputListT>(value));
145 return *this;
146 }
148
150
164 inline const Aws::Vector<PolicyIdentifier>& GetPolicyExclusionList() const { return m_policyExclusionList; }
165 inline bool PolicyExclusionListHasBeenSet() const { return m_policyExclusionListHasBeenSet; }
166 template <typename PolicyExclusionListT = Aws::Vector<PolicyIdentifier>>
167 void SetPolicyExclusionList(PolicyExclusionListT&& value) {
168 m_policyExclusionListHasBeenSet = true;
169 m_policyExclusionList = std::forward<PolicyExclusionListT>(value);
170 }
171 template <typename PolicyExclusionListT = Aws::Vector<PolicyIdentifier>>
173 SetPolicyExclusionList(std::forward<PolicyExclusionListT>(value));
174 return *this;
175 }
176 template <typename PolicyExclusionListT = PolicyIdentifier>
178 m_policyExclusionListHasBeenSet = true;
179 m_policyExclusionList.emplace_back(std::forward<PolicyExclusionListT>(value));
180 return *this;
181 }
183
185
190 inline const Aws::Vector<Aws::String>& GetActionNames() const { return m_actionNames; }
191 inline bool ActionNamesHasBeenSet() const { return m_actionNamesHasBeenSet; }
192 template <typename ActionNamesT = Aws::Vector<Aws::String>>
193 void SetActionNames(ActionNamesT&& value) {
194 m_actionNamesHasBeenSet = true;
195 m_actionNames = std::forward<ActionNamesT>(value);
196 }
197 template <typename ActionNamesT = Aws::Vector<Aws::String>>
199 SetActionNames(std::forward<ActionNamesT>(value));
200 return *this;
201 }
202 template <typename ActionNamesT = Aws::String>
204 m_actionNamesHasBeenSet = true;
205 m_actionNames.emplace_back(std::forward<ActionNamesT>(value));
206 return *this;
207 }
209
211
227 inline const Aws::Vector<Aws::String>& GetResourceArns() const { return m_resourceArns; }
228 inline bool ResourceArnsHasBeenSet() const { return m_resourceArnsHasBeenSet; }
229 template <typename ResourceArnsT = Aws::Vector<Aws::String>>
230 void SetResourceArns(ResourceArnsT&& value) {
231 m_resourceArnsHasBeenSet = true;
232 m_resourceArns = std::forward<ResourceArnsT>(value);
233 }
234 template <typename ResourceArnsT = Aws::Vector<Aws::String>>
236 SetResourceArns(std::forward<ResourceArnsT>(value));
237 return *this;
238 }
239 template <typename ResourceArnsT = Aws::String>
241 m_resourceArnsHasBeenSet = true;
242 m_resourceArns.emplace_back(std::forward<ResourceArnsT>(value));
243 return *this;
244 }
246
248
267 inline const Aws::String& GetResourcePolicy() const { return m_resourcePolicy; }
268 inline bool ResourcePolicyHasBeenSet() const { return m_resourcePolicyHasBeenSet; }
269 template <typename ResourcePolicyT = Aws::String>
270 void SetResourcePolicy(ResourcePolicyT&& value) {
271 m_resourcePolicyHasBeenSet = true;
272 m_resourcePolicy = std::forward<ResourcePolicyT>(value);
273 }
274 template <typename ResourcePolicyT = Aws::String>
276 SetResourcePolicy(std::forward<ResourcePolicyT>(value));
277 return *this;
278 }
280
282
295 inline const Aws::String& GetResourceOwner() const { return m_resourceOwner; }
296 inline bool ResourceOwnerHasBeenSet() const { return m_resourceOwnerHasBeenSet; }
297 template <typename ResourceOwnerT = Aws::String>
298 void SetResourceOwner(ResourceOwnerT&& value) {
299 m_resourceOwnerHasBeenSet = true;
300 m_resourceOwner = std::forward<ResourceOwnerT>(value);
301 }
302 template <typename ResourceOwnerT = Aws::String>
304 SetResourceOwner(std::forward<ResourceOwnerT>(value));
305 return *this;
306 }
308
310
330 inline const Aws::String& GetCallerArn() const { return m_callerArn; }
331 inline bool CallerArnHasBeenSet() const { return m_callerArnHasBeenSet; }
332 template <typename CallerArnT = Aws::String>
333 void SetCallerArn(CallerArnT&& value) {
334 m_callerArnHasBeenSet = true;
335 m_callerArn = std::forward<CallerArnT>(value);
336 }
337 template <typename CallerArnT = Aws::String>
339 SetCallerArn(std::forward<CallerArnT>(value));
340 return *this;
341 }
343
345
350 inline const Aws::Vector<ContextEntry>& GetContextEntries() const { return m_contextEntries; }
351 inline bool ContextEntriesHasBeenSet() const { return m_contextEntriesHasBeenSet; }
352 template <typename ContextEntriesT = Aws::Vector<ContextEntry>>
353 void SetContextEntries(ContextEntriesT&& value) {
354 m_contextEntriesHasBeenSet = true;
355 m_contextEntries = std::forward<ContextEntriesT>(value);
356 }
357 template <typename ContextEntriesT = Aws::Vector<ContextEntry>>
359 SetContextEntries(std::forward<ContextEntriesT>(value));
360 return *this;
361 }
362 template <typename ContextEntriesT = ContextEntry>
364 m_contextEntriesHasBeenSet = true;
365 m_contextEntries.emplace_back(std::forward<ContextEntriesT>(value));
366 return *this;
367 }
369
371
394 inline const Aws::String& GetResourceHandlingOption() const { return m_resourceHandlingOption; }
395 inline bool ResourceHandlingOptionHasBeenSet() const { return m_resourceHandlingOptionHasBeenSet; }
396 template <typename ResourceHandlingOptionT = Aws::String>
397 void SetResourceHandlingOption(ResourceHandlingOptionT&& value) {
398 m_resourceHandlingOptionHasBeenSet = true;
399 m_resourceHandlingOption = std::forward<ResourceHandlingOptionT>(value);
400 }
401 template <typename ResourceHandlingOptionT = Aws::String>
403 SetResourceHandlingOption(std::forward<ResourceHandlingOptionT>(value));
404 return *this;
405 }
407
409
419 inline int GetMaxItems() const { return m_maxItems; }
420 inline bool MaxItemsHasBeenSet() const { return m_maxItemsHasBeenSet; }
421 inline void SetMaxItems(int value) {
422 m_maxItemsHasBeenSet = true;
423 m_maxItems = value;
424 }
426 SetMaxItems(value);
427 return *this;
428 }
430
432
438 inline const Aws::String& GetMarker() const { return m_marker; }
439 inline bool MarkerHasBeenSet() const { return m_markerHasBeenSet; }
440 template <typename MarkerT = Aws::String>
441 void SetMarker(MarkerT&& value) {
442 m_markerHasBeenSet = true;
443 m_marker = std::forward<MarkerT>(value);
444 }
445 template <typename MarkerT = Aws::String>
447 SetMarker(std::forward<MarkerT>(value));
448 return *this;
449 }
451 private:
452 Aws::String m_policySourceArn;
453
454 Aws::Vector<Aws::String> m_policyInputList;
455
456 Aws::Vector<Aws::String> m_permissionsBoundaryPolicyInputList;
457
458 Aws::Vector<PolicyIdentifier> m_policyExclusionList;
459
460 Aws::Vector<Aws::String> m_actionNames;
461
462 Aws::Vector<Aws::String> m_resourceArns;
463
464 Aws::String m_resourcePolicy;
465
466 Aws::String m_resourceOwner;
467
468 Aws::String m_callerArn;
469
470 Aws::Vector<ContextEntry> m_contextEntries;
471
472 Aws::String m_resourceHandlingOption;
473
474 int m_maxItems{0};
475
476 Aws::String m_marker;
477 bool m_policySourceArnHasBeenSet = false;
478 bool m_policyInputListHasBeenSet = false;
479 bool m_permissionsBoundaryPolicyInputListHasBeenSet = false;
480 bool m_policyExclusionListHasBeenSet = false;
481 bool m_actionNamesHasBeenSet = false;
482 bool m_resourceArnsHasBeenSet = false;
483 bool m_resourcePolicyHasBeenSet = false;
484 bool m_resourceOwnerHasBeenSet = false;
485 bool m_callerArnHasBeenSet = false;
486 bool m_contextEntriesHasBeenSet = false;
487 bool m_resourceHandlingOptionHasBeenSet = false;
488 bool m_maxItemsHasBeenSet = false;
489 bool m_markerHasBeenSet = false;
490};
491
492} // namespace Model
493} // namespace IAM
494} // namespace Aws
SimulatePrincipalPolicyRequest & AddResourceArns(ResourceArnsT &&value)
const Aws::Vector< Aws::String > & GetPermissionsBoundaryPolicyInputList() const
SimulatePrincipalPolicyRequest & WithPolicyExclusionList(PolicyExclusionListT &&value)
SimulatePrincipalPolicyRequest & WithMaxItems(int value)
SimulatePrincipalPolicyRequest & AddPolicyExclusionList(PolicyExclusionListT &&value)
const Aws::Vector< Aws::String > & GetResourceArns() const
SimulatePrincipalPolicyRequest & WithPolicyInputList(PolicyInputListT &&value)
SimulatePrincipalPolicyRequest & WithCallerArn(CallerArnT &&value)
SimulatePrincipalPolicyRequest & WithResourceHandlingOption(ResourceHandlingOptionT &&value)
SimulatePrincipalPolicyRequest & WithContextEntries(ContextEntriesT &&value)
SimulatePrincipalPolicyRequest & WithPolicySourceArn(PolicySourceArnT &&value)
virtual const char * GetServiceRequestName() const override
SimulatePrincipalPolicyRequest & AddActionNames(ActionNamesT &&value)
AWS_IAM_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
void SetPermissionsBoundaryPolicyInputList(PermissionsBoundaryPolicyInputListT &&value)
const Aws::Vector< ContextEntry > & GetContextEntries() const
SimulatePrincipalPolicyRequest & AddPermissionsBoundaryPolicyInputList(PermissionsBoundaryPolicyInputListT &&value)
SimulatePrincipalPolicyRequest & AddContextEntries(ContextEntriesT &&value)
SimulatePrincipalPolicyRequest & WithPermissionsBoundaryPolicyInputList(PermissionsBoundaryPolicyInputListT &&value)
SimulatePrincipalPolicyRequest & WithResourcePolicy(ResourcePolicyT &&value)
const Aws::Vector< Aws::String > & GetActionNames() const
void SetResourceHandlingOption(ResourceHandlingOptionT &&value)
SimulatePrincipalPolicyRequest & WithResourceOwner(ResourceOwnerT &&value)
SimulatePrincipalPolicyRequest & WithActionNames(ActionNamesT &&value)
const Aws::Vector< Aws::String > & GetPolicyInputList() const
SimulatePrincipalPolicyRequest & WithResourceArns(ResourceArnsT &&value)
const Aws::Vector< PolicyIdentifier > & GetPolicyExclusionList() const
SimulatePrincipalPolicyRequest & WithMarker(MarkerT &&value)
AWS_IAM_API Aws::String SerializePayload() const override
SimulatePrincipalPolicyRequest & AddPolicyInputList(PolicyInputListT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector