AWS SDK for C++

AWS SDK for C++ Version 1.11.863

Loading...
Searching...
No Matches
ScheduledChange.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/pricing-plan-manager/PricingPlanManager_EXPORTS.h>
10#include <aws/pricing-plan-manager/model/ScheduledChangeType.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace PricingPlanManager {
22namespace Model {
23
32 public:
33 AWS_PRICINGPLANMANAGER_API ScheduledChange() = default;
34 AWS_PRICINGPLANMANAGER_API ScheduledChange(Aws::Utils::Json::JsonView jsonValue);
35 AWS_PRICINGPLANMANAGER_API ScheduledChange& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_PRICINGPLANMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
44 inline ScheduledChangeType GetChangeType() const { return m_changeType; }
45 inline bool ChangeTypeHasBeenSet() const { return m_changeTypeHasBeenSet; }
47 m_changeTypeHasBeenSet = true;
48 m_changeType = value;
49 }
51 SetChangeType(value);
52 return *this;
53 }
55
57
61 inline const Aws::Utils::DateTime& GetEffectiveDate() const { return m_effectiveDate; }
62 inline bool EffectiveDateHasBeenSet() const { return m_effectiveDateHasBeenSet; }
63 template <typename EffectiveDateT = Aws::Utils::DateTime>
64 void SetEffectiveDate(EffectiveDateT&& value) {
65 m_effectiveDateHasBeenSet = true;
66 m_effectiveDate = std::forward<EffectiveDateT>(value);
67 }
68 template <typename EffectiveDateT = Aws::Utils::DateTime>
69 ScheduledChange& WithEffectiveDate(EffectiveDateT&& value) {
70 SetEffectiveDate(std::forward<EffectiveDateT>(value));
71 return *this;
72 }
74
76
80 inline const Aws::String& GetPlanTier() const { return m_planTier; }
81 inline bool PlanTierHasBeenSet() const { return m_planTierHasBeenSet; }
82 template <typename PlanTierT = Aws::String>
83 void SetPlanTier(PlanTierT&& value) {
84 m_planTierHasBeenSet = true;
85 m_planTier = std::forward<PlanTierT>(value);
86 }
87 template <typename PlanTierT = Aws::String>
88 ScheduledChange& WithPlanTier(PlanTierT&& value) {
89 SetPlanTier(std::forward<PlanTierT>(value));
90 return *this;
91 }
93
95
98 inline const Aws::String& GetUsageLevel() const { return m_usageLevel; }
99 inline bool UsageLevelHasBeenSet() const { return m_usageLevelHasBeenSet; }
100 template <typename UsageLevelT = Aws::String>
101 void SetUsageLevel(UsageLevelT&& value) {
102 m_usageLevelHasBeenSet = true;
103 m_usageLevel = std::forward<UsageLevelT>(value);
104 }
105 template <typename UsageLevelT = Aws::String>
106 ScheduledChange& WithUsageLevel(UsageLevelT&& value) {
107 SetUsageLevel(std::forward<UsageLevelT>(value));
108 return *this;
109 }
111 private:
113
114 Aws::Utils::DateTime m_effectiveDate{};
115
116 Aws::String m_planTier;
117
118 Aws::String m_usageLevel;
119 bool m_changeTypeHasBeenSet = false;
120 bool m_effectiveDateHasBeenSet = false;
121 bool m_planTierHasBeenSet = false;
122 bool m_usageLevelHasBeenSet = false;
123};
124
125} // namespace Model
126} // namespace PricingPlanManager
127} // namespace Aws
AWS_PRICINGPLANMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const
ScheduledChange & WithPlanTier(PlanTierT &&value)
AWS_PRICINGPLANMANAGER_API ScheduledChange(Aws::Utils::Json::JsonView jsonValue)
AWS_PRICINGPLANMANAGER_API ScheduledChange & operator=(Aws::Utils::Json::JsonView jsonValue)
ScheduledChange & WithChangeType(ScheduledChangeType value)
ScheduledChange & WithEffectiveDate(EffectiveDateT &&value)
const Aws::Utils::DateTime & GetEffectiveDate() const
void SetChangeType(ScheduledChangeType value)
AWS_PRICINGPLANMANAGER_API ScheduledChange()=default
ScheduledChange & WithUsageLevel(UsageLevelT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue