1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/config/ConfigService_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSVector.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/config/model/EvaluationResult.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 template<typename RESULT_TYPE>
16 class AmazonWebServiceResult;
17 
18 namespace Utils
19 {
20 namespace Json
21 {
22   class JsonValue;
23 } // namespace Json
24 } // namespace Utils
25 namespace ConfigService
26 {
27 namespace Model
28 {
29   /**
30    * <p/><p><h3>See Also:</h3>   <a
31    * href="http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/GetComplianceDetailsByConfigRuleResponse">AWS
32    * API Reference</a></p>
33    */
34   class AWS_CONFIGSERVICE_API GetComplianceDetailsByConfigRuleResult
35   {
36   public:
37     GetComplianceDetailsByConfigRuleResult();
38     GetComplianceDetailsByConfigRuleResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
39     GetComplianceDetailsByConfigRuleResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
40 
41 
42     /**
43      * <p>Indicates whether the Amazon Web Services resource complies with the
44      * specified Config rule.</p>
45      */
GetEvaluationResults()46     inline const Aws::Vector<EvaluationResult>& GetEvaluationResults() const{ return m_evaluationResults; }
47 
48     /**
49      * <p>Indicates whether the Amazon Web Services resource complies with the
50      * specified Config rule.</p>
51      */
SetEvaluationResults(const Aws::Vector<EvaluationResult> & value)52     inline void SetEvaluationResults(const Aws::Vector<EvaluationResult>& value) { m_evaluationResults = value; }
53 
54     /**
55      * <p>Indicates whether the Amazon Web Services resource complies with the
56      * specified Config rule.</p>
57      */
SetEvaluationResults(Aws::Vector<EvaluationResult> && value)58     inline void SetEvaluationResults(Aws::Vector<EvaluationResult>&& value) { m_evaluationResults = std::move(value); }
59 
60     /**
61      * <p>Indicates whether the Amazon Web Services resource complies with the
62      * specified Config rule.</p>
63      */
WithEvaluationResults(const Aws::Vector<EvaluationResult> & value)64     inline GetComplianceDetailsByConfigRuleResult& WithEvaluationResults(const Aws::Vector<EvaluationResult>& value) { SetEvaluationResults(value); return *this;}
65 
66     /**
67      * <p>Indicates whether the Amazon Web Services resource complies with the
68      * specified Config rule.</p>
69      */
WithEvaluationResults(Aws::Vector<EvaluationResult> && value)70     inline GetComplianceDetailsByConfigRuleResult& WithEvaluationResults(Aws::Vector<EvaluationResult>&& value) { SetEvaluationResults(std::move(value)); return *this;}
71 
72     /**
73      * <p>Indicates whether the Amazon Web Services resource complies with the
74      * specified Config rule.</p>
75      */
AddEvaluationResults(const EvaluationResult & value)76     inline GetComplianceDetailsByConfigRuleResult& AddEvaluationResults(const EvaluationResult& value) { m_evaluationResults.push_back(value); return *this; }
77 
78     /**
79      * <p>Indicates whether the Amazon Web Services resource complies with the
80      * specified Config rule.</p>
81      */
AddEvaluationResults(EvaluationResult && value)82     inline GetComplianceDetailsByConfigRuleResult& AddEvaluationResults(EvaluationResult&& value) { m_evaluationResults.push_back(std::move(value)); return *this; }
83 
84 
85     /**
86      * <p>The string that you use in a subsequent request to get the next page of
87      * results in a paginated response.</p>
88      */
GetNextToken()89     inline const Aws::String& GetNextToken() const{ return m_nextToken; }
90 
91     /**
92      * <p>The string that you use in a subsequent request to get the next page of
93      * results in a paginated response.</p>
94      */
SetNextToken(const Aws::String & value)95     inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
96 
97     /**
98      * <p>The string that you use in a subsequent request to get the next page of
99      * results in a paginated response.</p>
100      */
SetNextToken(Aws::String && value)101     inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
102 
103     /**
104      * <p>The string that you use in a subsequent request to get the next page of
105      * results in a paginated response.</p>
106      */
SetNextToken(const char * value)107     inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
108 
109     /**
110      * <p>The string that you use in a subsequent request to get the next page of
111      * results in a paginated response.</p>
112      */
WithNextToken(const Aws::String & value)113     inline GetComplianceDetailsByConfigRuleResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
114 
115     /**
116      * <p>The string that you use in a subsequent request to get the next page of
117      * results in a paginated response.</p>
118      */
WithNextToken(Aws::String && value)119     inline GetComplianceDetailsByConfigRuleResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
120 
121     /**
122      * <p>The string that you use in a subsequent request to get the next page of
123      * results in a paginated response.</p>
124      */
WithNextToken(const char * value)125     inline GetComplianceDetailsByConfigRuleResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
126 
127   private:
128 
129     Aws::Vector<EvaluationResult> m_evaluationResults;
130 
131     Aws::String m_nextToken;
132   };
133 
134 } // namespace Model
135 } // namespace ConfigService
136 } // namespace Aws
137