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/AggregateConformancePackComplianceSummary.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   class AWS_CONFIGSERVICE_API GetAggregateConformancePackComplianceSummaryResult
30   {
31   public:
32     GetAggregateConformancePackComplianceSummaryResult();
33     GetAggregateConformancePackComplianceSummaryResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
34     GetAggregateConformancePackComplianceSummaryResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
35 
36 
37     /**
38      * <p>Returns a list of <code>AggregateConformancePackComplianceSummary</code>
39      * object.</p>
40      */
GetAggregateConformancePackComplianceSummaries()41     inline const Aws::Vector<AggregateConformancePackComplianceSummary>& GetAggregateConformancePackComplianceSummaries() const{ return m_aggregateConformancePackComplianceSummaries; }
42 
43     /**
44      * <p>Returns a list of <code>AggregateConformancePackComplianceSummary</code>
45      * object.</p>
46      */
SetAggregateConformancePackComplianceSummaries(const Aws::Vector<AggregateConformancePackComplianceSummary> & value)47     inline void SetAggregateConformancePackComplianceSummaries(const Aws::Vector<AggregateConformancePackComplianceSummary>& value) { m_aggregateConformancePackComplianceSummaries = value; }
48 
49     /**
50      * <p>Returns a list of <code>AggregateConformancePackComplianceSummary</code>
51      * object.</p>
52      */
SetAggregateConformancePackComplianceSummaries(Aws::Vector<AggregateConformancePackComplianceSummary> && value)53     inline void SetAggregateConformancePackComplianceSummaries(Aws::Vector<AggregateConformancePackComplianceSummary>&& value) { m_aggregateConformancePackComplianceSummaries = std::move(value); }
54 
55     /**
56      * <p>Returns a list of <code>AggregateConformancePackComplianceSummary</code>
57      * object.</p>
58      */
WithAggregateConformancePackComplianceSummaries(const Aws::Vector<AggregateConformancePackComplianceSummary> & value)59     inline GetAggregateConformancePackComplianceSummaryResult& WithAggregateConformancePackComplianceSummaries(const Aws::Vector<AggregateConformancePackComplianceSummary>& value) { SetAggregateConformancePackComplianceSummaries(value); return *this;}
60 
61     /**
62      * <p>Returns a list of <code>AggregateConformancePackComplianceSummary</code>
63      * object.</p>
64      */
WithAggregateConformancePackComplianceSummaries(Aws::Vector<AggregateConformancePackComplianceSummary> && value)65     inline GetAggregateConformancePackComplianceSummaryResult& WithAggregateConformancePackComplianceSummaries(Aws::Vector<AggregateConformancePackComplianceSummary>&& value) { SetAggregateConformancePackComplianceSummaries(std::move(value)); return *this;}
66 
67     /**
68      * <p>Returns a list of <code>AggregateConformancePackComplianceSummary</code>
69      * object.</p>
70      */
AddAggregateConformancePackComplianceSummaries(const AggregateConformancePackComplianceSummary & value)71     inline GetAggregateConformancePackComplianceSummaryResult& AddAggregateConformancePackComplianceSummaries(const AggregateConformancePackComplianceSummary& value) { m_aggregateConformancePackComplianceSummaries.push_back(value); return *this; }
72 
73     /**
74      * <p>Returns a list of <code>AggregateConformancePackComplianceSummary</code>
75      * object.</p>
76      */
AddAggregateConformancePackComplianceSummaries(AggregateConformancePackComplianceSummary && value)77     inline GetAggregateConformancePackComplianceSummaryResult& AddAggregateConformancePackComplianceSummaries(AggregateConformancePackComplianceSummary&& value) { m_aggregateConformancePackComplianceSummaries.push_back(std::move(value)); return *this; }
78 
79 
80     /**
81      * <p>Groups the result based on Amazon Web Services account ID or Amazon Web
82      * Services Region.</p>
83      */
GetGroupByKey()84     inline const Aws::String& GetGroupByKey() const{ return m_groupByKey; }
85 
86     /**
87      * <p>Groups the result based on Amazon Web Services account ID or Amazon Web
88      * Services Region.</p>
89      */
SetGroupByKey(const Aws::String & value)90     inline void SetGroupByKey(const Aws::String& value) { m_groupByKey = value; }
91 
92     /**
93      * <p>Groups the result based on Amazon Web Services account ID or Amazon Web
94      * Services Region.</p>
95      */
SetGroupByKey(Aws::String && value)96     inline void SetGroupByKey(Aws::String&& value) { m_groupByKey = std::move(value); }
97 
98     /**
99      * <p>Groups the result based on Amazon Web Services account ID or Amazon Web
100      * Services Region.</p>
101      */
SetGroupByKey(const char * value)102     inline void SetGroupByKey(const char* value) { m_groupByKey.assign(value); }
103 
104     /**
105      * <p>Groups the result based on Amazon Web Services account ID or Amazon Web
106      * Services Region.</p>
107      */
WithGroupByKey(const Aws::String & value)108     inline GetAggregateConformancePackComplianceSummaryResult& WithGroupByKey(const Aws::String& value) { SetGroupByKey(value); return *this;}
109 
110     /**
111      * <p>Groups the result based on Amazon Web Services account ID or Amazon Web
112      * Services Region.</p>
113      */
WithGroupByKey(Aws::String && value)114     inline GetAggregateConformancePackComplianceSummaryResult& WithGroupByKey(Aws::String&& value) { SetGroupByKey(std::move(value)); return *this;}
115 
116     /**
117      * <p>Groups the result based on Amazon Web Services account ID or Amazon Web
118      * Services Region.</p>
119      */
WithGroupByKey(const char * value)120     inline GetAggregateConformancePackComplianceSummaryResult& WithGroupByKey(const char* value) { SetGroupByKey(value); return *this;}
121 
122 
123     /**
124      * <p>The <code>nextToken</code> string returned on a previous page that you use to
125      * get the next page of results in a paginated response.</p>
126      */
GetNextToken()127     inline const Aws::String& GetNextToken() const{ return m_nextToken; }
128 
129     /**
130      * <p>The <code>nextToken</code> string returned on a previous page that you use to
131      * get the next page of results in a paginated response.</p>
132      */
SetNextToken(const Aws::String & value)133     inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
134 
135     /**
136      * <p>The <code>nextToken</code> string returned on a previous page that you use to
137      * get the next page of results in a paginated response.</p>
138      */
SetNextToken(Aws::String && value)139     inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
140 
141     /**
142      * <p>The <code>nextToken</code> string returned on a previous page that you use to
143      * get the next page of results in a paginated response.</p>
144      */
SetNextToken(const char * value)145     inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
146 
147     /**
148      * <p>The <code>nextToken</code> string returned on a previous page that you use to
149      * get the next page of results in a paginated response.</p>
150      */
WithNextToken(const Aws::String & value)151     inline GetAggregateConformancePackComplianceSummaryResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
152 
153     /**
154      * <p>The <code>nextToken</code> string returned on a previous page that you use to
155      * get the next page of results in a paginated response.</p>
156      */
WithNextToken(Aws::String && value)157     inline GetAggregateConformancePackComplianceSummaryResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
158 
159     /**
160      * <p>The <code>nextToken</code> string returned on a previous page that you use to
161      * get the next page of results in a paginated response.</p>
162      */
WithNextToken(const char * value)163     inline GetAggregateConformancePackComplianceSummaryResult& WithNextToken(const char* value) { SetNextToken(value); return *this;}
164 
165   private:
166 
167     Aws::Vector<AggregateConformancePackComplianceSummary> m_aggregateConformancePackComplianceSummaries;
168 
169     Aws::String m_groupByKey;
170 
171     Aws::String m_nextToken;
172   };
173 
174 } // namespace Model
175 } // namespace ConfigService
176 } // namespace Aws
177