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/config/ConfigServiceRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/config/model/StatusDetailFilters.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace ConfigService
16 {
17 namespace Model
18 {
19 
20   /**
21    */
22   class AWS_CONFIGSERVICE_API GetOrganizationConfigRuleDetailedStatusRequest : public ConfigServiceRequest
23   {
24   public:
25     GetOrganizationConfigRuleDetailedStatusRequest();
26 
27     // Service request name is the Operation name which will send this request out,
28     // each operation should has unique request name, so that we can get operation's name from this request.
29     // Note: this is not true for response, multiple operations may have the same response name,
30     // so we can not get operation's name from response.
GetServiceRequestName()31     inline virtual const char* GetServiceRequestName() const override { return "GetOrganizationConfigRuleDetailedStatus"; }
32 
33     Aws::String SerializePayload() const override;
34 
35     Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
36 
37 
38     /**
39      * <p>The name of organization config rule for which you want status details for
40      * member accounts.</p>
41      */
GetOrganizationConfigRuleName()42     inline const Aws::String& GetOrganizationConfigRuleName() const{ return m_organizationConfigRuleName; }
43 
44     /**
45      * <p>The name of organization config rule for which you want status details for
46      * member accounts.</p>
47      */
OrganizationConfigRuleNameHasBeenSet()48     inline bool OrganizationConfigRuleNameHasBeenSet() const { return m_organizationConfigRuleNameHasBeenSet; }
49 
50     /**
51      * <p>The name of organization config rule for which you want status details for
52      * member accounts.</p>
53      */
SetOrganizationConfigRuleName(const Aws::String & value)54     inline void SetOrganizationConfigRuleName(const Aws::String& value) { m_organizationConfigRuleNameHasBeenSet = true; m_organizationConfigRuleName = value; }
55 
56     /**
57      * <p>The name of organization config rule for which you want status details for
58      * member accounts.</p>
59      */
SetOrganizationConfigRuleName(Aws::String && value)60     inline void SetOrganizationConfigRuleName(Aws::String&& value) { m_organizationConfigRuleNameHasBeenSet = true; m_organizationConfigRuleName = std::move(value); }
61 
62     /**
63      * <p>The name of organization config rule for which you want status details for
64      * member accounts.</p>
65      */
SetOrganizationConfigRuleName(const char * value)66     inline void SetOrganizationConfigRuleName(const char* value) { m_organizationConfigRuleNameHasBeenSet = true; m_organizationConfigRuleName.assign(value); }
67 
68     /**
69      * <p>The name of organization config rule for which you want status details for
70      * member accounts.</p>
71      */
WithOrganizationConfigRuleName(const Aws::String & value)72     inline GetOrganizationConfigRuleDetailedStatusRequest& WithOrganizationConfigRuleName(const Aws::String& value) { SetOrganizationConfigRuleName(value); return *this;}
73 
74     /**
75      * <p>The name of organization config rule for which you want status details for
76      * member accounts.</p>
77      */
WithOrganizationConfigRuleName(Aws::String && value)78     inline GetOrganizationConfigRuleDetailedStatusRequest& WithOrganizationConfigRuleName(Aws::String&& value) { SetOrganizationConfigRuleName(std::move(value)); return *this;}
79 
80     /**
81      * <p>The name of organization config rule for which you want status details for
82      * member accounts.</p>
83      */
WithOrganizationConfigRuleName(const char * value)84     inline GetOrganizationConfigRuleDetailedStatusRequest& WithOrganizationConfigRuleName(const char* value) { SetOrganizationConfigRuleName(value); return *this;}
85 
86 
87     /**
88      * <p>A <code>StatusDetailFilters</code> object.</p>
89      */
GetFilters()90     inline const StatusDetailFilters& GetFilters() const{ return m_filters; }
91 
92     /**
93      * <p>A <code>StatusDetailFilters</code> object.</p>
94      */
FiltersHasBeenSet()95     inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; }
96 
97     /**
98      * <p>A <code>StatusDetailFilters</code> object.</p>
99      */
SetFilters(const StatusDetailFilters & value)100     inline void SetFilters(const StatusDetailFilters& value) { m_filtersHasBeenSet = true; m_filters = value; }
101 
102     /**
103      * <p>A <code>StatusDetailFilters</code> object.</p>
104      */
SetFilters(StatusDetailFilters && value)105     inline void SetFilters(StatusDetailFilters&& value) { m_filtersHasBeenSet = true; m_filters = std::move(value); }
106 
107     /**
108      * <p>A <code>StatusDetailFilters</code> object.</p>
109      */
WithFilters(const StatusDetailFilters & value)110     inline GetOrganizationConfigRuleDetailedStatusRequest& WithFilters(const StatusDetailFilters& value) { SetFilters(value); return *this;}
111 
112     /**
113      * <p>A <code>StatusDetailFilters</code> object.</p>
114      */
WithFilters(StatusDetailFilters && value)115     inline GetOrganizationConfigRuleDetailedStatusRequest& WithFilters(StatusDetailFilters&& value) { SetFilters(std::move(value)); return *this;}
116 
117 
118     /**
119      * <p>The maximum number of <code>OrganizationConfigRuleDetailedStatus</code>
120      * returned on each page. If you do not specify a number, Config uses the default.
121      * The default is 100.</p>
122      */
GetLimit()123     inline int GetLimit() const{ return m_limit; }
124 
125     /**
126      * <p>The maximum number of <code>OrganizationConfigRuleDetailedStatus</code>
127      * returned on each page. If you do not specify a number, Config uses the default.
128      * The default is 100.</p>
129      */
LimitHasBeenSet()130     inline bool LimitHasBeenSet() const { return m_limitHasBeenSet; }
131 
132     /**
133      * <p>The maximum number of <code>OrganizationConfigRuleDetailedStatus</code>
134      * returned on each page. If you do not specify a number, Config uses the default.
135      * The default is 100.</p>
136      */
SetLimit(int value)137     inline void SetLimit(int value) { m_limitHasBeenSet = true; m_limit = value; }
138 
139     /**
140      * <p>The maximum number of <code>OrganizationConfigRuleDetailedStatus</code>
141      * returned on each page. If you do not specify a number, Config uses the default.
142      * The default is 100.</p>
143      */
WithLimit(int value)144     inline GetOrganizationConfigRuleDetailedStatusRequest& WithLimit(int value) { SetLimit(value); return *this;}
145 
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      */
GetNextToken()151     inline const Aws::String& GetNextToken() const{ return m_nextToken; }
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      */
NextTokenHasBeenSet()157     inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; }
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      */
SetNextToken(const Aws::String & value)163     inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; }
164 
165     /**
166      * <p>The <code>nextToken</code> string returned on a previous page that you use to
167      * get the next page of results in a paginated response. </p>
168      */
SetNextToken(Aws::String && value)169     inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); }
170 
171     /**
172      * <p>The <code>nextToken</code> string returned on a previous page that you use to
173      * get the next page of results in a paginated response. </p>
174      */
SetNextToken(const char * value)175     inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); }
176 
177     /**
178      * <p>The <code>nextToken</code> string returned on a previous page that you use to
179      * get the next page of results in a paginated response. </p>
180      */
WithNextToken(const Aws::String & value)181     inline GetOrganizationConfigRuleDetailedStatusRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
182 
183     /**
184      * <p>The <code>nextToken</code> string returned on a previous page that you use to
185      * get the next page of results in a paginated response. </p>
186      */
WithNextToken(Aws::String && value)187     inline GetOrganizationConfigRuleDetailedStatusRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
188 
189     /**
190      * <p>The <code>nextToken</code> string returned on a previous page that you use to
191      * get the next page of results in a paginated response. </p>
192      */
WithNextToken(const char * value)193     inline GetOrganizationConfigRuleDetailedStatusRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;}
194 
195   private:
196 
197     Aws::String m_organizationConfigRuleName;
198     bool m_organizationConfigRuleNameHasBeenSet;
199 
200     StatusDetailFilters m_filters;
201     bool m_filtersHasBeenSet;
202 
203     int m_limit;
204     bool m_limitHasBeenSet;
205 
206     Aws::String m_nextToken;
207     bool m_nextTokenHasBeenSet;
208   };
209 
210 } // namespace Model
211 } // namespace ConfigService
212 } // namespace Aws
213