AWS SDK for C++

AWS SDK for C++ Version 1.11.754

Loading...
Searching...
No Matches
Ec2InstanceSavingsPlansConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/cost-optimization-hub/CostOptimizationHub_EXPORTS.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace CostOptimizationHub {
20namespace Model {
21
29 public:
30 AWS_COSTOPTIMIZATIONHUB_API Ec2InstanceSavingsPlansConfiguration() = default;
33 AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
39 inline const Aws::String& GetAccountScope() const { return m_accountScope; }
40 inline bool AccountScopeHasBeenSet() const { return m_accountScopeHasBeenSet; }
41 template <typename AccountScopeT = Aws::String>
42 void SetAccountScope(AccountScopeT&& value) {
43 m_accountScopeHasBeenSet = true;
44 m_accountScope = std::forward<AccountScopeT>(value);
45 }
46 template <typename AccountScopeT = Aws::String>
48 SetAccountScope(std::forward<AccountScopeT>(value));
49 return *this;
50 }
52
54
57 inline const Aws::String& GetTerm() const { return m_term; }
58 inline bool TermHasBeenSet() const { return m_termHasBeenSet; }
59 template <typename TermT = Aws::String>
60 void SetTerm(TermT&& value) {
61 m_termHasBeenSet = true;
62 m_term = std::forward<TermT>(value);
63 }
64 template <typename TermT = Aws::String>
66 SetTerm(std::forward<TermT>(value));
67 return *this;
68 }
70
72
75 inline const Aws::String& GetPaymentOption() const { return m_paymentOption; }
76 inline bool PaymentOptionHasBeenSet() const { return m_paymentOptionHasBeenSet; }
77 template <typename PaymentOptionT = Aws::String>
78 void SetPaymentOption(PaymentOptionT&& value) {
79 m_paymentOptionHasBeenSet = true;
80 m_paymentOption = std::forward<PaymentOptionT>(value);
81 }
82 template <typename PaymentOptionT = Aws::String>
84 SetPaymentOption(std::forward<PaymentOptionT>(value));
85 return *this;
86 }
88
90
93 inline const Aws::String& GetHourlyCommitment() const { return m_hourlyCommitment; }
94 inline bool HourlyCommitmentHasBeenSet() const { return m_hourlyCommitmentHasBeenSet; }
95 template <typename HourlyCommitmentT = Aws::String>
96 void SetHourlyCommitment(HourlyCommitmentT&& value) {
97 m_hourlyCommitmentHasBeenSet = true;
98 m_hourlyCommitment = std::forward<HourlyCommitmentT>(value);
99 }
100 template <typename HourlyCommitmentT = Aws::String>
102 SetHourlyCommitment(std::forward<HourlyCommitmentT>(value));
103 return *this;
104 }
106
108
111 inline const Aws::String& GetInstanceFamily() const { return m_instanceFamily; }
112 inline bool InstanceFamilyHasBeenSet() const { return m_instanceFamilyHasBeenSet; }
113 template <typename InstanceFamilyT = Aws::String>
114 void SetInstanceFamily(InstanceFamilyT&& value) {
115 m_instanceFamilyHasBeenSet = true;
116 m_instanceFamily = std::forward<InstanceFamilyT>(value);
117 }
118 template <typename InstanceFamilyT = Aws::String>
120 SetInstanceFamily(std::forward<InstanceFamilyT>(value));
121 return *this;
122 }
124
126
129 inline const Aws::String& GetSavingsPlansRegion() const { return m_savingsPlansRegion; }
130 inline bool SavingsPlansRegionHasBeenSet() const { return m_savingsPlansRegionHasBeenSet; }
131 template <typename SavingsPlansRegionT = Aws::String>
132 void SetSavingsPlansRegion(SavingsPlansRegionT&& value) {
133 m_savingsPlansRegionHasBeenSet = true;
134 m_savingsPlansRegion = std::forward<SavingsPlansRegionT>(value);
135 }
136 template <typename SavingsPlansRegionT = Aws::String>
138 SetSavingsPlansRegion(std::forward<SavingsPlansRegionT>(value));
139 return *this;
140 }
142 private:
143 Aws::String m_accountScope;
144
145 Aws::String m_term;
146
147 Aws::String m_paymentOption;
148
149 Aws::String m_hourlyCommitment;
150
151 Aws::String m_instanceFamily;
152
153 Aws::String m_savingsPlansRegion;
154 bool m_accountScopeHasBeenSet = false;
155 bool m_termHasBeenSet = false;
156 bool m_paymentOptionHasBeenSet = false;
157 bool m_hourlyCommitmentHasBeenSet = false;
158 bool m_instanceFamilyHasBeenSet = false;
159 bool m_savingsPlansRegionHasBeenSet = false;
160};
161
162} // namespace Model
163} // namespace CostOptimizationHub
164} // namespace Aws
Ec2InstanceSavingsPlansConfiguration & WithHourlyCommitment(HourlyCommitmentT &&value)
AWS_COSTOPTIMIZATIONHUB_API Ec2InstanceSavingsPlansConfiguration(Aws::Utils::Json::JsonView jsonValue)
Ec2InstanceSavingsPlansConfiguration & WithInstanceFamily(InstanceFamilyT &&value)
Ec2InstanceSavingsPlansConfiguration & WithSavingsPlansRegion(SavingsPlansRegionT &&value)
AWS_COSTOPTIMIZATIONHUB_API Ec2InstanceSavingsPlansConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
Ec2InstanceSavingsPlansConfiguration & WithPaymentOption(PaymentOptionT &&value)
AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_COSTOPTIMIZATIONHUB_API Ec2InstanceSavingsPlansConfiguration()=default
Ec2InstanceSavingsPlansConfiguration & WithAccountScope(AccountScopeT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue