AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ComputeSavingsPlansConfiguration.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 ComputeSavingsPlansConfiguration() = default;
36 AWS_COSTOPTIMIZATIONHUB_API ComputeSavingsPlansConfiguration(Aws::Utils::Json::JsonView jsonValue);
38 AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
39
40
42
48 inline const Aws::String& GetAccountScope() const { return m_accountScope; }
49 inline bool AccountScopeHasBeenSet() const { return m_accountScopeHasBeenSet; }
50 template<typename AccountScopeT = Aws::String>
51 void SetAccountScope(AccountScopeT&& value) { m_accountScopeHasBeenSet = true; m_accountScope = std::forward<AccountScopeT>(value); }
52 template<typename AccountScopeT = Aws::String>
53 ComputeSavingsPlansConfiguration& WithAccountScope(AccountScopeT&& value) { SetAccountScope(std::forward<AccountScopeT>(value)); return *this;}
55
57
60 inline const Aws::String& GetTerm() const { return m_term; }
61 inline bool TermHasBeenSet() const { return m_termHasBeenSet; }
62 template<typename TermT = Aws::String>
63 void SetTerm(TermT&& value) { m_termHasBeenSet = true; m_term = std::forward<TermT>(value); }
64 template<typename TermT = Aws::String>
65 ComputeSavingsPlansConfiguration& WithTerm(TermT&& value) { SetTerm(std::forward<TermT>(value)); return *this;}
67
69
72 inline const Aws::String& GetPaymentOption() const { return m_paymentOption; }
73 inline bool PaymentOptionHasBeenSet() const { return m_paymentOptionHasBeenSet; }
74 template<typename PaymentOptionT = Aws::String>
75 void SetPaymentOption(PaymentOptionT&& value) { m_paymentOptionHasBeenSet = true; m_paymentOption = std::forward<PaymentOptionT>(value); }
76 template<typename PaymentOptionT = Aws::String>
77 ComputeSavingsPlansConfiguration& WithPaymentOption(PaymentOptionT&& value) { SetPaymentOption(std::forward<PaymentOptionT>(value)); return *this;}
79
81
84 inline const Aws::String& GetHourlyCommitment() const { return m_hourlyCommitment; }
85 inline bool HourlyCommitmentHasBeenSet() const { return m_hourlyCommitmentHasBeenSet; }
86 template<typename HourlyCommitmentT = Aws::String>
87 void SetHourlyCommitment(HourlyCommitmentT&& value) { m_hourlyCommitmentHasBeenSet = true; m_hourlyCommitment = std::forward<HourlyCommitmentT>(value); }
88 template<typename HourlyCommitmentT = Aws::String>
89 ComputeSavingsPlansConfiguration& WithHourlyCommitment(HourlyCommitmentT&& value) { SetHourlyCommitment(std::forward<HourlyCommitmentT>(value)); return *this;}
91 private:
92
93 Aws::String m_accountScope;
94 bool m_accountScopeHasBeenSet = false;
95
96 Aws::String m_term;
97 bool m_termHasBeenSet = false;
98
99 Aws::String m_paymentOption;
100 bool m_paymentOptionHasBeenSet = false;
101
102 Aws::String m_hourlyCommitment;
103 bool m_hourlyCommitmentHasBeenSet = false;
104 };
105
106} // namespace Model
107} // namespace CostOptimizationHub
108} // namespace Aws
AWS_COSTOPTIMIZATIONHUB_API ComputeSavingsPlansConfiguration()=default
ComputeSavingsPlansConfiguration & WithAccountScope(AccountScopeT &&value)
AWS_COSTOPTIMIZATIONHUB_API ComputeSavingsPlansConfiguration(Aws::Utils::Json::JsonView jsonValue)
ComputeSavingsPlansConfiguration & WithHourlyCommitment(HourlyCommitmentT &&value)
ComputeSavingsPlansConfiguration & WithPaymentOption(PaymentOptionT &&value)
AWS_COSTOPTIMIZATIONHUB_API ComputeSavingsPlansConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue