AWS SDK for C++

AWS SDK for C++ Version 1.11.440

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();
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 inline void SetAccountScope(const Aws::String& value) { m_accountScopeHasBeenSet = true; m_accountScope = value; }
51 inline void SetAccountScope(Aws::String&& value) { m_accountScopeHasBeenSet = true; m_accountScope = std::move(value); }
52 inline void SetAccountScope(const char* value) { m_accountScopeHasBeenSet = true; m_accountScope.assign(value); }
54 inline ComputeSavingsPlansConfiguration& WithAccountScope(Aws::String&& value) { SetAccountScope(std::move(value)); return *this;}
55 inline ComputeSavingsPlansConfiguration& WithAccountScope(const char* value) { SetAccountScope(value); return *this;}
57
59
62 inline const Aws::String& GetTerm() const{ return m_term; }
63 inline bool TermHasBeenSet() const { return m_termHasBeenSet; }
64 inline void SetTerm(const Aws::String& value) { m_termHasBeenSet = true; m_term = value; }
65 inline void SetTerm(Aws::String&& value) { m_termHasBeenSet = true; m_term = std::move(value); }
66 inline void SetTerm(const char* value) { m_termHasBeenSet = true; m_term.assign(value); }
67 inline ComputeSavingsPlansConfiguration& WithTerm(const Aws::String& value) { SetTerm(value); return *this;}
68 inline ComputeSavingsPlansConfiguration& WithTerm(Aws::String&& value) { SetTerm(std::move(value)); return *this;}
69 inline ComputeSavingsPlansConfiguration& WithTerm(const char* value) { SetTerm(value); return *this;}
71
73
76 inline const Aws::String& GetPaymentOption() const{ return m_paymentOption; }
77 inline bool PaymentOptionHasBeenSet() const { return m_paymentOptionHasBeenSet; }
78 inline void SetPaymentOption(const Aws::String& value) { m_paymentOptionHasBeenSet = true; m_paymentOption = value; }
79 inline void SetPaymentOption(Aws::String&& value) { m_paymentOptionHasBeenSet = true; m_paymentOption = std::move(value); }
80 inline void SetPaymentOption(const char* value) { m_paymentOptionHasBeenSet = true; m_paymentOption.assign(value); }
82 inline ComputeSavingsPlansConfiguration& WithPaymentOption(Aws::String&& value) { SetPaymentOption(std::move(value)); return *this;}
83 inline ComputeSavingsPlansConfiguration& WithPaymentOption(const char* value) { SetPaymentOption(value); return *this;}
85
87
90 inline const Aws::String& GetHourlyCommitment() const{ return m_hourlyCommitment; }
91 inline bool HourlyCommitmentHasBeenSet() const { return m_hourlyCommitmentHasBeenSet; }
92 inline void SetHourlyCommitment(const Aws::String& value) { m_hourlyCommitmentHasBeenSet = true; m_hourlyCommitment = value; }
93 inline void SetHourlyCommitment(Aws::String&& value) { m_hourlyCommitmentHasBeenSet = true; m_hourlyCommitment = std::move(value); }
94 inline void SetHourlyCommitment(const char* value) { m_hourlyCommitmentHasBeenSet = true; m_hourlyCommitment.assign(value); }
96 inline ComputeSavingsPlansConfiguration& WithHourlyCommitment(Aws::String&& value) { SetHourlyCommitment(std::move(value)); return *this;}
97 inline ComputeSavingsPlansConfiguration& WithHourlyCommitment(const char* value) { SetHourlyCommitment(value); return *this;}
99 private:
100
101 Aws::String m_accountScope;
102 bool m_accountScopeHasBeenSet = false;
103
104 Aws::String m_term;
105 bool m_termHasBeenSet = false;
106
107 Aws::String m_paymentOption;
108 bool m_paymentOptionHasBeenSet = false;
109
110 Aws::String m_hourlyCommitment;
111 bool m_hourlyCommitmentHasBeenSet = false;
112 };
113
114} // namespace Model
115} // namespace CostOptimizationHub
116} // namespace Aws
ComputeSavingsPlansConfiguration & WithTerm(const Aws::String &value)
AWS_COSTOPTIMIZATIONHUB_API ComputeSavingsPlansConfiguration(Aws::Utils::Json::JsonView jsonValue)
ComputeSavingsPlansConfiguration & WithAccountScope(const char *value)
AWS_COSTOPTIMIZATIONHUB_API ComputeSavingsPlansConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
ComputeSavingsPlansConfiguration & WithPaymentOption(Aws::String &&value)
ComputeSavingsPlansConfiguration & WithHourlyCommitment(const Aws::String &value)
ComputeSavingsPlansConfiguration & WithTerm(Aws::String &&value)
ComputeSavingsPlansConfiguration & WithHourlyCommitment(Aws::String &&value)
AWS_COSTOPTIMIZATIONHUB_API Aws::Utils::Json::JsonValue Jsonize() const
ComputeSavingsPlansConfiguration & WithAccountScope(const Aws::String &value)
ComputeSavingsPlansConfiguration & WithPaymentOption(const Aws::String &value)
ComputeSavingsPlansConfiguration & WithHourlyCommitment(const char *value)
ComputeSavingsPlansConfiguration & WithPaymentOption(const char *value)
ComputeSavingsPlansConfiguration & WithAccountScope(Aws::String &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue