AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
DeploymentConfiguration.h
1
6#pragma once
7#include <aws/ecs/ECS_EXPORTS.h>
8#include <aws/ecs/model/DeploymentCircuitBreaker.h>
9#include <aws/ecs/model/DeploymentAlarms.h>
10#include <aws/ecs/model/DeploymentStrategy.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/ecs/model/DeploymentLifecycleHook.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace ECS
26{
27namespace Model
28{
29
38 {
39 public:
40 AWS_ECS_API DeploymentConfiguration() = default;
44
45
47
59 inline const DeploymentCircuitBreaker& GetDeploymentCircuitBreaker() const { return m_deploymentCircuitBreaker; }
60 inline bool DeploymentCircuitBreakerHasBeenSet() const { return m_deploymentCircuitBreakerHasBeenSet; }
61 template<typename DeploymentCircuitBreakerT = DeploymentCircuitBreaker>
62 void SetDeploymentCircuitBreaker(DeploymentCircuitBreakerT&& value) { m_deploymentCircuitBreakerHasBeenSet = true; m_deploymentCircuitBreaker = std::forward<DeploymentCircuitBreakerT>(value); }
63 template<typename DeploymentCircuitBreakerT = DeploymentCircuitBreaker>
64 DeploymentConfiguration& WithDeploymentCircuitBreaker(DeploymentCircuitBreakerT&& value) { SetDeploymentCircuitBreaker(std::forward<DeploymentCircuitBreakerT>(value)); return *this;}
66
68
101 inline int GetMaximumPercent() const { return m_maximumPercent; }
102 inline bool MaximumPercentHasBeenSet() const { return m_maximumPercentHasBeenSet; }
103 inline void SetMaximumPercent(int value) { m_maximumPercentHasBeenSet = true; m_maximumPercent = value; }
104 inline DeploymentConfiguration& WithMaximumPercent(int value) { SetMaximumPercent(value); return *this;}
106
108
167 inline int GetMinimumHealthyPercent() const { return m_minimumHealthyPercent; }
168 inline bool MinimumHealthyPercentHasBeenSet() const { return m_minimumHealthyPercentHasBeenSet; }
169 inline void SetMinimumHealthyPercent(int value) { m_minimumHealthyPercentHasBeenSet = true; m_minimumHealthyPercent = value; }
172
174
177 inline const DeploymentAlarms& GetAlarms() const { return m_alarms; }
178 inline bool AlarmsHasBeenSet() const { return m_alarmsHasBeenSet; }
179 template<typename AlarmsT = DeploymentAlarms>
180 void SetAlarms(AlarmsT&& value) { m_alarmsHasBeenSet = true; m_alarms = std::forward<AlarmsT>(value); }
181 template<typename AlarmsT = DeploymentAlarms>
182 DeploymentConfiguration& WithAlarms(AlarmsT&& value) { SetAlarms(std::forward<AlarmsT>(value)); return *this;}
184
186
201 inline DeploymentStrategy GetStrategy() const { return m_strategy; }
202 inline bool StrategyHasBeenSet() const { return m_strategyHasBeenSet; }
203 inline void SetStrategy(DeploymentStrategy value) { m_strategyHasBeenSet = true; m_strategy = value; }
206
208
213 inline int GetBakeTimeInMinutes() const { return m_bakeTimeInMinutes; }
214 inline bool BakeTimeInMinutesHasBeenSet() const { return m_bakeTimeInMinutesHasBeenSet; }
215 inline void SetBakeTimeInMinutes(int value) { m_bakeTimeInMinutesHasBeenSet = true; m_bakeTimeInMinutes = value; }
216 inline DeploymentConfiguration& WithBakeTimeInMinutes(int value) { SetBakeTimeInMinutes(value); return *this;}
218
220
224 inline const Aws::Vector<DeploymentLifecycleHook>& GetLifecycleHooks() const { return m_lifecycleHooks; }
225 inline bool LifecycleHooksHasBeenSet() const { return m_lifecycleHooksHasBeenSet; }
226 template<typename LifecycleHooksT = Aws::Vector<DeploymentLifecycleHook>>
227 void SetLifecycleHooks(LifecycleHooksT&& value) { m_lifecycleHooksHasBeenSet = true; m_lifecycleHooks = std::forward<LifecycleHooksT>(value); }
228 template<typename LifecycleHooksT = Aws::Vector<DeploymentLifecycleHook>>
229 DeploymentConfiguration& WithLifecycleHooks(LifecycleHooksT&& value) { SetLifecycleHooks(std::forward<LifecycleHooksT>(value)); return *this;}
230 template<typename LifecycleHooksT = DeploymentLifecycleHook>
231 DeploymentConfiguration& AddLifecycleHooks(LifecycleHooksT&& value) { m_lifecycleHooksHasBeenSet = true; m_lifecycleHooks.emplace_back(std::forward<LifecycleHooksT>(value)); return *this; }
233 private:
234
235 DeploymentCircuitBreaker m_deploymentCircuitBreaker;
236 bool m_deploymentCircuitBreakerHasBeenSet = false;
237
238 int m_maximumPercent{0};
239 bool m_maximumPercentHasBeenSet = false;
240
241 int m_minimumHealthyPercent{0};
242 bool m_minimumHealthyPercentHasBeenSet = false;
243
244 DeploymentAlarms m_alarms;
245 bool m_alarmsHasBeenSet = false;
246
248 bool m_strategyHasBeenSet = false;
249
250 int m_bakeTimeInMinutes{0};
251 bool m_bakeTimeInMinutesHasBeenSet = false;
252
254 bool m_lifecycleHooksHasBeenSet = false;
255 };
256
257} // namespace Model
258} // namespace ECS
259} // namespace Aws
DeploymentConfiguration & WithBakeTimeInMinutes(int value)
DeploymentConfiguration & WithMaximumPercent(int value)
DeploymentConfiguration & WithAlarms(AlarmsT &&value)
const Aws::Vector< DeploymentLifecycleHook > & GetLifecycleHooks() const
void SetDeploymentCircuitBreaker(DeploymentCircuitBreakerT &&value)
AWS_ECS_API DeploymentConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_ECS_API DeploymentConfiguration()=default
DeploymentConfiguration & AddLifecycleHooks(LifecycleHooksT &&value)
DeploymentConfiguration & WithStrategy(DeploymentStrategy value)
DeploymentConfiguration & WithDeploymentCircuitBreaker(DeploymentCircuitBreakerT &&value)
DeploymentConfiguration & WithLifecycleHooks(LifecycleHooksT &&value)
AWS_ECS_API DeploymentConfiguration(Aws::Utils::Json::JsonView jsonValue)
DeploymentConfiguration & WithMinimumHealthyPercent(int value)
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
const DeploymentCircuitBreaker & GetDeploymentCircuitBreaker() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue