AWS SDK for C++  0.14.3
AWS SDK for C++
DescribeSecurityGroupsRequest.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 DescribeSecurityGroupsRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
61 
68  inline const Aws::Vector<Aws::String>& GetGroupNames() const{ return m_groupNames; }
69 
76  inline void SetGroupNames(const Aws::Vector<Aws::String>& value) { m_groupNamesHasBeenSet = true; m_groupNames = value; }
77 
84  inline void SetGroupNames(Aws::Vector<Aws::String>&& value) { m_groupNamesHasBeenSet = true; m_groupNames = value; }
85 
92  inline DescribeSecurityGroupsRequest& WithGroupNames(const Aws::Vector<Aws::String>& value) { SetGroupNames(value); return *this;}
93 
100  inline DescribeSecurityGroupsRequest& WithGroupNames(Aws::Vector<Aws::String>&& value) { SetGroupNames(value); return *this;}
101 
108  inline DescribeSecurityGroupsRequest& AddGroupNames(const Aws::String& value) { m_groupNamesHasBeenSet = true; m_groupNames.push_back(value); return *this; }
109 
116  inline DescribeSecurityGroupsRequest& AddGroupNames(Aws::String&& value) { m_groupNamesHasBeenSet = true; m_groupNames.push_back(value); return *this; }
117 
124  inline DescribeSecurityGroupsRequest& AddGroupNames(const char* value) { m_groupNamesHasBeenSet = true; m_groupNames.push_back(value); return *this; }
125 
130  inline const Aws::Vector<Aws::String>& GetGroupIds() const{ return m_groupIds; }
131 
136  inline void SetGroupIds(const Aws::Vector<Aws::String>& value) { m_groupIdsHasBeenSet = true; m_groupIds = value; }
137 
142  inline void SetGroupIds(Aws::Vector<Aws::String>&& value) { m_groupIdsHasBeenSet = true; m_groupIds = value; }
143 
148  inline DescribeSecurityGroupsRequest& WithGroupIds(const Aws::Vector<Aws::String>& value) { SetGroupIds(value); return *this;}
149 
154  inline DescribeSecurityGroupsRequest& WithGroupIds(Aws::Vector<Aws::String>&& value) { SetGroupIds(value); return *this;}
155 
160  inline DescribeSecurityGroupsRequest& AddGroupIds(const Aws::String& value) { m_groupIdsHasBeenSet = true; m_groupIds.push_back(value); return *this; }
161 
166  inline DescribeSecurityGroupsRequest& AddGroupIds(Aws::String&& value) { m_groupIdsHasBeenSet = true; m_groupIds.push_back(value); return *this; }
167 
172  inline DescribeSecurityGroupsRequest& AddGroupIds(const char* value) { m_groupIdsHasBeenSet = true; m_groupIds.push_back(value); return *this; }
173 
202  inline const Aws::Vector<Filter>& GetFilters() const{ return m_filters; }
203 
232  inline void SetFilters(const Aws::Vector<Filter>& value) { m_filtersHasBeenSet = true; m_filters = value; }
233 
262  inline void SetFilters(Aws::Vector<Filter>&& value) { m_filtersHasBeenSet = true; m_filters = value; }
263 
292  inline DescribeSecurityGroupsRequest& WithFilters(const Aws::Vector<Filter>& value) { SetFilters(value); return *this;}
293 
322  inline DescribeSecurityGroupsRequest& WithFilters(Aws::Vector<Filter>&& value) { SetFilters(value); return *this;}
323 
352  inline DescribeSecurityGroupsRequest& AddFilters(const Filter& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; }
353 
382  inline DescribeSecurityGroupsRequest& AddFilters(Filter&& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; }
383 
384  private:
385  bool m_dryRun;
386  bool m_dryRunHasBeenSet;
387  Aws::Vector<Aws::String> m_groupNames;
388  bool m_groupNamesHasBeenSet;
389  Aws::Vector<Aws::String> m_groupIds;
390  bool m_groupIdsHasBeenSet;
391  Aws::Vector<Filter> m_filters;
392  bool m_filtersHasBeenSet;
393  };
394 
395 } // namespace Model
396 } // namespace EC2
397 } // namespace Aws
DescribeSecurityGroupsRequest & AddGroupNames(const Aws::String &value)
void SetGroupNames(const Aws::Vector< Aws::String > &value)
DescribeSecurityGroupsRequest & AddGroupIds(const char *value)
DescribeSecurityGroupsRequest & AddGroupNames(const char *value)
DescribeSecurityGroupsRequest & AddGroupNames(Aws::String &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
DescribeSecurityGroupsRequest & WithGroupIds(Aws::Vector< Aws::String > &&value)
void SetGroupIds(const Aws::Vector< Aws::String > &value)
const Aws::Vector< Aws::String > & GetGroupIds() const
DescribeSecurityGroupsRequest & WithFilters(Aws::Vector< Filter > &&value)
DescribeSecurityGroupsRequest & WithGroupIds(const Aws::Vector< Aws::String > &value)
DescribeSecurityGroupsRequest & WithGroupNames(Aws::Vector< Aws::String > &&value)
DescribeSecurityGroupsRequest & AddGroupIds(const Aws::String &value)
void SetGroupIds(Aws::Vector< Aws::String > &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
DescribeSecurityGroupsRequest & WithGroupNames(const Aws::Vector< Aws::String > &value)
void SetGroupNames(Aws::Vector< Aws::String > &&value)
DescribeSecurityGroupsRequest & AddFilters(const Filter &value)
void SetFilters(const Aws::Vector< Filter > &value)
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:37
DescribeSecurityGroupsRequest & WithFilters(const Aws::Vector< Filter > &value)
DescribeSecurityGroupsRequest & WithDryRun(bool value)
const Aws::Vector< Aws::String > & GetGroupNames() const
DescribeSecurityGroupsRequest & AddGroupIds(Aws::String &&value)
DescribeSecurityGroupsRequest & AddFilters(Filter &&value)
JSON (JavaScript Object Notation).