AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
ReservationOffering.h
1
6#pragma once
7#include <aws/redshift-serverless/RedshiftServerless_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/redshift-serverless/model/OfferingType.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace RedshiftServerless
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_REDSHIFTSERVERLESS_API ReservationOffering() = default;
37 AWS_REDSHIFTSERVERLESS_API ReservationOffering(Aws::Utils::Json::JsonView jsonValue);
38 AWS_REDSHIFTSERVERLESS_API ReservationOffering& operator=(Aws::Utils::Json::JsonView jsonValue);
39 AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
46 inline const Aws::String& GetCurrencyCode() const { return m_currencyCode; }
47 inline bool CurrencyCodeHasBeenSet() const { return m_currencyCodeHasBeenSet; }
48 template<typename CurrencyCodeT = Aws::String>
49 void SetCurrencyCode(CurrencyCodeT&& value) { m_currencyCodeHasBeenSet = true; m_currencyCode = std::forward<CurrencyCodeT>(value); }
50 template<typename CurrencyCodeT = Aws::String>
51 ReservationOffering& WithCurrencyCode(CurrencyCodeT&& value) { SetCurrencyCode(std::forward<CurrencyCodeT>(value)); return *this;}
53
55
58 inline int GetDuration() const { return m_duration; }
59 inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; }
60 inline void SetDuration(int value) { m_durationHasBeenSet = true; m_duration = value; }
61 inline ReservationOffering& WithDuration(int value) { SetDuration(value); return *this;}
63
65
68 inline double GetHourlyCharge() const { return m_hourlyCharge; }
69 inline bool HourlyChargeHasBeenSet() const { return m_hourlyChargeHasBeenSet; }
70 inline void SetHourlyCharge(double value) { m_hourlyChargeHasBeenSet = true; m_hourlyCharge = value; }
71 inline ReservationOffering& WithHourlyCharge(double value) { SetHourlyCharge(value); return *this;}
73
75
78 inline const Aws::String& GetOfferingId() const { return m_offeringId; }
79 inline bool OfferingIdHasBeenSet() const { return m_offeringIdHasBeenSet; }
80 template<typename OfferingIdT = Aws::String>
81 void SetOfferingId(OfferingIdT&& value) { m_offeringIdHasBeenSet = true; m_offeringId = std::forward<OfferingIdT>(value); }
82 template<typename OfferingIdT = Aws::String>
83 ReservationOffering& WithOfferingId(OfferingIdT&& value) { SetOfferingId(std::forward<OfferingIdT>(value)); return *this;}
85
87
90 inline OfferingType GetOfferingType() const { return m_offeringType; }
91 inline bool OfferingTypeHasBeenSet() const { return m_offeringTypeHasBeenSet; }
92 inline void SetOfferingType(OfferingType value) { m_offeringTypeHasBeenSet = true; m_offeringType = value; }
93 inline ReservationOffering& WithOfferingType(OfferingType value) { SetOfferingType(value); return *this;}
95
97
100 inline double GetUpfrontCharge() const { return m_upfrontCharge; }
101 inline bool UpfrontChargeHasBeenSet() const { return m_upfrontChargeHasBeenSet; }
102 inline void SetUpfrontCharge(double value) { m_upfrontChargeHasBeenSet = true; m_upfrontCharge = value; }
103 inline ReservationOffering& WithUpfrontCharge(double value) { SetUpfrontCharge(value); return *this;}
105 private:
106
107 Aws::String m_currencyCode;
108 bool m_currencyCodeHasBeenSet = false;
109
110 int m_duration{0};
111 bool m_durationHasBeenSet = false;
112
113 double m_hourlyCharge{0.0};
114 bool m_hourlyChargeHasBeenSet = false;
115
116 Aws::String m_offeringId;
117 bool m_offeringIdHasBeenSet = false;
118
119 OfferingType m_offeringType{OfferingType::NOT_SET};
120 bool m_offeringTypeHasBeenSet = false;
121
122 double m_upfrontCharge{0.0};
123 bool m_upfrontChargeHasBeenSet = false;
124 };
125
126} // namespace Model
127} // namespace RedshiftServerless
128} // namespace Aws
ReservationOffering & WithUpfrontCharge(double value)
AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_REDSHIFTSERVERLESS_API ReservationOffering(Aws::Utils::Json::JsonView jsonValue)
ReservationOffering & WithOfferingId(OfferingIdT &&value)
ReservationOffering & WithOfferingType(OfferingType value)
ReservationOffering & WithCurrencyCode(CurrencyCodeT &&value)
ReservationOffering & WithHourlyCharge(double value)
AWS_REDSHIFTSERVERLESS_API ReservationOffering()=default
AWS_REDSHIFTSERVERLESS_API ReservationOffering & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue