7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/ecs/ECS_EXPORTS.h>
9#include <aws/ecs/model/CanaryConfiguration.h>
10#include <aws/ecs/model/DeploymentAlarms.h>
11#include <aws/ecs/model/DeploymentCircuitBreaker.h>
12#include <aws/ecs/model/DeploymentEarlySuccessCriteria.h>
13#include <aws/ecs/model/DeploymentLifecycleHook.h>
14#include <aws/ecs/model/DeploymentStrategy.h>
15#include <aws/ecs/model/LinearConfiguration.h>
59 template <
typename DeploymentCircuitBreakerT = DeploymentCircuitBreaker>
61 m_deploymentCircuitBreakerHasBeenSet =
true;
62 m_deploymentCircuitBreaker = std::forward<DeploymentCircuitBreakerT>(value);
64 template <
typename DeploymentCircuitBreakerT = DeploymentCircuitBreaker>
108 m_maximumPercentHasBeenSet =
true;
109 m_maximumPercent = value;
180 m_minimumHealthyPercentHasBeenSet =
true;
181 m_minimumHealthyPercent = value;
195 template <
typename AlarmsT = DeploymentAlarms>
197 m_alarmsHasBeenSet =
true;
198 m_alarms = std::forward<AlarmsT>(value);
200 template <
typename AlarmsT = DeploymentAlarms>
235 m_strategyHasBeenSet =
true;
253 m_bakeTimeInMinutesHasBeenSet =
true;
254 m_bakeTimeInMinutes = value;
269 template <
typename LifecycleHooksT = Aws::Vector<DeploymentLifecycleHook>>
271 m_lifecycleHooksHasBeenSet =
true;
272 m_lifecycleHooks = std::forward<LifecycleHooksT>(value);
274 template <
typename LifecycleHooksT = Aws::Vector<DeploymentLifecycleHook>>
279 template <
typename LifecycleHooksT = DeploymentLifecycleHook>
281 m_lifecycleHooksHasBeenSet =
true;
282 m_lifecycleHooks.emplace_back(std::forward<LifecycleHooksT>(value));
296 template <
typename LinearConfigurationT = LinearConfiguration>
298 m_linearConfigurationHasBeenSet =
true;
299 m_linearConfiguration = std::forward<LinearConfigurationT>(value);
301 template <
typename LinearConfigurationT = LinearConfiguration>
317 template <
typename CanaryConfigurationT = CanaryConfiguration>
319 m_canaryConfigurationHasBeenSet =
true;
320 m_canaryConfiguration = std::forward<CanaryConfigurationT>(value);
322 template <
typename CanaryConfigurationT = CanaryConfiguration>
338 template <
typename EarlySuccessCriteriaT = DeploymentEarlySuccessCriteria>
340 m_earlySuccessCriteriaHasBeenSet =
true;
341 m_earlySuccessCriteria = std::forward<EarlySuccessCriteriaT>(value);
343 template <
typename EarlySuccessCriteriaT = DeploymentEarlySuccessCriteria>
352 int m_maximumPercent{0};
354 int m_minimumHealthyPercent{0};
356 DeploymentAlarms m_alarms;
360 int m_bakeTimeInMinutes{0};
364 LinearConfiguration m_linearConfiguration;
366 CanaryConfiguration m_canaryConfiguration;
368 DeploymentEarlySuccessCriteria m_earlySuccessCriteria;
369 bool m_deploymentCircuitBreakerHasBeenSet =
false;
370 bool m_maximumPercentHasBeenSet =
false;
371 bool m_minimumHealthyPercentHasBeenSet =
false;
372 bool m_alarmsHasBeenSet =
false;
373 bool m_strategyHasBeenSet =
false;
374 bool m_bakeTimeInMinutesHasBeenSet =
false;
375 bool m_lifecycleHooksHasBeenSet =
false;
376 bool m_linearConfigurationHasBeenSet =
false;
377 bool m_canaryConfigurationHasBeenSet =
false;
378 bool m_earlySuccessCriteriaHasBeenSet =
false;
const DeploymentEarlySuccessCriteria & GetEarlySuccessCriteria() const
void SetAlarms(AlarmsT &&value)
void SetStrategy(DeploymentStrategy value)
void SetMinimumHealthyPercent(int value)
DeploymentConfiguration & WithBakeTimeInMinutes(int value)
void SetBakeTimeInMinutes(int value)
DeploymentConfiguration & WithMaximumPercent(int value)
DeploymentConfiguration & WithAlarms(AlarmsT &&value)
const Aws::Vector< DeploymentLifecycleHook > & GetLifecycleHooks() const
void SetDeploymentCircuitBreaker(DeploymentCircuitBreakerT &&value)
void SetCanaryConfiguration(CanaryConfigurationT &&value)
AWS_ECS_API DeploymentConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_ECS_API DeploymentConfiguration()=default
bool DeploymentCircuitBreakerHasBeenSet() const
void SetLifecycleHooks(LifecycleHooksT &&value)
DeploymentConfiguration & AddLifecycleHooks(LifecycleHooksT &&value)
DeploymentConfiguration & WithStrategy(DeploymentStrategy value)
DeploymentConfiguration & WithDeploymentCircuitBreaker(DeploymentCircuitBreakerT &&value)
bool AlarmsHasBeenSet() const
bool LinearConfigurationHasBeenSet() const
DeploymentConfiguration & WithLifecycleHooks(LifecycleHooksT &&value)
int GetBakeTimeInMinutes() const
int GetMaximumPercent() const
AWS_ECS_API DeploymentConfiguration(Aws::Utils::Json::JsonView jsonValue)
bool EarlySuccessCriteriaHasBeenSet() const
DeploymentConfiguration & WithMinimumHealthyPercent(int value)
const DeploymentAlarms & GetAlarms() const
bool BakeTimeInMinutesHasBeenSet() const
void SetLinearConfiguration(LinearConfigurationT &&value)
void SetMaximumPercent(int value)
DeploymentStrategy GetStrategy() const
bool LifecycleHooksHasBeenSet() const
bool MaximumPercentHasBeenSet() const
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
bool CanaryConfigurationHasBeenSet() const
const DeploymentCircuitBreaker & GetDeploymentCircuitBreaker() const
DeploymentConfiguration & WithCanaryConfiguration(CanaryConfigurationT &&value)
int GetMinimumHealthyPercent() const
void SetEarlySuccessCriteria(EarlySuccessCriteriaT &&value)
DeploymentConfiguration & WithLinearConfiguration(LinearConfigurationT &&value)
bool MinimumHealthyPercentHasBeenSet() const
const LinearConfiguration & GetLinearConfiguration() const
DeploymentConfiguration & WithEarlySuccessCriteria(EarlySuccessCriteriaT &&value)
const CanaryConfiguration & GetCanaryConfiguration() const
bool StrategyHasBeenSet() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue