AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Ec2InstanceAggregation.h
1
6#pragma once
7#include <aws/inspector2/Inspector2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/inspector2/model/Ec2InstanceSortBy.h>
10#include <aws/inspector2/model/SortOrder.h>
11#include <aws/inspector2/model/StringFilter.h>
12#include <aws/inspector2/model/MapFilter.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace Inspector2
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_INSPECTOR2_API Ec2InstanceAggregation() = default;
42 AWS_INSPECTOR2_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
50 inline const Aws::Vector<StringFilter>& GetAmis() const { return m_amis; }
51 inline bool AmisHasBeenSet() const { return m_amisHasBeenSet; }
52 template<typename AmisT = Aws::Vector<StringFilter>>
53 void SetAmis(AmisT&& value) { m_amisHasBeenSet = true; m_amis = std::forward<AmisT>(value); }
54 template<typename AmisT = Aws::Vector<StringFilter>>
55 Ec2InstanceAggregation& WithAmis(AmisT&& value) { SetAmis(std::forward<AmisT>(value)); return *this;}
56 template<typename AmisT = StringFilter>
57 Ec2InstanceAggregation& AddAmis(AmisT&& value) { m_amisHasBeenSet = true; m_amis.emplace_back(std::forward<AmisT>(value)); return *this; }
59
61
64 inline const Aws::Vector<StringFilter>& GetInstanceIds() const { return m_instanceIds; }
65 inline bool InstanceIdsHasBeenSet() const { return m_instanceIdsHasBeenSet; }
66 template<typename InstanceIdsT = Aws::Vector<StringFilter>>
67 void SetInstanceIds(InstanceIdsT&& value) { m_instanceIdsHasBeenSet = true; m_instanceIds = std::forward<InstanceIdsT>(value); }
68 template<typename InstanceIdsT = Aws::Vector<StringFilter>>
69 Ec2InstanceAggregation& WithInstanceIds(InstanceIdsT&& value) { SetInstanceIds(std::forward<InstanceIdsT>(value)); return *this;}
70 template<typename InstanceIdsT = StringFilter>
71 Ec2InstanceAggregation& AddInstanceIds(InstanceIdsT&& value) { m_instanceIdsHasBeenSet = true; m_instanceIds.emplace_back(std::forward<InstanceIdsT>(value)); return *this; }
73
75
78 inline const Aws::Vector<MapFilter>& GetInstanceTags() const { return m_instanceTags; }
79 inline bool InstanceTagsHasBeenSet() const { return m_instanceTagsHasBeenSet; }
80 template<typename InstanceTagsT = Aws::Vector<MapFilter>>
81 void SetInstanceTags(InstanceTagsT&& value) { m_instanceTagsHasBeenSet = true; m_instanceTags = std::forward<InstanceTagsT>(value); }
82 template<typename InstanceTagsT = Aws::Vector<MapFilter>>
83 Ec2InstanceAggregation& WithInstanceTags(InstanceTagsT&& value) { SetInstanceTags(std::forward<InstanceTagsT>(value)); return *this;}
84 template<typename InstanceTagsT = MapFilter>
85 Ec2InstanceAggregation& AddInstanceTags(InstanceTagsT&& value) { m_instanceTagsHasBeenSet = true; m_instanceTags.emplace_back(std::forward<InstanceTagsT>(value)); return *this; }
87
89
94 inline const Aws::Vector<StringFilter>& GetOperatingSystems() const { return m_operatingSystems; }
95 inline bool OperatingSystemsHasBeenSet() const { return m_operatingSystemsHasBeenSet; }
96 template<typename OperatingSystemsT = Aws::Vector<StringFilter>>
97 void SetOperatingSystems(OperatingSystemsT&& value) { m_operatingSystemsHasBeenSet = true; m_operatingSystems = std::forward<OperatingSystemsT>(value); }
98 template<typename OperatingSystemsT = Aws::Vector<StringFilter>>
99 Ec2InstanceAggregation& WithOperatingSystems(OperatingSystemsT&& value) { SetOperatingSystems(std::forward<OperatingSystemsT>(value)); return *this;}
100 template<typename OperatingSystemsT = StringFilter>
101 Ec2InstanceAggregation& AddOperatingSystems(OperatingSystemsT&& value) { m_operatingSystemsHasBeenSet = true; m_operatingSystems.emplace_back(std::forward<OperatingSystemsT>(value)); return *this; }
103
105
108 inline Ec2InstanceSortBy GetSortBy() const { return m_sortBy; }
109 inline bool SortByHasBeenSet() const { return m_sortByHasBeenSet; }
110 inline void SetSortBy(Ec2InstanceSortBy value) { m_sortByHasBeenSet = true; m_sortBy = value; }
111 inline Ec2InstanceAggregation& WithSortBy(Ec2InstanceSortBy value) { SetSortBy(value); return *this;}
113
115
118 inline SortOrder GetSortOrder() const { return m_sortOrder; }
119 inline bool SortOrderHasBeenSet() const { return m_sortOrderHasBeenSet; }
120 inline void SetSortOrder(SortOrder value) { m_sortOrderHasBeenSet = true; m_sortOrder = value; }
121 inline Ec2InstanceAggregation& WithSortOrder(SortOrder value) { SetSortOrder(value); return *this;}
123 private:
124
126 bool m_amisHasBeenSet = false;
127
128 Aws::Vector<StringFilter> m_instanceIds;
129 bool m_instanceIdsHasBeenSet = false;
130
131 Aws::Vector<MapFilter> m_instanceTags;
132 bool m_instanceTagsHasBeenSet = false;
133
134 Aws::Vector<StringFilter> m_operatingSystems;
135 bool m_operatingSystemsHasBeenSet = false;
136
138 bool m_sortByHasBeenSet = false;
139
140 SortOrder m_sortOrder{SortOrder::NOT_SET};
141 bool m_sortOrderHasBeenSet = false;
142 };
143
144} // namespace Model
145} // namespace Inspector2
146} // 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