AWS SDK for C++  0.14.3
AWS SDK for C++
DescribeAvailabilityZonesRequest.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/ec2/EC2_EXPORTS.h>
17 #include <aws/ec2/EC2Request.h>
20 #include <aws/ec2/model/Filter.h>
21 
22 namespace Aws
23 {
24 namespace EC2
25 {
26 namespace Model
27 {
28 
33  {
34  public:
36  Aws::String SerializePayload() const override;
37 
44  inline bool GetDryRun() const{ return m_dryRun; }
45 
52  inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
53 
60  inline DescribeAvailabilityZonesRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
61 
65  inline const Aws::Vector<Aws::String>& GetZoneNames() const{ return m_zoneNames; }
66 
70  inline void SetZoneNames(const Aws::Vector<Aws::String>& value) { m_zoneNamesHasBeenSet = true; m_zoneNames = value; }
71 
75  inline void SetZoneNames(Aws::Vector<Aws::String>&& value) { m_zoneNamesHasBeenSet = true; m_zoneNames = value; }
76 
80  inline DescribeAvailabilityZonesRequest& WithZoneNames(const Aws::Vector<Aws::String>& value) { SetZoneNames(value); return *this;}
81 
85  inline DescribeAvailabilityZonesRequest& WithZoneNames(Aws::Vector<Aws::String>&& value) { SetZoneNames(value); return *this;}
86 
90  inline DescribeAvailabilityZonesRequest& AddZoneNames(const Aws::String& value) { m_zoneNamesHasBeenSet = true; m_zoneNames.push_back(value); return *this; }
91 
95  inline DescribeAvailabilityZonesRequest& AddZoneNames(Aws::String&& value) { m_zoneNamesHasBeenSet = true; m_zoneNames.push_back(value); return *this; }
96 
100  inline DescribeAvailabilityZonesRequest& AddZoneNames(const char* value) { m_zoneNamesHasBeenSet = true; m_zoneNames.push_back(value); return *this; }
101 
112  inline const Aws::Vector<Filter>& GetFilters() const{ return m_filters; }
113 
124  inline void SetFilters(const Aws::Vector<Filter>& value) { m_filtersHasBeenSet = true; m_filters = value; }
125 
136  inline void SetFilters(Aws::Vector<Filter>&& value) { m_filtersHasBeenSet = true; m_filters = value; }
137 
148  inline DescribeAvailabilityZonesRequest& WithFilters(const Aws::Vector<Filter>& value) { SetFilters(value); return *this;}
149 
160  inline DescribeAvailabilityZonesRequest& WithFilters(Aws::Vector<Filter>&& value) { SetFilters(value); return *this;}
161 
172  inline DescribeAvailabilityZonesRequest& AddFilters(const Filter& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; }
173 
184  inline DescribeAvailabilityZonesRequest& AddFilters(Filter&& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; }
185 
186  private:
187  bool m_dryRun;
188  bool m_dryRunHasBeenSet;
189  Aws::Vector<Aws::String> m_zoneNames;
190  bool m_zoneNamesHasBeenSet;
191  Aws::Vector<Filter> m_filters;
192  bool m_filtersHasBeenSet;
193  };
194 
195 } // namespace Model
196 } // namespace EC2
197 } // namespace Aws
DescribeAvailabilityZonesRequest & WithZoneNames(const Aws::Vector< Aws::String > &value)
DescribeAvailabilityZonesRequest & AddZoneNames(const char *value)
DescribeAvailabilityZonesRequest & WithDryRun(bool value)
DescribeAvailabilityZonesRequest & AddFilters(const Filter &value)
void SetZoneNames(const Aws::Vector< Aws::String > &value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
DescribeAvailabilityZonesRequest & WithFilters(const Aws::Vector< Filter > &value)
DescribeAvailabilityZonesRequest & AddFilters(Filter &&value)
DescribeAvailabilityZonesRequest & WithZoneNames(Aws::Vector< Aws::String > &&value)
DescribeAvailabilityZonesRequest & WithFilters(Aws::Vector< Filter > &&value)
DescribeAvailabilityZonesRequest & AddZoneNames(const Aws::String &value)
DescribeAvailabilityZonesRequest & AddZoneNames(Aws::String &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
const Aws::Vector< Aws::String > & GetZoneNames() const
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:37
JSON (JavaScript Object Notation).