AWS SDK for C++

AWS SDK for C++ Version 1.11.830

Loading...
Searching...
No Matches
Subscription.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/outposts/Outposts_EXPORTS.h>
11#include <aws/outposts/model/CurrencyCode.h>
12#include <aws/outposts/model/SubscriptionStatus.h>
13#include <aws/outposts/model/SubscriptionType.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Outposts {
25namespace Model {
26
34 public:
35 AWS_OUTPOSTS_API Subscription() = default;
36 AWS_OUTPOSTS_API Subscription(Aws::Utils::Json::JsonView jsonValue);
38 AWS_OUTPOSTS_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
45 inline const Aws::String& GetSubscriptionId() const { return m_subscriptionId; }
46 inline bool SubscriptionIdHasBeenSet() const { return m_subscriptionIdHasBeenSet; }
47 template <typename SubscriptionIdT = Aws::String>
48 void SetSubscriptionId(SubscriptionIdT&& value) {
49 m_subscriptionIdHasBeenSet = true;
50 m_subscriptionId = std::forward<SubscriptionIdT>(value);
51 }
52 template <typename SubscriptionIdT = Aws::String>
53 Subscription& WithSubscriptionId(SubscriptionIdT&& value) {
54 SetSubscriptionId(std::forward<SubscriptionIdT>(value));
55 return *this;
56 }
58
60
67 inline SubscriptionType GetSubscriptionType() const { return m_subscriptionType; }
68 inline bool SubscriptionTypeHasBeenSet() const { return m_subscriptionTypeHasBeenSet; }
70 m_subscriptionTypeHasBeenSet = true;
71 m_subscriptionType = value;
72 }
75 return *this;
76 }
78
80
89 inline SubscriptionStatus GetSubscriptionStatus() const { return m_subscriptionStatus; }
90 inline bool SubscriptionStatusHasBeenSet() const { return m_subscriptionStatusHasBeenSet; }
92 m_subscriptionStatusHasBeenSet = true;
93 m_subscriptionStatus = value;
94 }
97 return *this;
98 }
100
102
105 inline const Aws::Vector<Aws::String>& GetOrderIds() const { return m_orderIds; }
106 inline bool OrderIdsHasBeenSet() const { return m_orderIdsHasBeenSet; }
107 template <typename OrderIdsT = Aws::Vector<Aws::String>>
108 void SetOrderIds(OrderIdsT&& value) {
109 m_orderIdsHasBeenSet = true;
110 m_orderIds = std::forward<OrderIdsT>(value);
111 }
112 template <typename OrderIdsT = Aws::Vector<Aws::String>>
113 Subscription& WithOrderIds(OrderIdsT&& value) {
114 SetOrderIds(std::forward<OrderIdsT>(value));
115 return *this;
116 }
117 template <typename OrderIdsT = Aws::String>
118 Subscription& AddOrderIds(OrderIdsT&& value) {
119 m_orderIdsHasBeenSet = true;
120 m_orderIds.emplace_back(std::forward<OrderIdsT>(value));
121 return *this;
122 }
124
126
129 inline const Aws::Utils::DateTime& GetBeginDate() const { return m_beginDate; }
130 inline bool BeginDateHasBeenSet() const { return m_beginDateHasBeenSet; }
131 template <typename BeginDateT = Aws::Utils::DateTime>
132 void SetBeginDate(BeginDateT&& value) {
133 m_beginDateHasBeenSet = true;
134 m_beginDate = std::forward<BeginDateT>(value);
135 }
136 template <typename BeginDateT = Aws::Utils::DateTime>
137 Subscription& WithBeginDate(BeginDateT&& value) {
138 SetBeginDate(std::forward<BeginDateT>(value));
139 return *this;
140 }
142
144
147 inline const Aws::Utils::DateTime& GetEndDate() const { return m_endDate; }
148 inline bool EndDateHasBeenSet() const { return m_endDateHasBeenSet; }
149 template <typename EndDateT = Aws::Utils::DateTime>
150 void SetEndDate(EndDateT&& value) {
151 m_endDateHasBeenSet = true;
152 m_endDate = std::forward<EndDateT>(value);
153 }
154 template <typename EndDateT = Aws::Utils::DateTime>
155 Subscription& WithEndDate(EndDateT&& value) {
156 SetEndDate(std::forward<EndDateT>(value));
157 return *this;
158 }
160
162
166 inline CurrencyCode GetCurrency() const { return m_currency; }
167 inline bool CurrencyHasBeenSet() const { return m_currencyHasBeenSet; }
168 inline void SetCurrency(CurrencyCode value) {
169 m_currencyHasBeenSet = true;
170 m_currency = value;
171 }
173 SetCurrency(value);
174 return *this;
175 }
177
179
182 inline double GetMonthlyRecurringPrice() const { return m_monthlyRecurringPrice; }
183 inline bool MonthlyRecurringPriceHasBeenSet() const { return m_monthlyRecurringPriceHasBeenSet; }
184 inline void SetMonthlyRecurringPrice(double value) {
185 m_monthlyRecurringPriceHasBeenSet = true;
186 m_monthlyRecurringPrice = value;
187 }
190 return *this;
191 }
193
195
199 inline double GetUpfrontPrice() const { return m_upfrontPrice; }
200 inline bool UpfrontPriceHasBeenSet() const { return m_upfrontPriceHasBeenSet; }
201 inline void SetUpfrontPrice(double value) {
202 m_upfrontPriceHasBeenSet = true;
203 m_upfrontPrice = value;
204 }
205 inline Subscription& WithUpfrontPrice(double value) {
206 SetUpfrontPrice(value);
207 return *this;
208 }
210 private:
211 Aws::String m_subscriptionId;
212
214
216
217 Aws::Vector<Aws::String> m_orderIds;
218
219 Aws::Utils::DateTime m_beginDate{};
220
221 Aws::Utils::DateTime m_endDate{};
222
224
225 double m_monthlyRecurringPrice{0.0};
226
227 double m_upfrontPrice{0.0};
228 bool m_subscriptionIdHasBeenSet = false;
229 bool m_subscriptionTypeHasBeenSet = false;
230 bool m_subscriptionStatusHasBeenSet = false;
231 bool m_orderIdsHasBeenSet = false;
232 bool m_beginDateHasBeenSet = false;
233 bool m_endDateHasBeenSet = false;
234 bool m_currencyHasBeenSet = false;
235 bool m_monthlyRecurringPriceHasBeenSet = false;
236 bool m_upfrontPriceHasBeenSet = false;
237};
238
239} // namespace Model
240} // namespace Outposts
241} // namespace Aws
AWS_OUTPOSTS_API Subscription(Aws::Utils::Json::JsonView jsonValue)
Subscription & WithSubscriptionStatus(SubscriptionStatus value)
void SetMonthlyRecurringPrice(double value)
Subscription & AddOrderIds(OrderIdsT &&value)
const Aws::Utils::DateTime & GetBeginDate() const
Subscription & WithOrderIds(OrderIdsT &&value)
AWS_OUTPOSTS_API Subscription()=default
Subscription & WithCurrency(CurrencyCode value)
Subscription & WithSubscriptionId(SubscriptionIdT &&value)
void SetEndDate(EndDateT &&value)
Subscription & WithMonthlyRecurringPrice(double value)
Subscription & WithUpfrontPrice(double value)
const Aws::Utils::DateTime & GetEndDate() const
void SetSubscriptionType(SubscriptionType value)
void SetSubscriptionId(SubscriptionIdT &&value)
Subscription & WithEndDate(EndDateT &&value)
void SetCurrency(CurrencyCode value)
void SetOrderIds(OrderIdsT &&value)
AWS_OUTPOSTS_API Aws::Utils::Json::JsonValue Jsonize() const
SubscriptionType GetSubscriptionType() const
Subscription & WithSubscriptionType(SubscriptionType value)
SubscriptionStatus GetSubscriptionStatus() const
void SetBeginDate(BeginDateT &&value)
AWS_OUTPOSTS_API Subscription & operator=(Aws::Utils::Json::JsonView jsonValue)
Subscription & WithBeginDate(BeginDateT &&value)
const Aws::Vector< Aws::String > & GetOrderIds() const
void SetSubscriptionStatus(SubscriptionStatus value)
const Aws::String & GetSubscriptionId() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue