AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
TargetInstance.h
1
6#pragma once
7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/ce/model/PlatformDifference.h>
9#include <aws/ce/model/ResourceDetails.h>
10#include <aws/ce/model/ResourceUtilization.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace CostExplorer {
24namespace Model {
25
32 public:
33 AWS_COSTEXPLORER_API TargetInstance() = default;
34 AWS_COSTEXPLORER_API TargetInstance(Aws::Utils::Json::JsonView jsonValue);
35 AWS_COSTEXPLORER_API TargetInstance& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::String& GetEstimatedMonthlyCost() const { return m_estimatedMonthlyCost; }
43 inline bool EstimatedMonthlyCostHasBeenSet() const { return m_estimatedMonthlyCostHasBeenSet; }
44 template <typename EstimatedMonthlyCostT = Aws::String>
45 void SetEstimatedMonthlyCost(EstimatedMonthlyCostT&& value) {
46 m_estimatedMonthlyCostHasBeenSet = true;
47 m_estimatedMonthlyCost = std::forward<EstimatedMonthlyCostT>(value);
48 }
49 template <typename EstimatedMonthlyCostT = Aws::String>
50 TargetInstance& WithEstimatedMonthlyCost(EstimatedMonthlyCostT&& value) {
51 SetEstimatedMonthlyCost(std::forward<EstimatedMonthlyCostT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetEstimatedMonthlySavings() const { return m_estimatedMonthlySavings; }
61 inline bool EstimatedMonthlySavingsHasBeenSet() const { return m_estimatedMonthlySavingsHasBeenSet; }
62 template <typename EstimatedMonthlySavingsT = Aws::String>
63 void SetEstimatedMonthlySavings(EstimatedMonthlySavingsT&& value) {
64 m_estimatedMonthlySavingsHasBeenSet = true;
65 m_estimatedMonthlySavings = std::forward<EstimatedMonthlySavingsT>(value);
66 }
67 template <typename EstimatedMonthlySavingsT = Aws::String>
68 TargetInstance& WithEstimatedMonthlySavings(EstimatedMonthlySavingsT&& value) {
69 SetEstimatedMonthlySavings(std::forward<EstimatedMonthlySavingsT>(value));
70 return *this;
71 }
73
75
79 inline const Aws::String& GetCurrencyCode() const { return m_currencyCode; }
80 inline bool CurrencyCodeHasBeenSet() const { return m_currencyCodeHasBeenSet; }
81 template <typename CurrencyCodeT = Aws::String>
82 void SetCurrencyCode(CurrencyCodeT&& value) {
83 m_currencyCodeHasBeenSet = true;
84 m_currencyCode = std::forward<CurrencyCodeT>(value);
85 }
86 template <typename CurrencyCodeT = Aws::String>
87 TargetInstance& WithCurrencyCode(CurrencyCodeT&& value) {
88 SetCurrencyCode(std::forward<CurrencyCodeT>(value));
89 return *this;
90 }
92
94
98 inline bool GetDefaultTargetInstance() const { return m_defaultTargetInstance; }
99 inline bool DefaultTargetInstanceHasBeenSet() const { return m_defaultTargetInstanceHasBeenSet; }
100 inline void SetDefaultTargetInstance(bool value) {
101 m_defaultTargetInstanceHasBeenSet = true;
102 m_defaultTargetInstance = value;
103 }
106 return *this;
107 }
109
111
114 inline const ResourceDetails& GetResourceDetails() const { return m_resourceDetails; }
115 inline bool ResourceDetailsHasBeenSet() const { return m_resourceDetailsHasBeenSet; }
116 template <typename ResourceDetailsT = ResourceDetails>
117 void SetResourceDetails(ResourceDetailsT&& value) {
118 m_resourceDetailsHasBeenSet = true;
119 m_resourceDetails = std::forward<ResourceDetailsT>(value);
120 }
121 template <typename ResourceDetailsT = ResourceDetails>
122 TargetInstance& WithResourceDetails(ResourceDetailsT&& value) {
123 SetResourceDetails(std::forward<ResourceDetailsT>(value));
124 return *this;
125 }
127
129
132 inline const ResourceUtilization& GetExpectedResourceUtilization() const { return m_expectedResourceUtilization; }
133 inline bool ExpectedResourceUtilizationHasBeenSet() const { return m_expectedResourceUtilizationHasBeenSet; }
134 template <typename ExpectedResourceUtilizationT = ResourceUtilization>
135 void SetExpectedResourceUtilization(ExpectedResourceUtilizationT&& value) {
136 m_expectedResourceUtilizationHasBeenSet = true;
137 m_expectedResourceUtilization = std::forward<ExpectedResourceUtilizationT>(value);
138 }
139 template <typename ExpectedResourceUtilizationT = ResourceUtilization>
140 TargetInstance& WithExpectedResourceUtilization(ExpectedResourceUtilizationT&& value) {
141 SetExpectedResourceUtilization(std::forward<ExpectedResourceUtilizationT>(value));
142 return *this;
143 }
145
147
151 inline const Aws::Vector<PlatformDifference>& GetPlatformDifferences() const { return m_platformDifferences; }
152 inline bool PlatformDifferencesHasBeenSet() const { return m_platformDifferencesHasBeenSet; }
153 template <typename PlatformDifferencesT = Aws::Vector<PlatformDifference>>
154 void SetPlatformDifferences(PlatformDifferencesT&& value) {
155 m_platformDifferencesHasBeenSet = true;
156 m_platformDifferences = std::forward<PlatformDifferencesT>(value);
157 }
158 template <typename PlatformDifferencesT = Aws::Vector<PlatformDifference>>
159 TargetInstance& WithPlatformDifferences(PlatformDifferencesT&& value) {
160 SetPlatformDifferences(std::forward<PlatformDifferencesT>(value));
161 return *this;
162 }
164 m_platformDifferencesHasBeenSet = true;
165 m_platformDifferences.push_back(value);
166 return *this;
167 }
169 private:
170 Aws::String m_estimatedMonthlyCost;
171
172 Aws::String m_estimatedMonthlySavings;
173
174 Aws::String m_currencyCode;
175
176 bool m_defaultTargetInstance{false};
177
178 ResourceDetails m_resourceDetails;
179
180 ResourceUtilization m_expectedResourceUtilization;
181
182 Aws::Vector<PlatformDifference> m_platformDifferences;
183 bool m_estimatedMonthlyCostHasBeenSet = false;
184 bool m_estimatedMonthlySavingsHasBeenSet = false;
185 bool m_currencyCodeHasBeenSet = false;
186 bool m_defaultTargetInstanceHasBeenSet = false;
187 bool m_resourceDetailsHasBeenSet = false;
188 bool m_expectedResourceUtilizationHasBeenSet = false;
189 bool m_platformDifferencesHasBeenSet = false;
190};
191
192} // namespace Model
193} // namespace CostExplorer
194} // namespace Aws
void SetExpectedResourceUtilization(ExpectedResourceUtilizationT &&value)
TargetInstance & WithPlatformDifferences(PlatformDifferencesT &&value)
void SetPlatformDifferences(PlatformDifferencesT &&value)
const Aws::String & GetEstimatedMonthlySavings() const
void SetEstimatedMonthlyCost(EstimatedMonthlyCostT &&value)
TargetInstance & WithEstimatedMonthlySavings(EstimatedMonthlySavingsT &&value)
TargetInstance & WithExpectedResourceUtilization(ExpectedResourceUtilizationT &&value)
AWS_COSTEXPLORER_API TargetInstance(Aws::Utils::Json::JsonView jsonValue)
void SetEstimatedMonthlySavings(EstimatedMonthlySavingsT &&value)
const Aws::String & GetCurrencyCode() const
void SetCurrencyCode(CurrencyCodeT &&value)
TargetInstance & WithResourceDetails(ResourceDetailsT &&value)
const Aws::String & GetEstimatedMonthlyCost() const
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
TargetInstance & WithCurrencyCode(CurrencyCodeT &&value)
TargetInstance & AddPlatformDifferences(PlatformDifference value)
AWS_COSTEXPLORER_API TargetInstance & operator=(Aws::Utils::Json::JsonView jsonValue)
const ResourceUtilization & GetExpectedResourceUtilization() const
const Aws::Vector< PlatformDifference > & GetPlatformDifferences() const
TargetInstance & WithDefaultTargetInstance(bool value)
void SetResourceDetails(ResourceDetailsT &&value)
AWS_COSTEXPLORER_API TargetInstance()=default
const ResourceDetails & GetResourceDetails() const
TargetInstance & WithEstimatedMonthlyCost(EstimatedMonthlyCostT &&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