AWS SDK for C++

AWS SDK for C++ Version 1.11.745

Loading...
Searching...
No Matches
DeploymentStrategy.h
1
6#pragma once
7#include <aws/appconfig/AppConfig_EXPORTS.h>
8#include <aws/appconfig/model/GrowthType.h>
9#include <aws/appconfig/model/ReplicateTo.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace AppConfig {
22namespace Model {
23
25 public:
26 AWS_APPCONFIG_API DeploymentStrategy() = default;
27 AWS_APPCONFIG_API DeploymentStrategy(Aws::Utils::Json::JsonView jsonValue);
29 AWS_APPCONFIG_API Aws::Utils::Json::JsonValue Jsonize() const;
30
32
35 inline const Aws::String& GetId() const { return m_id; }
36 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
37 template <typename IdT = Aws::String>
38 void SetId(IdT&& value) {
39 m_idHasBeenSet = true;
40 m_id = std::forward<IdT>(value);
41 }
42 template <typename IdT = Aws::String>
43 DeploymentStrategy& WithId(IdT&& value) {
44 SetId(std::forward<IdT>(value));
45 return *this;
46 }
48
50
53 inline const Aws::String& GetName() const { return m_name; }
54 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
55 template <typename NameT = Aws::String>
56 void SetName(NameT&& value) {
57 m_nameHasBeenSet = true;
58 m_name = std::forward<NameT>(value);
59 }
60 template <typename NameT = Aws::String>
61 DeploymentStrategy& WithName(NameT&& value) {
62 SetName(std::forward<NameT>(value));
63 return *this;
64 }
66
68
71 inline const Aws::String& GetDescription() const { return m_description; }
72 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
73 template <typename DescriptionT = Aws::String>
74 void SetDescription(DescriptionT&& value) {
75 m_descriptionHasBeenSet = true;
76 m_description = std::forward<DescriptionT>(value);
77 }
78 template <typename DescriptionT = Aws::String>
79 DeploymentStrategy& WithDescription(DescriptionT&& value) {
80 SetDescription(std::forward<DescriptionT>(value));
81 return *this;
82 }
84
86
89 inline int GetDeploymentDurationInMinutes() const { return m_deploymentDurationInMinutes; }
90 inline bool DeploymentDurationInMinutesHasBeenSet() const { return m_deploymentDurationInMinutesHasBeenSet; }
91 inline void SetDeploymentDurationInMinutes(int value) {
92 m_deploymentDurationInMinutesHasBeenSet = true;
93 m_deploymentDurationInMinutes = value;
94 }
97 return *this;
98 }
100
102
105 inline GrowthType GetGrowthType() const { return m_growthType; }
106 inline bool GrowthTypeHasBeenSet() const { return m_growthTypeHasBeenSet; }
107 inline void SetGrowthType(GrowthType value) {
108 m_growthTypeHasBeenSet = true;
109 m_growthType = value;
110 }
112 SetGrowthType(value);
113 return *this;
114 }
116
118
122 inline double GetGrowthFactor() const { return m_growthFactor; }
123 inline bool GrowthFactorHasBeenSet() const { return m_growthFactorHasBeenSet; }
124 inline void SetGrowthFactor(double value) {
125 m_growthFactorHasBeenSet = true;
126 m_growthFactor = value;
127 }
128 inline DeploymentStrategy& WithGrowthFactor(double value) {
129 SetGrowthFactor(value);
130 return *this;
131 }
133
135
139 inline int GetFinalBakeTimeInMinutes() const { return m_finalBakeTimeInMinutes; }
140 inline bool FinalBakeTimeInMinutesHasBeenSet() const { return m_finalBakeTimeInMinutesHasBeenSet; }
141 inline void SetFinalBakeTimeInMinutes(int value) {
142 m_finalBakeTimeInMinutesHasBeenSet = true;
143 m_finalBakeTimeInMinutes = value;
144 }
147 return *this;
148 }
150
152
155 inline ReplicateTo GetReplicateTo() const { return m_replicateTo; }
156 inline bool ReplicateToHasBeenSet() const { return m_replicateToHasBeenSet; }
157 inline void SetReplicateTo(ReplicateTo value) {
158 m_replicateToHasBeenSet = true;
159 m_replicateTo = value;
160 }
162 SetReplicateTo(value);
163 return *this;
164 }
166
168
169 inline const Aws::String& GetRequestId() const { return m_requestId; }
170 inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; }
171 template <typename RequestIdT = Aws::String>
172 void SetRequestId(RequestIdT&& value) {
173 m_requestIdHasBeenSet = true;
174 m_requestId = std::forward<RequestIdT>(value);
175 }
176 template <typename RequestIdT = Aws::String>
177 DeploymentStrategy& WithRequestId(RequestIdT&& value) {
178 SetRequestId(std::forward<RequestIdT>(value));
179 return *this;
180 }
182 private:
183 Aws::String m_id;
184
185 Aws::String m_name;
186
187 Aws::String m_description;
188
189 int m_deploymentDurationInMinutes{0};
190
191 GrowthType m_growthType{GrowthType::NOT_SET};
192
193 double m_growthFactor{0.0};
194
195 int m_finalBakeTimeInMinutes{0};
196
197 ReplicateTo m_replicateTo{ReplicateTo::NOT_SET};
198
199 Aws::String m_requestId;
200 bool m_idHasBeenSet = false;
201 bool m_nameHasBeenSet = false;
202 bool m_descriptionHasBeenSet = false;
203 bool m_deploymentDurationInMinutesHasBeenSet = false;
204 bool m_growthTypeHasBeenSet = false;
205 bool m_growthFactorHasBeenSet = false;
206 bool m_finalBakeTimeInMinutesHasBeenSet = false;
207 bool m_replicateToHasBeenSet = false;
208 bool m_requestIdHasBeenSet = false;
209};
210
211} // namespace Model
212} // namespace AppConfig
213} // namespace Aws
DeploymentStrategy & WithGrowthFactor(double value)
AWS_APPCONFIG_API DeploymentStrategy(Aws::Utils::Json::JsonView jsonValue)
DeploymentStrategy & WithGrowthType(GrowthType value)
DeploymentStrategy & WithId(IdT &&value)
DeploymentStrategy & WithFinalBakeTimeInMinutes(int value)
DeploymentStrategy & WithReplicateTo(ReplicateTo value)
DeploymentStrategy & WithDescription(DescriptionT &&value)
AWS_APPCONFIG_API DeploymentStrategy & operator=(Aws::Utils::Json::JsonView jsonValue)
DeploymentStrategy & WithName(NameT &&value)
AWS_APPCONFIG_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_APPCONFIG_API DeploymentStrategy()=default
DeploymentStrategy & WithDeploymentDurationInMinutes(int value)
DeploymentStrategy & WithRequestId(RequestIdT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue