AWS SDK for C++  0.14.3
AWS SDK for C++
EvaluationResult.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
16 #include <aws/iam/IAM_EXPORTS.h>
24 
25 namespace Aws
26 {
27 namespace Utils
28 {
29 namespace Xml
30 {
31  class XmlNode;
32 } // namespace Xml
33 } // namespace Utils
34 namespace IAM
35 {
36 namespace Model
37 {
38 
45  {
46  public:
49  EvaluationResult& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
50 
51  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
52  void OutputToStream(Aws::OStream& oStream, const char* location) const;
53 
57  inline const Aws::String& GetEvalActionName() const{ return m_evalActionName; }
58 
62  inline void SetEvalActionName(const Aws::String& value) { m_evalActionNameHasBeenSet = true; m_evalActionName = value; }
63 
67  inline void SetEvalActionName(Aws::String&& value) { m_evalActionNameHasBeenSet = true; m_evalActionName = value; }
68 
72  inline void SetEvalActionName(const char* value) { m_evalActionNameHasBeenSet = true; m_evalActionName.assign(value); }
73 
77  inline EvaluationResult& WithEvalActionName(const Aws::String& value) { SetEvalActionName(value); return *this;}
78 
82  inline EvaluationResult& WithEvalActionName(Aws::String&& value) { SetEvalActionName(value); return *this;}
83 
87  inline EvaluationResult& WithEvalActionName(const char* value) { SetEvalActionName(value); return *this;}
88 
92  inline const Aws::String& GetEvalResourceName() const{ return m_evalResourceName; }
93 
97  inline void SetEvalResourceName(const Aws::String& value) { m_evalResourceNameHasBeenSet = true; m_evalResourceName = value; }
98 
102  inline void SetEvalResourceName(Aws::String&& value) { m_evalResourceNameHasBeenSet = true; m_evalResourceName = value; }
103 
107  inline void SetEvalResourceName(const char* value) { m_evalResourceNameHasBeenSet = true; m_evalResourceName.assign(value); }
108 
112  inline EvaluationResult& WithEvalResourceName(const Aws::String& value) { SetEvalResourceName(value); return *this;}
113 
117  inline EvaluationResult& WithEvalResourceName(Aws::String&& value) { SetEvalResourceName(value); return *this;}
118 
122  inline EvaluationResult& WithEvalResourceName(const char* value) { SetEvalResourceName(value); return *this;}
123 
127  inline const PolicyEvaluationDecisionType& GetEvalDecision() const{ return m_evalDecision; }
128 
132  inline void SetEvalDecision(const PolicyEvaluationDecisionType& value) { m_evalDecisionHasBeenSet = true; m_evalDecision = value; }
133 
137  inline void SetEvalDecision(PolicyEvaluationDecisionType&& value) { m_evalDecisionHasBeenSet = true; m_evalDecision = value; }
138 
142  inline EvaluationResult& WithEvalDecision(const PolicyEvaluationDecisionType& value) { SetEvalDecision(value); return *this;}
143 
147  inline EvaluationResult& WithEvalDecision(PolicyEvaluationDecisionType&& value) { SetEvalDecision(value); return *this;}
148 
156  inline const Aws::Vector<Statement>& GetMatchedStatements() const{ return m_matchedStatements; }
157 
165  inline void SetMatchedStatements(const Aws::Vector<Statement>& value) { m_matchedStatementsHasBeenSet = true; m_matchedStatements = value; }
166 
174  inline void SetMatchedStatements(Aws::Vector<Statement>&& value) { m_matchedStatementsHasBeenSet = true; m_matchedStatements = value; }
175 
183  inline EvaluationResult& WithMatchedStatements(const Aws::Vector<Statement>& value) { SetMatchedStatements(value); return *this;}
184 
192  inline EvaluationResult& WithMatchedStatements(Aws::Vector<Statement>&& value) { SetMatchedStatements(value); return *this;}
193 
201  inline EvaluationResult& AddMatchedStatements(const Statement& value) { m_matchedStatementsHasBeenSet = true; m_matchedStatements.push_back(value); return *this; }
202 
210  inline EvaluationResult& AddMatchedStatements(Statement&& value) { m_matchedStatementsHasBeenSet = true; m_matchedStatements.push_back(value); return *this; }
211 
222  inline const Aws::Vector<Aws::String>& GetMissingContextValues() const{ return m_missingContextValues; }
223 
234  inline void SetMissingContextValues(const Aws::Vector<Aws::String>& value) { m_missingContextValuesHasBeenSet = true; m_missingContextValues = value; }
235 
246  inline void SetMissingContextValues(Aws::Vector<Aws::String>&& value) { m_missingContextValuesHasBeenSet = true; m_missingContextValues = value; }
247 
258  inline EvaluationResult& WithMissingContextValues(const Aws::Vector<Aws::String>& value) { SetMissingContextValues(value); return *this;}
259 
270  inline EvaluationResult& WithMissingContextValues(Aws::Vector<Aws::String>&& value) { SetMissingContextValues(value); return *this;}
271 
282  inline EvaluationResult& AddMissingContextValues(const Aws::String& value) { m_missingContextValuesHasBeenSet = true; m_missingContextValues.push_back(value); return *this; }
283 
294  inline EvaluationResult& AddMissingContextValues(Aws::String&& value) { m_missingContextValuesHasBeenSet = true; m_missingContextValues.push_back(value); return *this; }
295 
306  inline EvaluationResult& AddMissingContextValues(const char* value) { m_missingContextValuesHasBeenSet = true; m_missingContextValues.push_back(value); return *this; }
307 
317  inline const Aws::Map<Aws::String, PolicyEvaluationDecisionType>& GetEvalDecisionDetails() const{ return m_evalDecisionDetails; }
318 
328  inline void SetEvalDecisionDetails(const Aws::Map<Aws::String, PolicyEvaluationDecisionType>& value) { m_evalDecisionDetailsHasBeenSet = true; m_evalDecisionDetails = value; }
329 
339  inline void SetEvalDecisionDetails(Aws::Map<Aws::String, PolicyEvaluationDecisionType>&& value) { m_evalDecisionDetailsHasBeenSet = true; m_evalDecisionDetails = value; }
340 
350  inline EvaluationResult& WithEvalDecisionDetails(const Aws::Map<Aws::String, PolicyEvaluationDecisionType>& value) { SetEvalDecisionDetails(value); return *this;}
351 
361  inline EvaluationResult& WithEvalDecisionDetails(Aws::Map<Aws::String, PolicyEvaluationDecisionType>&& value) { SetEvalDecisionDetails(value); return *this;}
362 
372  inline EvaluationResult& AddEvalDecisionDetails(const Aws::String& key, const PolicyEvaluationDecisionType& value) { m_evalDecisionDetailsHasBeenSet = true; m_evalDecisionDetails[key] = value; return *this; }
373 
383  inline EvaluationResult& AddEvalDecisionDetails(Aws::String&& key, const PolicyEvaluationDecisionType& value) { m_evalDecisionDetailsHasBeenSet = true; m_evalDecisionDetails[key] = value; return *this; }
384 
394  inline EvaluationResult& AddEvalDecisionDetails(const Aws::String& key, PolicyEvaluationDecisionType&& value) { m_evalDecisionDetailsHasBeenSet = true; m_evalDecisionDetails[key] = value; return *this; }
395 
405  inline EvaluationResult& AddEvalDecisionDetails(Aws::String&& key, PolicyEvaluationDecisionType&& value) { m_evalDecisionDetailsHasBeenSet = true; m_evalDecisionDetails[key] = value; return *this; }
406 
416  inline EvaluationResult& AddEvalDecisionDetails(const char* key, PolicyEvaluationDecisionType&& value) { m_evalDecisionDetailsHasBeenSet = true; m_evalDecisionDetails[key] = value; return *this; }
417 
427  inline EvaluationResult& AddEvalDecisionDetails(const char* key, const PolicyEvaluationDecisionType& value) { m_evalDecisionDetailsHasBeenSet = true; m_evalDecisionDetails[key] = value; return *this; }
428 
433  inline const Aws::Vector<ResourceSpecificResult>& GetResourceSpecificResults() const{ return m_resourceSpecificResults; }
434 
439  inline void SetResourceSpecificResults(const Aws::Vector<ResourceSpecificResult>& value) { m_resourceSpecificResultsHasBeenSet = true; m_resourceSpecificResults = value; }
440 
445  inline void SetResourceSpecificResults(Aws::Vector<ResourceSpecificResult>&& value) { m_resourceSpecificResultsHasBeenSet = true; m_resourceSpecificResults = value; }
446 
451  inline EvaluationResult& WithResourceSpecificResults(const Aws::Vector<ResourceSpecificResult>& value) { SetResourceSpecificResults(value); return *this;}
452 
457  inline EvaluationResult& WithResourceSpecificResults(Aws::Vector<ResourceSpecificResult>&& value) { SetResourceSpecificResults(value); return *this;}
458 
463  inline EvaluationResult& AddResourceSpecificResults(const ResourceSpecificResult& value) { m_resourceSpecificResultsHasBeenSet = true; m_resourceSpecificResults.push_back(value); return *this; }
464 
469  inline EvaluationResult& AddResourceSpecificResults(ResourceSpecificResult&& value) { m_resourceSpecificResultsHasBeenSet = true; m_resourceSpecificResults.push_back(value); return *this; }
470 
471  private:
472  Aws::String m_evalActionName;
473  bool m_evalActionNameHasBeenSet;
474  Aws::String m_evalResourceName;
475  bool m_evalResourceNameHasBeenSet;
476  PolicyEvaluationDecisionType m_evalDecision;
477  bool m_evalDecisionHasBeenSet;
478  Aws::Vector<Statement> m_matchedStatements;
479  bool m_matchedStatementsHasBeenSet;
480  Aws::Vector<Aws::String> m_missingContextValues;
481  bool m_missingContextValuesHasBeenSet;
483  bool m_evalDecisionDetailsHasBeenSet;
484  Aws::Vector<ResourceSpecificResult> m_resourceSpecificResults;
485  bool m_resourceSpecificResultsHasBeenSet;
486  };
487 
488 } // namespace Model
489 } // namespace IAM
490 } // namespace Aws
void SetEvalActionName(Aws::String &&value)
const Aws::Vector< ResourceSpecificResult > & GetResourceSpecificResults() const
void SetMissingContextValues(const Aws::Vector< Aws::String > &value)
void SetEvalDecision(PolicyEvaluationDecisionType &&value)
EvaluationResult & WithEvalResourceName(Aws::String &&value)
void SetEvalResourceName(const char *value)
EvaluationResult & AddEvalDecisionDetails(const char *key, PolicyEvaluationDecisionType &&value)
const PolicyEvaluationDecisionType & GetEvalDecision() const
EvaluationResult & WithEvalActionName(const Aws::String &value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
void SetEvalDecisionDetails(const Aws::Map< Aws::String, PolicyEvaluationDecisionType > &value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
Definition: AWSMap.h:28
EvaluationResult & WithMissingContextValues(Aws::Vector< Aws::String > &&value)
EvaluationResult & WithEvalResourceName(const Aws::String &value)
EvaluationResult & AddEvalDecisionDetails(const char *key, const PolicyEvaluationDecisionType &value)
const Aws::Map< Aws::String, PolicyEvaluationDecisionType > & GetEvalDecisionDetails() const
const Aws::Vector< Statement > & GetMatchedStatements() const
EvaluationResult & WithMatchedStatements(const Aws::Vector< Statement > &value)
void SetEvalResourceName(Aws::String &&value)
void SetEvalDecision(const PolicyEvaluationDecisionType &value)
void SetEvalActionName(const Aws::String &value)
EvaluationResult & WithEvalDecisionDetails(Aws::Map< Aws::String, PolicyEvaluationDecisionType > &&value)
EvaluationResult & AddMatchedStatements(Statement &&value)
const Aws::Vector< Aws::String > & GetMissingContextValues() const
void SetMissingContextValues(Aws::Vector< Aws::String > &&value)
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
EvaluationResult & AddResourceSpecificResults(ResourceSpecificResult &&value)
EvaluationResult & WithEvalDecision(const PolicyEvaluationDecisionType &value)
EvaluationResult & AddResourceSpecificResults(const ResourceSpecificResult &value)
void SetMatchedStatements(Aws::Vector< Statement > &&value)
void SetEvalActionName(const char *value)
EvaluationResult & AddMatchedStatements(const Statement &value)
EvaluationResult & WithResourceSpecificResults(const Aws::Vector< ResourceSpecificResult > &value)
EvaluationResult & AddEvalDecisionDetails(Aws::String &&key, const PolicyEvaluationDecisionType &value)
EvaluationResult & WithResourceSpecificResults(Aws::Vector< ResourceSpecificResult > &&value)
EvaluationResult & WithEvalDecision(PolicyEvaluationDecisionType &&value)
EvaluationResult & WithEvalResourceName(const char *value)
EvaluationResult & AddEvalDecisionDetails(const Aws::String &key, PolicyEvaluationDecisionType &&value)
void SetEvalDecisionDetails(Aws::Map< Aws::String, PolicyEvaluationDecisionType > &&value)
EvaluationResult & WithEvalActionName(const char *value)
EvaluationResult & WithMatchedStatements(Aws::Vector< Statement > &&value)
EvaluationResult & AddEvalDecisionDetails(Aws::String &&key, PolicyEvaluationDecisionType &&value)
const Aws::String & GetEvalResourceName() const
EvaluationResult & AddMissingContextValues(const char *value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
void SetMatchedStatements(const Aws::Vector< Statement > &value)
const Aws::String & GetEvalActionName() const
EvaluationResult & WithEvalDecisionDetails(const Aws::Map< Aws::String, PolicyEvaluationDecisionType > &value)
EvaluationResult & WithEvalActionName(Aws::String &&value)
EvaluationResult & AddMissingContextValues(const Aws::String &value)
EvaluationResult & WithMissingContextValues(const Aws::Vector< Aws::String > &value)
#define AWS_IAM_API
Definition: IAM_EXPORTS.h:37
EvaluationResult & AddMissingContextValues(Aws::String &&value)
void SetResourceSpecificResults(const Aws::Vector< ResourceSpecificResult > &value)
void SetEvalResourceName(const Aws::String &value)
void SetResourceSpecificResults(Aws::Vector< ResourceSpecificResult > &&value)
EvaluationResult & AddEvalDecisionDetails(const Aws::String &key, const PolicyEvaluationDecisionType &value)
JSON (JavaScript Object Notation).