AWS SDK for C++

AWS SDK for C++ Version 1.11.609

Loading...
Searching...
No Matches
ScalingPlan.h
1
6#pragma once
7#include <aws/autoscaling-plans/AutoScalingPlans_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/autoscaling-plans/model/ApplicationSource.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/autoscaling-plans/model/ScalingPlanStatusCode.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/autoscaling-plans/model/ScalingInstruction.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace AutoScalingPlans
27{
28namespace Model
29{
30
37 {
38 public:
39 AWS_AUTOSCALINGPLANS_API ScalingPlan() = default;
40 AWS_AUTOSCALINGPLANS_API ScalingPlan(Aws::Utils::Json::JsonView jsonValue);
41 AWS_AUTOSCALINGPLANS_API ScalingPlan& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_AUTOSCALINGPLANS_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline const Aws::String& GetScalingPlanName() const { return m_scalingPlanName; }
50 inline bool ScalingPlanNameHasBeenSet() const { return m_scalingPlanNameHasBeenSet; }
51 template<typename ScalingPlanNameT = Aws::String>
52 void SetScalingPlanName(ScalingPlanNameT&& value) { m_scalingPlanNameHasBeenSet = true; m_scalingPlanName = std::forward<ScalingPlanNameT>(value); }
53 template<typename ScalingPlanNameT = Aws::String>
54 ScalingPlan& WithScalingPlanName(ScalingPlanNameT&& value) { SetScalingPlanName(std::forward<ScalingPlanNameT>(value)); return *this;}
56
58
61 inline long long GetScalingPlanVersion() const { return m_scalingPlanVersion; }
62 inline bool ScalingPlanVersionHasBeenSet() const { return m_scalingPlanVersionHasBeenSet; }
63 inline void SetScalingPlanVersion(long long value) { m_scalingPlanVersionHasBeenSet = true; m_scalingPlanVersion = value; }
64 inline ScalingPlan& WithScalingPlanVersion(long long value) { SetScalingPlanVersion(value); return *this;}
66
68
72 inline const ApplicationSource& GetApplicationSource() const { return m_applicationSource; }
73 inline bool ApplicationSourceHasBeenSet() const { return m_applicationSourceHasBeenSet; }
74 template<typename ApplicationSourceT = ApplicationSource>
75 void SetApplicationSource(ApplicationSourceT&& value) { m_applicationSourceHasBeenSet = true; m_applicationSource = std::forward<ApplicationSourceT>(value); }
76 template<typename ApplicationSourceT = ApplicationSource>
77 ScalingPlan& WithApplicationSource(ApplicationSourceT&& value) { SetApplicationSource(std::forward<ApplicationSourceT>(value)); return *this;}
79
81
84 inline const Aws::Vector<ScalingInstruction>& GetScalingInstructions() const { return m_scalingInstructions; }
85 inline bool ScalingInstructionsHasBeenSet() const { return m_scalingInstructionsHasBeenSet; }
86 template<typename ScalingInstructionsT = Aws::Vector<ScalingInstruction>>
87 void SetScalingInstructions(ScalingInstructionsT&& value) { m_scalingInstructionsHasBeenSet = true; m_scalingInstructions = std::forward<ScalingInstructionsT>(value); }
88 template<typename ScalingInstructionsT = Aws::Vector<ScalingInstruction>>
89 ScalingPlan& WithScalingInstructions(ScalingInstructionsT&& value) { SetScalingInstructions(std::forward<ScalingInstructionsT>(value)); return *this;}
90 template<typename ScalingInstructionsT = ScalingInstruction>
91 ScalingPlan& AddScalingInstructions(ScalingInstructionsT&& value) { m_scalingInstructionsHasBeenSet = true; m_scalingInstructions.emplace_back(std::forward<ScalingInstructionsT>(value)); return *this; }
93
95
108 inline ScalingPlanStatusCode GetStatusCode() const { return m_statusCode; }
109 inline bool StatusCodeHasBeenSet() const { return m_statusCodeHasBeenSet; }
110 inline void SetStatusCode(ScalingPlanStatusCode value) { m_statusCodeHasBeenSet = true; m_statusCode = value; }
111 inline ScalingPlan& WithStatusCode(ScalingPlanStatusCode value) { SetStatusCode(value); return *this;}
113
115
118 inline const Aws::String& GetStatusMessage() const { return m_statusMessage; }
119 inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; }
120 template<typename StatusMessageT = Aws::String>
121 void SetStatusMessage(StatusMessageT&& value) { m_statusMessageHasBeenSet = true; m_statusMessage = std::forward<StatusMessageT>(value); }
122 template<typename StatusMessageT = Aws::String>
123 ScalingPlan& WithStatusMessage(StatusMessageT&& value) { SetStatusMessage(std::forward<StatusMessageT>(value)); return *this;}
125
127
130 inline const Aws::Utils::DateTime& GetStatusStartTime() const { return m_statusStartTime; }
131 inline bool StatusStartTimeHasBeenSet() const { return m_statusStartTimeHasBeenSet; }
132 template<typename StatusStartTimeT = Aws::Utils::DateTime>
133 void SetStatusStartTime(StatusStartTimeT&& value) { m_statusStartTimeHasBeenSet = true; m_statusStartTime = std::forward<StatusStartTimeT>(value); }
134 template<typename StatusStartTimeT = Aws::Utils::DateTime>
135 ScalingPlan& WithStatusStartTime(StatusStartTimeT&& value) { SetStatusStartTime(std::forward<StatusStartTimeT>(value)); return *this;}
137
139
142 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
143 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
144 template<typename CreationTimeT = Aws::Utils::DateTime>
145 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::forward<CreationTimeT>(value); }
146 template<typename CreationTimeT = Aws::Utils::DateTime>
147 ScalingPlan& WithCreationTime(CreationTimeT&& value) { SetCreationTime(std::forward<CreationTimeT>(value)); return *this;}
149 private:
150
151 Aws::String m_scalingPlanName;
152 bool m_scalingPlanNameHasBeenSet = false;
153
154 long long m_scalingPlanVersion{0};
155 bool m_scalingPlanVersionHasBeenSet = false;
156
157 ApplicationSource m_applicationSource;
158 bool m_applicationSourceHasBeenSet = false;
159
160 Aws::Vector<ScalingInstruction> m_scalingInstructions;
161 bool m_scalingInstructionsHasBeenSet = false;
162
164 bool m_statusCodeHasBeenSet = false;
165
166 Aws::String m_statusMessage;
167 bool m_statusMessageHasBeenSet = false;
168
169 Aws::Utils::DateTime m_statusStartTime{};
170 bool m_statusStartTimeHasBeenSet = false;
171
172 Aws::Utils::DateTime m_creationTime{};
173 bool m_creationTimeHasBeenSet = false;
174 };
175
176} // namespace Model
177} // namespace AutoScalingPlans
178} // namespace Aws
const Aws::Utils::DateTime & GetCreationTime() const
ScalingPlan & WithStatusCode(ScalingPlanStatusCode value)
AWS_AUTOSCALINGPLANS_API Aws::Utils::Json::JsonValue Jsonize() const
ScalingPlan & WithScalingInstructions(ScalingInstructionsT &&value)
Definition ScalingPlan.h:89
ScalingPlan & WithCreationTime(CreationTimeT &&value)
const Aws::String & GetStatusMessage() const
AWS_AUTOSCALINGPLANS_API ScalingPlan()=default
AWS_AUTOSCALINGPLANS_API ScalingPlan & operator=(Aws::Utils::Json::JsonView jsonValue)
const ApplicationSource & GetApplicationSource() const
Definition ScalingPlan.h:72
void SetScalingPlanName(ScalingPlanNameT &&value)
Definition ScalingPlan.h:52
void SetApplicationSource(ApplicationSourceT &&value)
Definition ScalingPlan.h:75
void SetScalingPlanVersion(long long value)
Definition ScalingPlan.h:63
const Aws::Utils::DateTime & GetStatusStartTime() const
AWS_AUTOSCALINGPLANS_API ScalingPlan(Aws::Utils::Json::JsonView jsonValue)
void SetStatusMessage(StatusMessageT &&value)
void SetStatusCode(ScalingPlanStatusCode value)
ScalingPlan & WithScalingPlanName(ScalingPlanNameT &&value)
Definition ScalingPlan.h:54
const Aws::Vector< ScalingInstruction > & GetScalingInstructions() const
Definition ScalingPlan.h:84
const Aws::String & GetScalingPlanName() const
Definition ScalingPlan.h:49
ScalingPlan & WithScalingPlanVersion(long long value)
Definition ScalingPlan.h:64
ScalingPlanStatusCode GetStatusCode() const
void SetScalingInstructions(ScalingInstructionsT &&value)
Definition ScalingPlan.h:87
ScalingPlan & WithStatusMessage(StatusMessageT &&value)
void SetStatusStartTime(StatusStartTimeT &&value)
ScalingPlan & WithApplicationSource(ApplicationSourceT &&value)
Definition ScalingPlan.h:77
ScalingPlan & WithStatusStartTime(StatusStartTimeT &&value)
void SetCreationTime(CreationTimeT &&value)
ScalingPlan & AddScalingInstructions(ScalingInstructionsT &&value)
Definition ScalingPlan.h:91
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue