AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
Ec2InstanceSavingsPlansConfiguration.h
1
6#pragma once
7#include <aws/cost-optimization-hub/CostOptimizationHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <utility>
10
11namespace Aws
12{
13namespace Utils
14{
15namespace Json
16{
17 class JsonValue;
18 class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace CostOptimizationHub
22{
23namespace Model
24{
25
33 {
34 public:
35 AWS_COSTOPTIMIZATIONHUB_API Ec2InstanceSavingsPlansConfiguration();
38 AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
39
40
42
45 inline const Aws::String& GetAccountScope() const{ return m_accountScope; }
46 inline bool AccountScopeHasBeenSet() const { return m_accountScopeHasBeenSet; }
47 inline void SetAccountScope(const Aws::String& value) { m_accountScopeHasBeenSet = true; m_accountScope = value; }
48 inline void SetAccountScope(Aws::String&& value) { m_accountScopeHasBeenSet = true; m_accountScope = std::move(value); }
49 inline void SetAccountScope(const char* value) { m_accountScopeHasBeenSet = true; m_accountScope.assign(value); }
51 inline Ec2InstanceSavingsPlansConfiguration& WithAccountScope(Aws::String&& value) { SetAccountScope(std::move(value)); return *this;}
52 inline Ec2InstanceSavingsPlansConfiguration& WithAccountScope(const char* value) { SetAccountScope(value); return *this;}
54
56
59 inline const Aws::String& GetTerm() const{ return m_term; }
60 inline bool TermHasBeenSet() const { return m_termHasBeenSet; }
61 inline void SetTerm(const Aws::String& value) { m_termHasBeenSet = true; m_term = value; }
62 inline void SetTerm(Aws::String&& value) { m_termHasBeenSet = true; m_term = std::move(value); }
63 inline void SetTerm(const char* value) { m_termHasBeenSet = true; m_term.assign(value); }
64 inline Ec2InstanceSavingsPlansConfiguration& WithTerm(const Aws::String& value) { SetTerm(value); return *this;}
65 inline Ec2InstanceSavingsPlansConfiguration& WithTerm(Aws::String&& value) { SetTerm(std::move(value)); return *this;}
66 inline Ec2InstanceSavingsPlansConfiguration& WithTerm(const char* value) { SetTerm(value); return *this;}
68
70
73 inline const Aws::String& GetPaymentOption() const{ return m_paymentOption; }
74 inline bool PaymentOptionHasBeenSet() const { return m_paymentOptionHasBeenSet; }
75 inline void SetPaymentOption(const Aws::String& value) { m_paymentOptionHasBeenSet = true; m_paymentOption = value; }
76 inline void SetPaymentOption(Aws::String&& value) { m_paymentOptionHasBeenSet = true; m_paymentOption = std::move(value); }
77 inline void SetPaymentOption(const char* value) { m_paymentOptionHasBeenSet = true; m_paymentOption.assign(value); }
79 inline Ec2InstanceSavingsPlansConfiguration& WithPaymentOption(Aws::String&& value) { SetPaymentOption(std::move(value)); return *this;}
80 inline Ec2InstanceSavingsPlansConfiguration& WithPaymentOption(const char* value) { SetPaymentOption(value); return *this;}
82
84
87 inline const Aws::String& GetHourlyCommitment() const{ return m_hourlyCommitment; }
88 inline bool HourlyCommitmentHasBeenSet() const { return m_hourlyCommitmentHasBeenSet; }
89 inline void SetHourlyCommitment(const Aws::String& value) { m_hourlyCommitmentHasBeenSet = true; m_hourlyCommitment = value; }
90 inline void SetHourlyCommitment(Aws::String&& value) { m_hourlyCommitmentHasBeenSet = true; m_hourlyCommitment = std::move(value); }
91 inline void SetHourlyCommitment(const char* value) { m_hourlyCommitmentHasBeenSet = true; m_hourlyCommitment.assign(value); }
94 inline Ec2InstanceSavingsPlansConfiguration& WithHourlyCommitment(const char* value) { SetHourlyCommitment(value); return *this;}
96
98
101 inline const Aws::String& GetInstanceFamily() const{ return m_instanceFamily; }
102 inline bool InstanceFamilyHasBeenSet() const { return m_instanceFamilyHasBeenSet; }
103 inline void SetInstanceFamily(const Aws::String& value) { m_instanceFamilyHasBeenSet = true; m_instanceFamily = value; }
104 inline void SetInstanceFamily(Aws::String&& value) { m_instanceFamilyHasBeenSet = true; m_instanceFamily = std::move(value); }
105 inline void SetInstanceFamily(const char* value) { m_instanceFamilyHasBeenSet = true; m_instanceFamily.assign(value); }
108 inline Ec2InstanceSavingsPlansConfiguration& WithInstanceFamily(const char* value) { SetInstanceFamily(value); return *this;}
110
112
115 inline const Aws::String& GetSavingsPlansRegion() const{ return m_savingsPlansRegion; }
116 inline bool SavingsPlansRegionHasBeenSet() const { return m_savingsPlansRegionHasBeenSet; }
117 inline void SetSavingsPlansRegion(const Aws::String& value) { m_savingsPlansRegionHasBeenSet = true; m_savingsPlansRegion = value; }
118 inline void SetSavingsPlansRegion(Aws::String&& value) { m_savingsPlansRegionHasBeenSet = true; m_savingsPlansRegion = std::move(value); }
119 inline void SetSavingsPlansRegion(const char* value) { m_savingsPlansRegionHasBeenSet = true; m_savingsPlansRegion.assign(value); }
124 private:
125
126 Aws::String m_accountScope;
127 bool m_accountScopeHasBeenSet = false;
128
129 Aws::String m_term;
130 bool m_termHasBeenSet = false;
131
132 Aws::String m_paymentOption;
133 bool m_paymentOptionHasBeenSet = false;
134
135 Aws::String m_hourlyCommitment;
136 bool m_hourlyCommitmentHasBeenSet = false;
137
138 Aws::String m_instanceFamily;
139 bool m_instanceFamilyHasBeenSet = false;
140
141 Aws::String m_savingsPlansRegion;
142 bool m_savingsPlansRegionHasBeenSet = false;
143 };
144
145} // namespace Model
146} // namespace CostOptimizationHub
147} // namespace Aws
Ec2InstanceSavingsPlansConfiguration & WithPaymentOption(const Aws::String &value)
AWS_COSTOPTIMIZATIONHUB_API Ec2InstanceSavingsPlansConfiguration(Aws::Utils::Json::JsonView jsonValue)
Ec2InstanceSavingsPlansConfiguration & WithPaymentOption(const char *value)
Ec2InstanceSavingsPlansConfiguration & WithSavingsPlansRegion(const Aws::String &value)
Ec2InstanceSavingsPlansConfiguration & WithInstanceFamily(const Aws::String &value)
Ec2InstanceSavingsPlansConfiguration & WithAccountScope(Aws::String &&value)
Ec2InstanceSavingsPlansConfiguration & WithAccountScope(const Aws::String &value)
Ec2InstanceSavingsPlansConfiguration & WithInstanceFamily(Aws::String &&value)
AWS_COSTOPTIMIZATIONHUB_API Ec2InstanceSavingsPlansConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
Ec2InstanceSavingsPlansConfiguration & WithHourlyCommitment(const Aws::String &value)
Ec2InstanceSavingsPlansConfiguration & WithHourlyCommitment(Aws::String &&value)
AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const
Ec2InstanceSavingsPlansConfiguration & WithHourlyCommitment(const char *value)
Ec2InstanceSavingsPlansConfiguration & WithTerm(const Aws::String &value)
Ec2InstanceSavingsPlansConfiguration & WithSavingsPlansRegion(const char *value)
Ec2InstanceSavingsPlansConfiguration & WithPaymentOption(Aws::String &&value)
Ec2InstanceSavingsPlansConfiguration & WithSavingsPlansRegion(Aws::String &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue