AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
Ec2InstanceAggregation.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/inspector2/Inspector2_EXPORTS.h>
9#include <aws/inspector2/model/Ec2InstanceSortBy.h>
10#include <aws/inspector2/model/MapFilter.h>
11#include <aws/inspector2/model/SortOrder.h>
12#include <aws/inspector2/model/StringFilter.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Inspector2 {
24namespace Model {
25
33 public:
34 AWS_INSPECTOR2_API Ec2InstanceAggregation() = default;
37 AWS_INSPECTOR2_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
44 inline const Aws::Vector<StringFilter>& GetAmis() const { return m_amis; }
45 inline bool AmisHasBeenSet() const { return m_amisHasBeenSet; }
46 template <typename AmisT = Aws::Vector<StringFilter>>
47 void SetAmis(AmisT&& value) {
48 m_amisHasBeenSet = true;
49 m_amis = std::forward<AmisT>(value);
50 }
51 template <typename AmisT = Aws::Vector<StringFilter>>
53 SetAmis(std::forward<AmisT>(value));
54 return *this;
55 }
56 template <typename AmisT = StringFilter>
58 m_amisHasBeenSet = true;
59 m_amis.emplace_back(std::forward<AmisT>(value));
60 return *this;
61 }
63
65
70 inline const Aws::Vector<StringFilter>& GetOperatingSystems() const { return m_operatingSystems; }
71 inline bool OperatingSystemsHasBeenSet() const { return m_operatingSystemsHasBeenSet; }
72 template <typename OperatingSystemsT = Aws::Vector<StringFilter>>
73 void SetOperatingSystems(OperatingSystemsT&& value) {
74 m_operatingSystemsHasBeenSet = true;
75 m_operatingSystems = std::forward<OperatingSystemsT>(value);
76 }
77 template <typename OperatingSystemsT = Aws::Vector<StringFilter>>
78 Ec2InstanceAggregation& WithOperatingSystems(OperatingSystemsT&& value) {
79 SetOperatingSystems(std::forward<OperatingSystemsT>(value));
80 return *this;
81 }
82 template <typename OperatingSystemsT = StringFilter>
83 Ec2InstanceAggregation& AddOperatingSystems(OperatingSystemsT&& value) {
84 m_operatingSystemsHasBeenSet = true;
85 m_operatingSystems.emplace_back(std::forward<OperatingSystemsT>(value));
86 return *this;
87 }
89
91
94 inline const Aws::Vector<StringFilter>& GetInstanceIds() const { return m_instanceIds; }
95 inline bool InstanceIdsHasBeenSet() const { return m_instanceIdsHasBeenSet; }
96 template <typename InstanceIdsT = Aws::Vector<StringFilter>>
97 void SetInstanceIds(InstanceIdsT&& value) {
98 m_instanceIdsHasBeenSet = true;
99 m_instanceIds = std::forward<InstanceIdsT>(value);
100 }
101 template <typename InstanceIdsT = Aws::Vector<StringFilter>>
103 SetInstanceIds(std::forward<InstanceIdsT>(value));
104 return *this;
105 }
106 template <typename InstanceIdsT = StringFilter>
107 Ec2InstanceAggregation& AddInstanceIds(InstanceIdsT&& value) {
108 m_instanceIdsHasBeenSet = true;
109 m_instanceIds.emplace_back(std::forward<InstanceIdsT>(value));
110 return *this;
111 }
113
115
118 inline const Aws::Vector<MapFilter>& GetInstanceTags() const { return m_instanceTags; }
119 inline bool InstanceTagsHasBeenSet() const { return m_instanceTagsHasBeenSet; }
120 template <typename InstanceTagsT = Aws::Vector<MapFilter>>
121 void SetInstanceTags(InstanceTagsT&& value) {
122 m_instanceTagsHasBeenSet = true;
123 m_instanceTags = std::forward<InstanceTagsT>(value);
124 }
125 template <typename InstanceTagsT = Aws::Vector<MapFilter>>
126 Ec2InstanceAggregation& WithInstanceTags(InstanceTagsT&& value) {
127 SetInstanceTags(std::forward<InstanceTagsT>(value));
128 return *this;
129 }
130 template <typename InstanceTagsT = MapFilter>
131 Ec2InstanceAggregation& AddInstanceTags(InstanceTagsT&& value) {
132 m_instanceTagsHasBeenSet = true;
133 m_instanceTags.emplace_back(std::forward<InstanceTagsT>(value));
134 return *this;
135 }
137
139
142 inline SortOrder GetSortOrder() const { return m_sortOrder; }
143 inline bool SortOrderHasBeenSet() const { return m_sortOrderHasBeenSet; }
144 inline void SetSortOrder(SortOrder value) {
145 m_sortOrderHasBeenSet = true;
146 m_sortOrder = value;
147 }
149 SetSortOrder(value);
150 return *this;
151 }
153
155
158 inline Ec2InstanceSortBy GetSortBy() const { return m_sortBy; }
159 inline bool SortByHasBeenSet() const { return m_sortByHasBeenSet; }
160 inline void SetSortBy(Ec2InstanceSortBy value) {
161 m_sortByHasBeenSet = true;
162 m_sortBy = value;
163 }
165 SetSortBy(value);
166 return *this;
167 }
169 private:
171
172 Aws::Vector<StringFilter> m_operatingSystems;
173
174 Aws::Vector<StringFilter> m_instanceIds;
175
176 Aws::Vector<MapFilter> m_instanceTags;
177
178 SortOrder m_sortOrder{SortOrder::NOT_SET};
179
181 bool m_amisHasBeenSet = false;
182 bool m_operatingSystemsHasBeenSet = false;
183 bool m_instanceIdsHasBeenSet = false;
184 bool m_instanceTagsHasBeenSet = false;
185 bool m_sortOrderHasBeenSet = false;
186 bool m_sortByHasBeenSet = false;
187};
188
189} // namespace Model
190} // namespace Inspector2
191} // namespace Aws
Ec2InstanceAggregation & AddOperatingSystems(OperatingSystemsT &&value)
const Aws::Vector< MapFilter > & GetInstanceTags() const
Ec2InstanceAggregation & AddInstanceTags(InstanceTagsT &&value)
Ec2InstanceAggregation & WithSortBy(Ec2InstanceSortBy value)
Ec2InstanceAggregation & WithAmis(AmisT &&value)
Ec2InstanceAggregation & AddInstanceIds(InstanceIdsT &&value)
Ec2InstanceAggregation & WithOperatingSystems(OperatingSystemsT &&value)
const Aws::Vector< StringFilter > & GetInstanceIds() const
Ec2InstanceAggregation & WithInstanceIds(InstanceIdsT &&value)
Ec2InstanceAggregation & WithInstanceTags(InstanceTagsT &&value)
Ec2InstanceAggregation & AddAmis(AmisT &&value)
AWS_INSPECTOR2_API Ec2InstanceAggregation & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_INSPECTOR2_API Ec2InstanceAggregation()=default
AWS_INSPECTOR2_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< StringFilter > & GetAmis() const
const Aws::Vector< StringFilter > & GetOperatingSystems() const
Ec2InstanceAggregation & WithSortOrder(SortOrder value)
AWS_INSPECTOR2_API Ec2InstanceAggregation(Aws::Utils::Json::JsonView jsonValue)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue