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/cloudformation/CloudFormation_EXPORTS.h> 8 #include <aws/cloudformation/CloudFormationRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSVector.h> 11 #include <aws/cloudformation/model/CallAs.h> 12 #include <aws/cloudformation/model/StackInstanceFilter.h> 13 #include <utility> 14 15 namespace Aws 16 { 17 namespace CloudFormation 18 { 19 namespace Model 20 { 21 22 /** 23 */ 24 class AWS_CLOUDFORMATION_API ListStackInstancesRequest : public CloudFormationRequest 25 { 26 public: 27 ListStackInstancesRequest(); 28 29 // Service request name is the Operation name which will send this request out, 30 // each operation should has unique request name, so that we can get operation's name from this request. 31 // Note: this is not true for response, multiple operations may have the same response name, 32 // so we can not get operation's name from response. GetServiceRequestName()33 inline virtual const char* GetServiceRequestName() const override { return "ListStackInstances"; } 34 35 Aws::String SerializePayload() const override; 36 37 protected: 38 void DumpBodyToUrl(Aws::Http::URI& uri ) const override; 39 40 public: 41 42 /** 43 * <p>The name or unique ID of the stack set that you want to list stack instances 44 * for.</p> 45 */ GetStackSetName()46 inline const Aws::String& GetStackSetName() const{ return m_stackSetName; } 47 48 /** 49 * <p>The name or unique ID of the stack set that you want to list stack instances 50 * for.</p> 51 */ StackSetNameHasBeenSet()52 inline bool StackSetNameHasBeenSet() const { return m_stackSetNameHasBeenSet; } 53 54 /** 55 * <p>The name or unique ID of the stack set that you want to list stack instances 56 * for.</p> 57 */ SetStackSetName(const Aws::String & value)58 inline void SetStackSetName(const Aws::String& value) { m_stackSetNameHasBeenSet = true; m_stackSetName = value; } 59 60 /** 61 * <p>The name or unique ID of the stack set that you want to list stack instances 62 * for.</p> 63 */ SetStackSetName(Aws::String && value)64 inline void SetStackSetName(Aws::String&& value) { m_stackSetNameHasBeenSet = true; m_stackSetName = std::move(value); } 65 66 /** 67 * <p>The name or unique ID of the stack set that you want to list stack instances 68 * for.</p> 69 */ SetStackSetName(const char * value)70 inline void SetStackSetName(const char* value) { m_stackSetNameHasBeenSet = true; m_stackSetName.assign(value); } 71 72 /** 73 * <p>The name or unique ID of the stack set that you want to list stack instances 74 * for.</p> 75 */ WithStackSetName(const Aws::String & value)76 inline ListStackInstancesRequest& WithStackSetName(const Aws::String& value) { SetStackSetName(value); return *this;} 77 78 /** 79 * <p>The name or unique ID of the stack set that you want to list stack instances 80 * for.</p> 81 */ WithStackSetName(Aws::String && value)82 inline ListStackInstancesRequest& WithStackSetName(Aws::String&& value) { SetStackSetName(std::move(value)); return *this;} 83 84 /** 85 * <p>The name or unique ID of the stack set that you want to list stack instances 86 * for.</p> 87 */ WithStackSetName(const char * value)88 inline ListStackInstancesRequest& WithStackSetName(const char* value) { SetStackSetName(value); return *this;} 89 90 91 /** 92 * <p>If the previous request didn't return all of the remaining results, the 93 * response's <code>NextToken</code> parameter value is set to a token. To retrieve 94 * the next set of results, call <code>ListStackInstances</code> again and assign 95 * that token to the request object's <code>NextToken</code> parameter. If there 96 * are no remaining results, the previous response object's <code>NextToken</code> 97 * parameter is set to <code>null</code>.</p> 98 */ GetNextToken()99 inline const Aws::String& GetNextToken() const{ return m_nextToken; } 100 101 /** 102 * <p>If the previous request didn't return all of the remaining results, the 103 * response's <code>NextToken</code> parameter value is set to a token. To retrieve 104 * the next set of results, call <code>ListStackInstances</code> again and assign 105 * that token to the request object's <code>NextToken</code> parameter. If there 106 * are no remaining results, the previous response object's <code>NextToken</code> 107 * parameter is set to <code>null</code>.</p> 108 */ NextTokenHasBeenSet()109 inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } 110 111 /** 112 * <p>If the previous request didn't return all of the remaining results, the 113 * response's <code>NextToken</code> parameter value is set to a token. To retrieve 114 * the next set of results, call <code>ListStackInstances</code> again and assign 115 * that token to the request object's <code>NextToken</code> parameter. If there 116 * are no remaining results, the previous response object's <code>NextToken</code> 117 * parameter is set to <code>null</code>.</p> 118 */ SetNextToken(const Aws::String & value)119 inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } 120 121 /** 122 * <p>If the previous request didn't return all of the remaining results, the 123 * response's <code>NextToken</code> parameter value is set to a token. To retrieve 124 * the next set of results, call <code>ListStackInstances</code> again and assign 125 * that token to the request object's <code>NextToken</code> parameter. If there 126 * are no remaining results, the previous response object's <code>NextToken</code> 127 * parameter is set to <code>null</code>.</p> 128 */ SetNextToken(Aws::String && value)129 inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } 130 131 /** 132 * <p>If the previous request didn't return all of the remaining results, the 133 * response's <code>NextToken</code> parameter value is set to a token. To retrieve 134 * the next set of results, call <code>ListStackInstances</code> again and assign 135 * that token to the request object's <code>NextToken</code> parameter. If there 136 * are no remaining results, the previous response object's <code>NextToken</code> 137 * parameter is set to <code>null</code>.</p> 138 */ SetNextToken(const char * value)139 inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } 140 141 /** 142 * <p>If the previous request didn't return all of the remaining results, the 143 * response's <code>NextToken</code> parameter value is set to a token. To retrieve 144 * the next set of results, call <code>ListStackInstances</code> again and assign 145 * that token to the request object's <code>NextToken</code> parameter. If there 146 * are no remaining results, the previous response object's <code>NextToken</code> 147 * parameter is set to <code>null</code>.</p> 148 */ WithNextToken(const Aws::String & value)149 inline ListStackInstancesRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} 150 151 /** 152 * <p>If the previous request didn't return all of the remaining results, the 153 * response's <code>NextToken</code> parameter value is set to a token. To retrieve 154 * the next set of results, call <code>ListStackInstances</code> again and assign 155 * that token to the request object's <code>NextToken</code> parameter. If there 156 * are no remaining results, the previous response object's <code>NextToken</code> 157 * parameter is set to <code>null</code>.</p> 158 */ WithNextToken(Aws::String && value)159 inline ListStackInstancesRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} 160 161 /** 162 * <p>If the previous request didn't return all of the remaining results, the 163 * response's <code>NextToken</code> parameter value is set to a token. To retrieve 164 * the next set of results, call <code>ListStackInstances</code> again and assign 165 * that token to the request object's <code>NextToken</code> parameter. If there 166 * are no remaining results, the previous response object's <code>NextToken</code> 167 * parameter is set to <code>null</code>.</p> 168 */ WithNextToken(const char * value)169 inline ListStackInstancesRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} 170 171 172 /** 173 * <p>The maximum number of results to be returned with a single call. If the 174 * number of available results exceeds this maximum, the response includes a 175 * <code>NextToken</code> value that you can assign to the <code>NextToken</code> 176 * request parameter to get the next set of results.</p> 177 */ GetMaxResults()178 inline int GetMaxResults() const{ return m_maxResults; } 179 180 /** 181 * <p>The maximum number of results to be returned with a single call. If the 182 * number of available results exceeds this maximum, the response includes a 183 * <code>NextToken</code> value that you can assign to the <code>NextToken</code> 184 * request parameter to get the next set of results.</p> 185 */ MaxResultsHasBeenSet()186 inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } 187 188 /** 189 * <p>The maximum number of results to be returned with a single call. If the 190 * number of available results exceeds this maximum, the response includes a 191 * <code>NextToken</code> value that you can assign to the <code>NextToken</code> 192 * request parameter to get the next set of results.</p> 193 */ SetMaxResults(int value)194 inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } 195 196 /** 197 * <p>The maximum number of results to be returned with a single call. If the 198 * number of available results exceeds this maximum, the response includes a 199 * <code>NextToken</code> value that you can assign to the <code>NextToken</code> 200 * request parameter to get the next set of results.</p> 201 */ WithMaxResults(int value)202 inline ListStackInstancesRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} 203 204 205 /** 206 * <p>The status that stack instances are filtered by.</p> 207 */ GetFilters()208 inline const Aws::Vector<StackInstanceFilter>& GetFilters() const{ return m_filters; } 209 210 /** 211 * <p>The status that stack instances are filtered by.</p> 212 */ FiltersHasBeenSet()213 inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; } 214 215 /** 216 * <p>The status that stack instances are filtered by.</p> 217 */ SetFilters(const Aws::Vector<StackInstanceFilter> & value)218 inline void SetFilters(const Aws::Vector<StackInstanceFilter>& value) { m_filtersHasBeenSet = true; m_filters = value; } 219 220 /** 221 * <p>The status that stack instances are filtered by.</p> 222 */ SetFilters(Aws::Vector<StackInstanceFilter> && value)223 inline void SetFilters(Aws::Vector<StackInstanceFilter>&& value) { m_filtersHasBeenSet = true; m_filters = std::move(value); } 224 225 /** 226 * <p>The status that stack instances are filtered by.</p> 227 */ WithFilters(const Aws::Vector<StackInstanceFilter> & value)228 inline ListStackInstancesRequest& WithFilters(const Aws::Vector<StackInstanceFilter>& value) { SetFilters(value); return *this;} 229 230 /** 231 * <p>The status that stack instances are filtered by.</p> 232 */ WithFilters(Aws::Vector<StackInstanceFilter> && value)233 inline ListStackInstancesRequest& WithFilters(Aws::Vector<StackInstanceFilter>&& value) { SetFilters(std::move(value)); return *this;} 234 235 /** 236 * <p>The status that stack instances are filtered by.</p> 237 */ AddFilters(const StackInstanceFilter & value)238 inline ListStackInstancesRequest& AddFilters(const StackInstanceFilter& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; } 239 240 /** 241 * <p>The status that stack instances are filtered by.</p> 242 */ AddFilters(StackInstanceFilter && value)243 inline ListStackInstancesRequest& AddFilters(StackInstanceFilter&& value) { m_filtersHasBeenSet = true; m_filters.push_back(std::move(value)); return *this; } 244 245 246 /** 247 * <p>The name of the Amazon Web Services account that you want to list stack 248 * instances for.</p> 249 */ GetStackInstanceAccount()250 inline const Aws::String& GetStackInstanceAccount() const{ return m_stackInstanceAccount; } 251 252 /** 253 * <p>The name of the Amazon Web Services account that you want to list stack 254 * instances for.</p> 255 */ StackInstanceAccountHasBeenSet()256 inline bool StackInstanceAccountHasBeenSet() const { return m_stackInstanceAccountHasBeenSet; } 257 258 /** 259 * <p>The name of the Amazon Web Services account that you want to list stack 260 * instances for.</p> 261 */ SetStackInstanceAccount(const Aws::String & value)262 inline void SetStackInstanceAccount(const Aws::String& value) { m_stackInstanceAccountHasBeenSet = true; m_stackInstanceAccount = value; } 263 264 /** 265 * <p>The name of the Amazon Web Services account that you want to list stack 266 * instances for.</p> 267 */ SetStackInstanceAccount(Aws::String && value)268 inline void SetStackInstanceAccount(Aws::String&& value) { m_stackInstanceAccountHasBeenSet = true; m_stackInstanceAccount = std::move(value); } 269 270 /** 271 * <p>The name of the Amazon Web Services account that you want to list stack 272 * instances for.</p> 273 */ SetStackInstanceAccount(const char * value)274 inline void SetStackInstanceAccount(const char* value) { m_stackInstanceAccountHasBeenSet = true; m_stackInstanceAccount.assign(value); } 275 276 /** 277 * <p>The name of the Amazon Web Services account that you want to list stack 278 * instances for.</p> 279 */ WithStackInstanceAccount(const Aws::String & value)280 inline ListStackInstancesRequest& WithStackInstanceAccount(const Aws::String& value) { SetStackInstanceAccount(value); return *this;} 281 282 /** 283 * <p>The name of the Amazon Web Services account that you want to list stack 284 * instances for.</p> 285 */ WithStackInstanceAccount(Aws::String && value)286 inline ListStackInstancesRequest& WithStackInstanceAccount(Aws::String&& value) { SetStackInstanceAccount(std::move(value)); return *this;} 287 288 /** 289 * <p>The name of the Amazon Web Services account that you want to list stack 290 * instances for.</p> 291 */ WithStackInstanceAccount(const char * value)292 inline ListStackInstancesRequest& WithStackInstanceAccount(const char* value) { SetStackInstanceAccount(value); return *this;} 293 294 295 /** 296 * <p>The name of the Region where you want to list stack instances. </p> 297 */ GetStackInstanceRegion()298 inline const Aws::String& GetStackInstanceRegion() const{ return m_stackInstanceRegion; } 299 300 /** 301 * <p>The name of the Region where you want to list stack instances. </p> 302 */ StackInstanceRegionHasBeenSet()303 inline bool StackInstanceRegionHasBeenSet() const { return m_stackInstanceRegionHasBeenSet; } 304 305 /** 306 * <p>The name of the Region where you want to list stack instances. </p> 307 */ SetStackInstanceRegion(const Aws::String & value)308 inline void SetStackInstanceRegion(const Aws::String& value) { m_stackInstanceRegionHasBeenSet = true; m_stackInstanceRegion = value; } 309 310 /** 311 * <p>The name of the Region where you want to list stack instances. </p> 312 */ SetStackInstanceRegion(Aws::String && value)313 inline void SetStackInstanceRegion(Aws::String&& value) { m_stackInstanceRegionHasBeenSet = true; m_stackInstanceRegion = std::move(value); } 314 315 /** 316 * <p>The name of the Region where you want to list stack instances. </p> 317 */ SetStackInstanceRegion(const char * value)318 inline void SetStackInstanceRegion(const char* value) { m_stackInstanceRegionHasBeenSet = true; m_stackInstanceRegion.assign(value); } 319 320 /** 321 * <p>The name of the Region where you want to list stack instances. </p> 322 */ WithStackInstanceRegion(const Aws::String & value)323 inline ListStackInstancesRequest& WithStackInstanceRegion(const Aws::String& value) { SetStackInstanceRegion(value); return *this;} 324 325 /** 326 * <p>The name of the Region where you want to list stack instances. </p> 327 */ WithStackInstanceRegion(Aws::String && value)328 inline ListStackInstancesRequest& WithStackInstanceRegion(Aws::String&& value) { SetStackInstanceRegion(std::move(value)); return *this;} 329 330 /** 331 * <p>The name of the Region where you want to list stack instances. </p> 332 */ WithStackInstanceRegion(const char * value)333 inline ListStackInstancesRequest& WithStackInstanceRegion(const char* value) { SetStackInstanceRegion(value); return *this;} 334 335 336 /** 337 * <p>[Service-managed permissions] Specifies whether you are acting as an account 338 * administrator in the organization's management account or as a delegated 339 * administrator in a member account.</p> <p>By default, <code>SELF</code> is 340 * specified. Use <code>SELF</code> for stack sets with self-managed 341 * permissions.</p> <ul> <li> <p>If you are signed in to the management account, 342 * specify <code>SELF</code>.</p> </li> <li> <p>If you are signed in to a delegated 343 * administrator account, specify <code>DELEGATED_ADMIN</code>.</p> <p>Your Amazon 344 * Web Services account must be registered as a delegated administrator in the 345 * management account. For more information, see <a 346 * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html">Register 347 * a delegated administrator</a> in the <i>CloudFormation User Guide</i>.</p> </li> 348 * </ul> 349 */ GetCallAs()350 inline const CallAs& GetCallAs() const{ return m_callAs; } 351 352 /** 353 * <p>[Service-managed permissions] Specifies whether you are acting as an account 354 * administrator in the organization's management account or as a delegated 355 * administrator in a member account.</p> <p>By default, <code>SELF</code> is 356 * specified. Use <code>SELF</code> for stack sets with self-managed 357 * permissions.</p> <ul> <li> <p>If you are signed in to the management account, 358 * specify <code>SELF</code>.</p> </li> <li> <p>If you are signed in to a delegated 359 * administrator account, specify <code>DELEGATED_ADMIN</code>.</p> <p>Your Amazon 360 * Web Services account must be registered as a delegated administrator in the 361 * management account. For more information, see <a 362 * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html">Register 363 * a delegated administrator</a> in the <i>CloudFormation User Guide</i>.</p> </li> 364 * </ul> 365 */ CallAsHasBeenSet()366 inline bool CallAsHasBeenSet() const { return m_callAsHasBeenSet; } 367 368 /** 369 * <p>[Service-managed permissions] Specifies whether you are acting as an account 370 * administrator in the organization's management account or as a delegated 371 * administrator in a member account.</p> <p>By default, <code>SELF</code> is 372 * specified. Use <code>SELF</code> for stack sets with self-managed 373 * permissions.</p> <ul> <li> <p>If you are signed in to the management account, 374 * specify <code>SELF</code>.</p> </li> <li> <p>If you are signed in to a delegated 375 * administrator account, specify <code>DELEGATED_ADMIN</code>.</p> <p>Your Amazon 376 * Web Services account must be registered as a delegated administrator in the 377 * management account. For more information, see <a 378 * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html">Register 379 * a delegated administrator</a> in the <i>CloudFormation User Guide</i>.</p> </li> 380 * </ul> 381 */ SetCallAs(const CallAs & value)382 inline void SetCallAs(const CallAs& value) { m_callAsHasBeenSet = true; m_callAs = value; } 383 384 /** 385 * <p>[Service-managed permissions] Specifies whether you are acting as an account 386 * administrator in the organization's management account or as a delegated 387 * administrator in a member account.</p> <p>By default, <code>SELF</code> is 388 * specified. Use <code>SELF</code> for stack sets with self-managed 389 * permissions.</p> <ul> <li> <p>If you are signed in to the management account, 390 * specify <code>SELF</code>.</p> </li> <li> <p>If you are signed in to a delegated 391 * administrator account, specify <code>DELEGATED_ADMIN</code>.</p> <p>Your Amazon 392 * Web Services account must be registered as a delegated administrator in the 393 * management account. For more information, see <a 394 * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html">Register 395 * a delegated administrator</a> in the <i>CloudFormation User Guide</i>.</p> </li> 396 * </ul> 397 */ SetCallAs(CallAs && value)398 inline void SetCallAs(CallAs&& value) { m_callAsHasBeenSet = true; m_callAs = std::move(value); } 399 400 /** 401 * <p>[Service-managed permissions] Specifies whether you are acting as an account 402 * administrator in the organization's management account or as a delegated 403 * administrator in a member account.</p> <p>By default, <code>SELF</code> is 404 * specified. Use <code>SELF</code> for stack sets with self-managed 405 * permissions.</p> <ul> <li> <p>If you are signed in to the management account, 406 * specify <code>SELF</code>.</p> </li> <li> <p>If you are signed in to a delegated 407 * administrator account, specify <code>DELEGATED_ADMIN</code>.</p> <p>Your Amazon 408 * Web Services account must be registered as a delegated administrator in the 409 * management account. For more information, see <a 410 * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html">Register 411 * a delegated administrator</a> in the <i>CloudFormation User Guide</i>.</p> </li> 412 * </ul> 413 */ WithCallAs(const CallAs & value)414 inline ListStackInstancesRequest& WithCallAs(const CallAs& value) { SetCallAs(value); return *this;} 415 416 /** 417 * <p>[Service-managed permissions] Specifies whether you are acting as an account 418 * administrator in the organization's management account or as a delegated 419 * administrator in a member account.</p> <p>By default, <code>SELF</code> is 420 * specified. Use <code>SELF</code> for stack sets with self-managed 421 * permissions.</p> <ul> <li> <p>If you are signed in to the management account, 422 * specify <code>SELF</code>.</p> </li> <li> <p>If you are signed in to a delegated 423 * administrator account, specify <code>DELEGATED_ADMIN</code>.</p> <p>Your Amazon 424 * Web Services account must be registered as a delegated administrator in the 425 * management account. For more information, see <a 426 * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html">Register 427 * a delegated administrator</a> in the <i>CloudFormation User Guide</i>.</p> </li> 428 * </ul> 429 */ WithCallAs(CallAs && value)430 inline ListStackInstancesRequest& WithCallAs(CallAs&& value) { SetCallAs(std::move(value)); return *this;} 431 432 private: 433 434 Aws::String m_stackSetName; 435 bool m_stackSetNameHasBeenSet; 436 437 Aws::String m_nextToken; 438 bool m_nextTokenHasBeenSet; 439 440 int m_maxResults; 441 bool m_maxResultsHasBeenSet; 442 443 Aws::Vector<StackInstanceFilter> m_filters; 444 bool m_filtersHasBeenSet; 445 446 Aws::String m_stackInstanceAccount; 447 bool m_stackInstanceAccountHasBeenSet; 448 449 Aws::String m_stackInstanceRegion; 450 bool m_stackInstanceRegionHasBeenSet; 451 452 CallAs m_callAs; 453 bool m_callAsHasBeenSet; 454 }; 455 456 } // namespace Model 457 } // namespace CloudFormation 458 } // namespace Aws 459