AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
EvaluationResult.h
1
6#pragma once
7#include <aws/iam/IAM_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/iam/model/PolicyEvaluationDecisionType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/iam/model/OrganizationsDecisionDetail.h>
13#include <aws/iam/model/PermissionsBoundaryDecisionDetail.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/iam/model/Statement.h>
16#include <aws/iam/model/ResourceSpecificResult.h>
17#include <utility>
18
19namespace Aws
20{
21namespace Utils
22{
23namespace Xml
24{
25 class XmlNode;
26} // namespace Xml
27} // namespace Utils
28namespace IAM
29{
30namespace Model
31{
32
44 {
45 public:
46 AWS_IAM_API EvaluationResult() = default;
47 AWS_IAM_API EvaluationResult(const Aws::Utils::Xml::XmlNode& xmlNode);
49
50 AWS_IAM_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
51 AWS_IAM_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
52
53
55
58 inline const Aws::String& GetEvalActionName() const { return m_evalActionName; }
59 inline bool EvalActionNameHasBeenSet() const { return m_evalActionNameHasBeenSet; }
60 template<typename EvalActionNameT = Aws::String>
61 void SetEvalActionName(EvalActionNameT&& value) { m_evalActionNameHasBeenSet = true; m_evalActionName = std::forward<EvalActionNameT>(value); }
62 template<typename EvalActionNameT = Aws::String>
63 EvaluationResult& WithEvalActionName(EvalActionNameT&& value) { SetEvalActionName(std::forward<EvalActionNameT>(value)); return *this;}
65
67
70 inline const Aws::String& GetEvalResourceName() const { return m_evalResourceName; }
71 inline bool EvalResourceNameHasBeenSet() const { return m_evalResourceNameHasBeenSet; }
72 template<typename EvalResourceNameT = Aws::String>
73 void SetEvalResourceName(EvalResourceNameT&& value) { m_evalResourceNameHasBeenSet = true; m_evalResourceName = std::forward<EvalResourceNameT>(value); }
74 template<typename EvalResourceNameT = Aws::String>
75 EvaluationResult& WithEvalResourceName(EvalResourceNameT&& value) { SetEvalResourceName(std::forward<EvalResourceNameT>(value)); return *this;}
77
79
82 inline PolicyEvaluationDecisionType GetEvalDecision() const { return m_evalDecision; }
83 inline bool EvalDecisionHasBeenSet() const { return m_evalDecisionHasBeenSet; }
84 inline void SetEvalDecision(PolicyEvaluationDecisionType value) { m_evalDecisionHasBeenSet = true; m_evalDecision = value; }
87
89
96 inline const Aws::Vector<Statement>& GetMatchedStatements() const { return m_matchedStatements; }
97 inline bool MatchedStatementsHasBeenSet() const { return m_matchedStatementsHasBeenSet; }
98 template<typename MatchedStatementsT = Aws::Vector<Statement>>
99 void SetMatchedStatements(MatchedStatementsT&& value) { m_matchedStatementsHasBeenSet = true; m_matchedStatements = std::forward<MatchedStatementsT>(value); }
100 template<typename MatchedStatementsT = Aws::Vector<Statement>>
101 EvaluationResult& WithMatchedStatements(MatchedStatementsT&& value) { SetMatchedStatements(std::forward<MatchedStatementsT>(value)); return *this;}
102 template<typename MatchedStatementsT = Statement>
103 EvaluationResult& AddMatchedStatements(MatchedStatementsT&& value) { m_matchedStatementsHasBeenSet = true; m_matchedStatements.emplace_back(std::forward<MatchedStatementsT>(value)); return *this; }
105
107
119 inline const Aws::Vector<Aws::String>& GetMissingContextValues() const { return m_missingContextValues; }
120 inline bool MissingContextValuesHasBeenSet() const { return m_missingContextValuesHasBeenSet; }
121 template<typename MissingContextValuesT = Aws::Vector<Aws::String>>
122 void SetMissingContextValues(MissingContextValuesT&& value) { m_missingContextValuesHasBeenSet = true; m_missingContextValues = std::forward<MissingContextValuesT>(value); }
123 template<typename MissingContextValuesT = Aws::Vector<Aws::String>>
124 EvaluationResult& WithMissingContextValues(MissingContextValuesT&& value) { SetMissingContextValues(std::forward<MissingContextValuesT>(value)); return *this;}
125 template<typename MissingContextValuesT = Aws::String>
126 EvaluationResult& AddMissingContextValues(MissingContextValuesT&& value) { m_missingContextValuesHasBeenSet = true; m_missingContextValues.emplace_back(std::forward<MissingContextValuesT>(value)); return *this; }
128
130
135 inline const OrganizationsDecisionDetail& GetOrganizationsDecisionDetail() const { return m_organizationsDecisionDetail; }
136 inline bool OrganizationsDecisionDetailHasBeenSet() const { return m_organizationsDecisionDetailHasBeenSet; }
137 template<typename OrganizationsDecisionDetailT = OrganizationsDecisionDetail>
138 void SetOrganizationsDecisionDetail(OrganizationsDecisionDetailT&& value) { m_organizationsDecisionDetailHasBeenSet = true; m_organizationsDecisionDetail = std::forward<OrganizationsDecisionDetailT>(value); }
139 template<typename OrganizationsDecisionDetailT = OrganizationsDecisionDetail>
140 EvaluationResult& WithOrganizationsDecisionDetail(OrganizationsDecisionDetailT&& value) { SetOrganizationsDecisionDetail(std::forward<OrganizationsDecisionDetailT>(value)); return *this;}
142
144
148 inline const PermissionsBoundaryDecisionDetail& GetPermissionsBoundaryDecisionDetail() const { return m_permissionsBoundaryDecisionDetail; }
149 inline bool PermissionsBoundaryDecisionDetailHasBeenSet() const { return m_permissionsBoundaryDecisionDetailHasBeenSet; }
150 template<typename PermissionsBoundaryDecisionDetailT = PermissionsBoundaryDecisionDetail>
151 void SetPermissionsBoundaryDecisionDetail(PermissionsBoundaryDecisionDetailT&& value) { m_permissionsBoundaryDecisionDetailHasBeenSet = true; m_permissionsBoundaryDecisionDetail = std::forward<PermissionsBoundaryDecisionDetailT>(value); }
152 template<typename PermissionsBoundaryDecisionDetailT = PermissionsBoundaryDecisionDetail>
153 EvaluationResult& WithPermissionsBoundaryDecisionDetail(PermissionsBoundaryDecisionDetailT&& value) { SetPermissionsBoundaryDecisionDetail(std::forward<PermissionsBoundaryDecisionDetailT>(value)); return *this;}
155
157
174 inline const Aws::Map<Aws::String, PolicyEvaluationDecisionType>& GetEvalDecisionDetails() const { return m_evalDecisionDetails; }
175 inline bool EvalDecisionDetailsHasBeenSet() const { return m_evalDecisionDetailsHasBeenSet; }
176 template<typename EvalDecisionDetailsT = Aws::Map<Aws::String, PolicyEvaluationDecisionType>>
177 void SetEvalDecisionDetails(EvalDecisionDetailsT&& value) { m_evalDecisionDetailsHasBeenSet = true; m_evalDecisionDetails = std::forward<EvalDecisionDetailsT>(value); }
178 template<typename EvalDecisionDetailsT = Aws::Map<Aws::String, PolicyEvaluationDecisionType>>
179 EvaluationResult& WithEvalDecisionDetails(EvalDecisionDetailsT&& value) { SetEvalDecisionDetails(std::forward<EvalDecisionDetailsT>(value)); return *this;}
181 m_evalDecisionDetailsHasBeenSet = true; m_evalDecisionDetails.emplace(key, value); return *this;
182 }
184
186
190 inline const Aws::Vector<ResourceSpecificResult>& GetResourceSpecificResults() const { return m_resourceSpecificResults; }
191 inline bool ResourceSpecificResultsHasBeenSet() const { return m_resourceSpecificResultsHasBeenSet; }
192 template<typename ResourceSpecificResultsT = Aws::Vector<ResourceSpecificResult>>
193 void SetResourceSpecificResults(ResourceSpecificResultsT&& value) { m_resourceSpecificResultsHasBeenSet = true; m_resourceSpecificResults = std::forward<ResourceSpecificResultsT>(value); }
194 template<typename ResourceSpecificResultsT = Aws::Vector<ResourceSpecificResult>>
195 EvaluationResult& WithResourceSpecificResults(ResourceSpecificResultsT&& value) { SetResourceSpecificResults(std::forward<ResourceSpecificResultsT>(value)); return *this;}
196 template<typename ResourceSpecificResultsT = ResourceSpecificResult>
197 EvaluationResult& AddResourceSpecificResults(ResourceSpecificResultsT&& value) { m_resourceSpecificResultsHasBeenSet = true; m_resourceSpecificResults.emplace_back(std::forward<ResourceSpecificResultsT>(value)); return *this; }
199 private:
200
201 Aws::String m_evalActionName;
202 bool m_evalActionNameHasBeenSet = false;
203
204 Aws::String m_evalResourceName;
205 bool m_evalResourceNameHasBeenSet = false;
206
208 bool m_evalDecisionHasBeenSet = false;
209
210 Aws::Vector<Statement> m_matchedStatements;
211 bool m_matchedStatementsHasBeenSet = false;
212
213 Aws::Vector<Aws::String> m_missingContextValues;
214 bool m_missingContextValuesHasBeenSet = false;
215
216 OrganizationsDecisionDetail m_organizationsDecisionDetail;
217 bool m_organizationsDecisionDetailHasBeenSet = false;
218
219 PermissionsBoundaryDecisionDetail m_permissionsBoundaryDecisionDetail;
220 bool m_permissionsBoundaryDecisionDetailHasBeenSet = false;
221
223 bool m_evalDecisionDetailsHasBeenSet = false;
224
225 Aws::Vector<ResourceSpecificResult> m_resourceSpecificResults;
226 bool m_resourceSpecificResultsHasBeenSet = false;
227 };
228
229} // namespace Model
230} // namespace IAM
231} // namespace Aws
void SetMissingContextValues(MissingContextValuesT &&value)
const Aws::Map< Aws::String, PolicyEvaluationDecisionType > & GetEvalDecisionDetails() const
const OrganizationsDecisionDetail & GetOrganizationsDecisionDetail() const
AWS_IAM_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const Aws::Vector< ResourceSpecificResult > & GetResourceSpecificResults() const
const Aws::Vector< Statement > & GetMatchedStatements() const
EvaluationResult & WithPermissionsBoundaryDecisionDetail(PermissionsBoundaryDecisionDetailT &&value)
bool PermissionsBoundaryDecisionDetailHasBeenSet() const
EvaluationResult & AddMatchedStatements(MatchedStatementsT &&value)
void SetEvalResourceName(EvalResourceNameT &&value)
EvaluationResult & AddEvalDecisionDetails(Aws::String key, PolicyEvaluationDecisionType value)
AWS_IAM_API EvaluationResult & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetMatchedStatements(MatchedStatementsT &&value)
void SetEvalActionName(EvalActionNameT &&value)
EvaluationResult & WithResourceSpecificResults(ResourceSpecificResultsT &&value)
EvaluationResult & WithEvalActionName(EvalActionNameT &&value)
EvaluationResult & AddResourceSpecificResults(ResourceSpecificResultsT &&value)
EvaluationResult & WithEvalDecision(PolicyEvaluationDecisionType value)
void SetResourceSpecificResults(ResourceSpecificResultsT &&value)
PolicyEvaluationDecisionType GetEvalDecision() const
EvaluationResult & WithEvalDecisionDetails(EvalDecisionDetailsT &&value)
const Aws::String & GetEvalResourceName() const
EvaluationResult & WithMissingContextValues(MissingContextValuesT &&value)
const PermissionsBoundaryDecisionDetail & GetPermissionsBoundaryDecisionDetail() const
const Aws::String & GetEvalActionName() const
EvaluationResult & AddMissingContextValues(MissingContextValuesT &&value)
void SetOrganizationsDecisionDetail(OrganizationsDecisionDetailT &&value)
void SetPermissionsBoundaryDecisionDetail(PermissionsBoundaryDecisionDetailT &&value)
const Aws::Vector< Aws::String > & GetMissingContextValues() const
AWS_IAM_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetEvalDecisionDetails(EvalDecisionDetailsT &&value)
EvaluationResult & WithOrganizationsDecisionDetail(OrganizationsDecisionDetailT &&value)
void SetEvalDecision(PolicyEvaluationDecisionType value)
EvaluationResult & WithEvalResourceName(EvalResourceNameT &&value)
AWS_IAM_API EvaluationResult()=default
AWS_IAM_API EvaluationResult(const Aws::Utils::Xml::XmlNode &xmlNode)
EvaluationResult & WithMatchedStatements(MatchedStatementsT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
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