AWS SDK for C++

AWS SDK for C++ Version 1.11.748

Loading...
Searching...
No Matches
LicenseConfiguration.h
1
6#pragma once
7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/compute-optimizer/model/LicenseEdition.h>
9#include <aws/compute-optimizer/model/LicenseModel.h>
10#include <aws/compute-optimizer/model/LicenseName.h>
11#include <aws/compute-optimizer/model/MetricSource.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace ComputeOptimizer {
25namespace Model {
26
34 public:
35 AWS_COMPUTEOPTIMIZER_API LicenseConfiguration() = default;
36 AWS_COMPUTEOPTIMIZER_API LicenseConfiguration(Aws::Utils::Json::JsonView jsonValue);
37 AWS_COMPUTEOPTIMIZER_API LicenseConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
44 inline int GetNumberOfCores() const { return m_numberOfCores; }
45 inline bool NumberOfCoresHasBeenSet() const { return m_numberOfCoresHasBeenSet; }
46 inline void SetNumberOfCores(int value) {
47 m_numberOfCoresHasBeenSet = true;
48 m_numberOfCores = value;
49 }
51 SetNumberOfCores(value);
52 return *this;
53 }
55
57
60 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
61 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
62 template <typename InstanceTypeT = Aws::String>
63 void SetInstanceType(InstanceTypeT&& value) {
64 m_instanceTypeHasBeenSet = true;
65 m_instanceType = std::forward<InstanceTypeT>(value);
66 }
67 template <typename InstanceTypeT = Aws::String>
68 LicenseConfiguration& WithInstanceType(InstanceTypeT&& value) {
69 SetInstanceType(std::forward<InstanceTypeT>(value));
70 return *this;
71 }
73
75
78 inline const Aws::String& GetOperatingSystem() const { return m_operatingSystem; }
79 inline bool OperatingSystemHasBeenSet() const { return m_operatingSystemHasBeenSet; }
80 template <typename OperatingSystemT = Aws::String>
81 void SetOperatingSystem(OperatingSystemT&& value) {
82 m_operatingSystemHasBeenSet = true;
83 m_operatingSystem = std::forward<OperatingSystemT>(value);
84 }
85 template <typename OperatingSystemT = Aws::String>
86 LicenseConfiguration& WithOperatingSystem(OperatingSystemT&& value) {
87 SetOperatingSystem(std::forward<OperatingSystemT>(value));
88 return *this;
89 }
91
93
97 inline LicenseEdition GetLicenseEdition() const { return m_licenseEdition; }
98 inline bool LicenseEditionHasBeenSet() const { return m_licenseEditionHasBeenSet; }
99 inline void SetLicenseEdition(LicenseEdition value) {
100 m_licenseEditionHasBeenSet = true;
101 m_licenseEdition = value;
102 }
104 SetLicenseEdition(value);
105 return *this;
106 }
108
110
113 inline LicenseName GetLicenseName() const { return m_licenseName; }
114 inline bool LicenseNameHasBeenSet() const { return m_licenseNameHasBeenSet; }
115 inline void SetLicenseName(LicenseName value) {
116 m_licenseNameHasBeenSet = true;
117 m_licenseName = value;
118 }
120 SetLicenseName(value);
121 return *this;
122 }
124
126
129 inline LicenseModel GetLicenseModel() const { return m_licenseModel; }
130 inline bool LicenseModelHasBeenSet() const { return m_licenseModelHasBeenSet; }
131 inline void SetLicenseModel(LicenseModel value) {
132 m_licenseModelHasBeenSet = true;
133 m_licenseModel = value;
134 }
136 SetLicenseModel(value);
137 return *this;
138 }
140
142
146 inline const Aws::String& GetLicenseVersion() const { return m_licenseVersion; }
147 inline bool LicenseVersionHasBeenSet() const { return m_licenseVersionHasBeenSet; }
148 template <typename LicenseVersionT = Aws::String>
149 void SetLicenseVersion(LicenseVersionT&& value) {
150 m_licenseVersionHasBeenSet = true;
151 m_licenseVersion = std::forward<LicenseVersionT>(value);
152 }
153 template <typename LicenseVersionT = Aws::String>
154 LicenseConfiguration& WithLicenseVersion(LicenseVersionT&& value) {
155 SetLicenseVersion(std::forward<LicenseVersionT>(value));
156 return *this;
157 }
159
161
165 inline const Aws::Vector<MetricSource>& GetMetricsSource() const { return m_metricsSource; }
166 inline bool MetricsSourceHasBeenSet() const { return m_metricsSourceHasBeenSet; }
167 template <typename MetricsSourceT = Aws::Vector<MetricSource>>
168 void SetMetricsSource(MetricsSourceT&& value) {
169 m_metricsSourceHasBeenSet = true;
170 m_metricsSource = std::forward<MetricsSourceT>(value);
171 }
172 template <typename MetricsSourceT = Aws::Vector<MetricSource>>
173 LicenseConfiguration& WithMetricsSource(MetricsSourceT&& value) {
174 SetMetricsSource(std::forward<MetricsSourceT>(value));
175 return *this;
176 }
177 template <typename MetricsSourceT = MetricSource>
178 LicenseConfiguration& AddMetricsSource(MetricsSourceT&& value) {
179 m_metricsSourceHasBeenSet = true;
180 m_metricsSource.emplace_back(std::forward<MetricsSourceT>(value));
181 return *this;
182 }
184 private:
185 int m_numberOfCores{0};
186
187 Aws::String m_instanceType;
188
189 Aws::String m_operatingSystem;
190
191 LicenseEdition m_licenseEdition{LicenseEdition::NOT_SET};
192
193 LicenseName m_licenseName{LicenseName::NOT_SET};
194
195 LicenseModel m_licenseModel{LicenseModel::NOT_SET};
196
197 Aws::String m_licenseVersion;
198
199 Aws::Vector<MetricSource> m_metricsSource;
200 bool m_numberOfCoresHasBeenSet = false;
201 bool m_instanceTypeHasBeenSet = false;
202 bool m_operatingSystemHasBeenSet = false;
203 bool m_licenseEditionHasBeenSet = false;
204 bool m_licenseNameHasBeenSet = false;
205 bool m_licenseModelHasBeenSet = false;
206 bool m_licenseVersionHasBeenSet = false;
207 bool m_metricsSourceHasBeenSet = false;
208};
209
210} // namespace Model
211} // namespace ComputeOptimizer
212} // namespace Aws
LicenseConfiguration & WithLicenseModel(LicenseModel value)
AWS_COMPUTEOPTIMIZER_API LicenseConfiguration()=default
LicenseConfiguration & WithLicenseName(LicenseName value)
LicenseConfiguration & WithMetricsSource(MetricsSourceT &&value)
LicenseConfiguration & AddMetricsSource(MetricsSourceT &&value)
AWS_COMPUTEOPTIMIZER_API LicenseConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const
LicenseConfiguration & WithLicenseEdition(LicenseEdition value)
LicenseConfiguration & WithInstanceType(InstanceTypeT &&value)
LicenseConfiguration & WithOperatingSystem(OperatingSystemT &&value)
AWS_COMPUTEOPTIMIZER_API LicenseConfiguration(Aws::Utils::Json::JsonView jsonValue)
LicenseConfiguration & WithLicenseVersion(LicenseVersionT &&value)
const Aws::Vector< MetricSource > & GetMetricsSource() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue