AWS SDK for C++

AWS SDK for C++ Version 1.11.895

Loading...
Searching...
No Matches
CatalogItem.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/outposts/Outposts_EXPORTS.h>
10#include <aws/outposts/model/CatalogItemStatus.h>
11#include <aws/outposts/model/EC2Capacity.h>
12#include <aws/outposts/model/RackScalingType.h>
13#include <aws/outposts/model/SupportedStorageEnum.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Outposts {
25namespace Model {
26
33 public:
34 AWS_OUTPOSTS_API CatalogItem() = default;
35 AWS_OUTPOSTS_API CatalogItem(Aws::Utils::Json::JsonView jsonValue);
36 AWS_OUTPOSTS_API CatalogItem& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_OUTPOSTS_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::String& GetCatalogItemId() const { return m_catalogItemId; }
44 inline bool CatalogItemIdHasBeenSet() const { return m_catalogItemIdHasBeenSet; }
45 template <typename CatalogItemIdT = Aws::String>
46 void SetCatalogItemId(CatalogItemIdT&& value) {
47 m_catalogItemIdHasBeenSet = true;
48 m_catalogItemId = std::forward<CatalogItemIdT>(value);
49 }
50 template <typename CatalogItemIdT = Aws::String>
51 CatalogItem& WithCatalogItemId(CatalogItemIdT&& value) {
52 SetCatalogItemId(std::forward<CatalogItemIdT>(value));
53 return *this;
54 }
56
58
61 inline CatalogItemStatus GetItemStatus() const { return m_itemStatus; }
62 inline bool ItemStatusHasBeenSet() const { return m_itemStatusHasBeenSet; }
63 inline void SetItemStatus(CatalogItemStatus value) {
64 m_itemStatusHasBeenSet = true;
65 m_itemStatus = value;
66 }
68 SetItemStatus(value);
69 return *this;
70 }
72
74
77 inline const Aws::Vector<EC2Capacity>& GetEC2Capacities() const { return m_eC2Capacities; }
78 inline bool EC2CapacitiesHasBeenSet() const { return m_eC2CapacitiesHasBeenSet; }
79 template <typename EC2CapacitiesT = Aws::Vector<EC2Capacity>>
80 void SetEC2Capacities(EC2CapacitiesT&& value) {
81 m_eC2CapacitiesHasBeenSet = true;
82 m_eC2Capacities = std::forward<EC2CapacitiesT>(value);
83 }
84 template <typename EC2CapacitiesT = Aws::Vector<EC2Capacity>>
85 CatalogItem& WithEC2Capacities(EC2CapacitiesT&& value) {
86 SetEC2Capacities(std::forward<EC2CapacitiesT>(value));
87 return *this;
88 }
89 template <typename EC2CapacitiesT = EC2Capacity>
90 CatalogItem& AddEC2Capacities(EC2CapacitiesT&& value) {
91 m_eC2CapacitiesHasBeenSet = true;
92 m_eC2Capacities.emplace_back(std::forward<EC2CapacitiesT>(value));
93 return *this;
94 }
96
98
101 inline double GetPowerKva() const { return m_powerKva; }
102 inline bool PowerKvaHasBeenSet() const { return m_powerKvaHasBeenSet; }
103 inline void SetPowerKva(double value) {
104 m_powerKvaHasBeenSet = true;
105 m_powerKva = value;
106 }
107 inline CatalogItem& WithPowerKva(double value) {
108 SetPowerKva(value);
109 return *this;
110 }
112
114
117 inline int GetWeightLbs() const { return m_weightLbs; }
118 inline bool WeightLbsHasBeenSet() const { return m_weightLbsHasBeenSet; }
119 inline void SetWeightLbs(int value) {
120 m_weightLbsHasBeenSet = true;
121 m_weightLbs = value;
122 }
123 inline CatalogItem& WithWeightLbs(int value) {
124 SetWeightLbs(value);
125 return *this;
126 }
128
130
134 inline const Aws::Vector<int>& GetSupportedUplinkGbps() const { return m_supportedUplinkGbps; }
135 inline bool SupportedUplinkGbpsHasBeenSet() const { return m_supportedUplinkGbpsHasBeenSet; }
136 template <typename SupportedUplinkGbpsT = Aws::Vector<int>>
137 void SetSupportedUplinkGbps(SupportedUplinkGbpsT&& value) {
138 m_supportedUplinkGbpsHasBeenSet = true;
139 m_supportedUplinkGbps = std::forward<SupportedUplinkGbpsT>(value);
140 }
141 template <typename SupportedUplinkGbpsT = Aws::Vector<int>>
142 CatalogItem& WithSupportedUplinkGbps(SupportedUplinkGbpsT&& value) {
143 SetSupportedUplinkGbps(std::forward<SupportedUplinkGbpsT>(value));
144 return *this;
145 }
147 m_supportedUplinkGbpsHasBeenSet = true;
148 m_supportedUplinkGbps.push_back(value);
149 return *this;
150 }
152
154
157 inline const Aws::Vector<SupportedStorageEnum>& GetSupportedStorage() const { return m_supportedStorage; }
158 inline bool SupportedStorageHasBeenSet() const { return m_supportedStorageHasBeenSet; }
159 template <typename SupportedStorageT = Aws::Vector<SupportedStorageEnum>>
160 void SetSupportedStorage(SupportedStorageT&& value) {
161 m_supportedStorageHasBeenSet = true;
162 m_supportedStorage = std::forward<SupportedStorageT>(value);
163 }
164 template <typename SupportedStorageT = Aws::Vector<SupportedStorageEnum>>
165 CatalogItem& WithSupportedStorage(SupportedStorageT&& value) {
166 SetSupportedStorage(std::forward<SupportedStorageT>(value));
167 return *this;
168 }
170 m_supportedStorageHasBeenSet = true;
171 m_supportedStorage.push_back(value);
172 return *this;
173 }
175
177
181 inline RackScalingType GetRackScalingType() const { return m_rackScalingType; }
182 inline bool RackScalingTypeHasBeenSet() const { return m_rackScalingTypeHasBeenSet; }
184 m_rackScalingTypeHasBeenSet = true;
185 m_rackScalingType = value;
186 }
188 SetRackScalingType(value);
189 return *this;
190 }
192 private:
193 Aws::String m_catalogItemId;
194
196
197 Aws::Vector<EC2Capacity> m_eC2Capacities;
198
199 double m_powerKva{0.0};
200
201 int m_weightLbs{0};
202
203 Aws::Vector<int> m_supportedUplinkGbps;
204
205 Aws::Vector<SupportedStorageEnum> m_supportedStorage;
206
207 RackScalingType m_rackScalingType{RackScalingType::NOT_SET};
208 bool m_catalogItemIdHasBeenSet = false;
209 bool m_itemStatusHasBeenSet = false;
210 bool m_eC2CapacitiesHasBeenSet = false;
211 bool m_powerKvaHasBeenSet = false;
212 bool m_weightLbsHasBeenSet = false;
213 bool m_supportedUplinkGbpsHasBeenSet = false;
214 bool m_supportedStorageHasBeenSet = false;
215 bool m_rackScalingTypeHasBeenSet = false;
216};
217
218} // namespace Model
219} // namespace Outposts
220} // namespace Aws
void SetEC2Capacities(EC2CapacitiesT &&value)
Definition CatalogItem.h:80
CatalogItem & WithEC2Capacities(EC2CapacitiesT &&value)
Definition CatalogItem.h:85
AWS_OUTPOSTS_API CatalogItem & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetCatalogItemId(CatalogItemIdT &&value)
Definition CatalogItem.h:46
void SetSupportedStorage(SupportedStorageT &&value)
AWS_OUTPOSTS_API CatalogItem()=default
CatalogItem & AddEC2Capacities(EC2CapacitiesT &&value)
Definition CatalogItem.h:90
RackScalingType GetRackScalingType() const
CatalogItem & WithSupportedUplinkGbps(SupportedUplinkGbpsT &&value)
CatalogItem & AddSupportedStorage(SupportedStorageEnum value)
CatalogItemStatus GetItemStatus() const
Definition CatalogItem.h:61
const Aws::Vector< int > & GetSupportedUplinkGbps() const
AWS_OUTPOSTS_API CatalogItem(Aws::Utils::Json::JsonView jsonValue)
CatalogItem & WithRackScalingType(RackScalingType value)
AWS_OUTPOSTS_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< SupportedStorageEnum > & GetSupportedStorage() const
const Aws::String & GetCatalogItemId() const
Definition CatalogItem.h:43
CatalogItem & WithPowerKva(double value)
const Aws::Vector< EC2Capacity > & GetEC2Capacities() const
Definition CatalogItem.h:77
CatalogItem & WithSupportedStorage(SupportedStorageT &&value)
void SetItemStatus(CatalogItemStatus value)
Definition CatalogItem.h:63
CatalogItem & WithCatalogItemId(CatalogItemIdT &&value)
Definition CatalogItem.h:51
CatalogItem & AddSupportedUplinkGbps(int value)
CatalogItem & WithWeightLbs(int value)
void SetSupportedUplinkGbps(SupportedUplinkGbpsT &&value)
CatalogItem & WithItemStatus(CatalogItemStatus value)
Definition CatalogItem.h:67
void SetRackScalingType(RackScalingType value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue