AWS SDK for C++

AWS SDK for C++ Version 1.11.862

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/pricing-plan-manager/PricingPlanManager_EXPORTS.h>
11#include <aws/pricing-plan-manager/model/ScheduledChange.h>
12#include <aws/pricing-plan-manager/model/Status.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace PricingPlanManager {
24namespace Model {
25
33 public:
34 AWS_PRICINGPLANMANAGER_API Subscription() = default;
35 AWS_PRICINGPLANMANAGER_API Subscription(Aws::Utils::Json::JsonView jsonValue);
36 AWS_PRICINGPLANMANAGER_API Subscription& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_PRICINGPLANMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
44 inline const Aws::String& GetArn() const { return m_arn; }
45 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
46 template <typename ArnT = Aws::String>
47 void SetArn(ArnT&& value) {
48 m_arnHasBeenSet = true;
49 m_arn = std::forward<ArnT>(value);
50 }
51 template <typename ArnT = Aws::String>
52 Subscription& WithArn(ArnT&& value) {
53 SetArn(std::forward<ArnT>(value));
54 return *this;
55 }
57
59
63 inline const Aws::String& GetPlanFamily() const { return m_planFamily; }
64 inline bool PlanFamilyHasBeenSet() const { return m_planFamilyHasBeenSet; }
65 template <typename PlanFamilyT = Aws::String>
66 void SetPlanFamily(PlanFamilyT&& value) {
67 m_planFamilyHasBeenSet = true;
68 m_planFamily = std::forward<PlanFamilyT>(value);
69 }
70 template <typename PlanFamilyT = Aws::String>
71 Subscription& WithPlanFamily(PlanFamilyT&& value) {
72 SetPlanFamily(std::forward<PlanFamilyT>(value));
73 return *this;
74 }
76
78
82 inline const Aws::String& GetPlanTier() const { return m_planTier; }
83 inline bool PlanTierHasBeenSet() const { return m_planTierHasBeenSet; }
84 template <typename PlanTierT = Aws::String>
85 void SetPlanTier(PlanTierT&& value) {
86 m_planTierHasBeenSet = true;
87 m_planTier = std::forward<PlanTierT>(value);
88 }
89 template <typename PlanTierT = Aws::String>
90 Subscription& WithPlanTier(PlanTierT&& value) {
91 SetPlanTier(std::forward<PlanTierT>(value));
92 return *this;
93 }
95
97
101 inline const Aws::String& GetUsageLevel() const { return m_usageLevel; }
102 inline bool UsageLevelHasBeenSet() const { return m_usageLevelHasBeenSet; }
103 template <typename UsageLevelT = Aws::String>
104 void SetUsageLevel(UsageLevelT&& value) {
105 m_usageLevelHasBeenSet = true;
106 m_usageLevel = std::forward<UsageLevelT>(value);
107 }
108 template <typename UsageLevelT = Aws::String>
109 Subscription& WithUsageLevel(UsageLevelT&& value) {
110 SetUsageLevel(std::forward<UsageLevelT>(value));
111 return *this;
112 }
114
116
121 inline const ScheduledChange& GetScheduledChange() const { return m_scheduledChange; }
122 inline bool ScheduledChangeHasBeenSet() const { return m_scheduledChangeHasBeenSet; }
123 template <typename ScheduledChangeT = ScheduledChange>
124 void SetScheduledChange(ScheduledChangeT&& value) {
125 m_scheduledChangeHasBeenSet = true;
126 m_scheduledChange = std::forward<ScheduledChangeT>(value);
127 }
128 template <typename ScheduledChangeT = ScheduledChange>
129 Subscription& WithScheduledChange(ScheduledChangeT&& value) {
130 SetScheduledChange(std::forward<ScheduledChangeT>(value));
131 return *this;
132 }
134
136
140 inline Status GetStatus() const { return m_status; }
141 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
142 inline void SetStatus(Status value) {
143 m_statusHasBeenSet = true;
144 m_status = value;
145 }
147 SetStatus(value);
148 return *this;
149 }
151
153
157 inline const Aws::String& GetStatusReason() const { return m_statusReason; }
158 inline bool StatusReasonHasBeenSet() const { return m_statusReasonHasBeenSet; }
159 template <typename StatusReasonT = Aws::String>
160 void SetStatusReason(StatusReasonT&& value) {
161 m_statusReasonHasBeenSet = true;
162 m_statusReason = std::forward<StatusReasonT>(value);
163 }
164 template <typename StatusReasonT = Aws::String>
165 Subscription& WithStatusReason(StatusReasonT&& value) {
166 SetStatusReason(std::forward<StatusReasonT>(value));
167 return *this;
168 }
170
172
175 inline const Aws::Vector<Aws::String>& GetResourceArns() const { return m_resourceArns; }
176 inline bool ResourceArnsHasBeenSet() const { return m_resourceArnsHasBeenSet; }
177 template <typename ResourceArnsT = Aws::Vector<Aws::String>>
178 void SetResourceArns(ResourceArnsT&& value) {
179 m_resourceArnsHasBeenSet = true;
180 m_resourceArns = std::forward<ResourceArnsT>(value);
181 }
182 template <typename ResourceArnsT = Aws::Vector<Aws::String>>
183 Subscription& WithResourceArns(ResourceArnsT&& value) {
184 SetResourceArns(std::forward<ResourceArnsT>(value));
185 return *this;
186 }
187 template <typename ResourceArnsT = Aws::String>
188 Subscription& AddResourceArns(ResourceArnsT&& value) {
189 m_resourceArnsHasBeenSet = true;
190 m_resourceArns.emplace_back(std::forward<ResourceArnsT>(value));
191 return *this;
192 }
194
196
199 inline const Aws::Utils::DateTime& GetCreatedAt() const { return m_createdAt; }
200 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
201 template <typename CreatedAtT = Aws::Utils::DateTime>
202 void SetCreatedAt(CreatedAtT&& value) {
203 m_createdAtHasBeenSet = true;
204 m_createdAt = std::forward<CreatedAtT>(value);
205 }
206 template <typename CreatedAtT = Aws::Utils::DateTime>
207 Subscription& WithCreatedAt(CreatedAtT&& value) {
208 SetCreatedAt(std::forward<CreatedAtT>(value));
209 return *this;
210 }
212
214
218 inline const Aws::Utils::DateTime& GetUpdatedAt() const { return m_updatedAt; }
219 inline bool UpdatedAtHasBeenSet() const { return m_updatedAtHasBeenSet; }
220 template <typename UpdatedAtT = Aws::Utils::DateTime>
221 void SetUpdatedAt(UpdatedAtT&& value) {
222 m_updatedAtHasBeenSet = true;
223 m_updatedAt = std::forward<UpdatedAtT>(value);
224 }
225 template <typename UpdatedAtT = Aws::Utils::DateTime>
226 Subscription& WithUpdatedAt(UpdatedAtT&& value) {
227 SetUpdatedAt(std::forward<UpdatedAtT>(value));
228 return *this;
229 }
231 private:
232 Aws::String m_arn;
233
234 Aws::String m_planFamily;
235
236 Aws::String m_planTier;
237
238 Aws::String m_usageLevel;
239
240 ScheduledChange m_scheduledChange;
241
242 Status m_status{Status::NOT_SET};
243
244 Aws::String m_statusReason;
245
246 Aws::Vector<Aws::String> m_resourceArns;
247
248 Aws::Utils::DateTime m_createdAt{};
249
250 Aws::Utils::DateTime m_updatedAt{};
251 bool m_arnHasBeenSet = false;
252 bool m_planFamilyHasBeenSet = false;
253 bool m_planTierHasBeenSet = false;
254 bool m_usageLevelHasBeenSet = false;
255 bool m_scheduledChangeHasBeenSet = false;
256 bool m_statusHasBeenSet = false;
257 bool m_statusReasonHasBeenSet = false;
258 bool m_resourceArnsHasBeenSet = false;
259 bool m_createdAtHasBeenSet = false;
260 bool m_updatedAtHasBeenSet = false;
261};
262
263} // namespace Model
264} // namespace PricingPlanManager
265} // namespace Aws
void SetScheduledChange(ScheduledChangeT &&value)
const Aws::String & GetPlanTier() const
Subscription & WithResourceArns(ResourceArnsT &&value)
Subscription & AddResourceArns(ResourceArnsT &&value)
Subscription & WithUpdatedAt(UpdatedAtT &&value)
Subscription & WithStatus(Status value)
void SetStatusReason(StatusReasonT &&value)
void SetResourceArns(ResourceArnsT &&value)
const Aws::Vector< Aws::String > & GetResourceArns() const
AWS_PRICINGPLANMANAGER_API Subscription & operator=(Aws::Utils::Json::JsonView jsonValue)
Subscription & WithArn(ArnT &&value)
const ScheduledChange & GetScheduledChange() const
Subscription & WithUsageLevel(UsageLevelT &&value)
const Aws::String & GetUsageLevel() const
const Aws::String & GetStatusReason() const
const Aws::String & GetPlanFamily() const
const Aws::Utils::DateTime & GetUpdatedAt() const
AWS_PRICINGPLANMANAGER_API Subscription()=default
Subscription & WithPlanFamily(PlanFamilyT &&value)
AWS_PRICINGPLANMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const
Subscription & WithPlanTier(PlanTierT &&value)
Subscription & WithStatusReason(StatusReasonT &&value)
Subscription & WithScheduledChange(ScheduledChangeT &&value)
AWS_PRICINGPLANMANAGER_API Subscription(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetCreatedAt() const
Subscription & WithCreatedAt(CreatedAtT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue