AWS SDK for C++

AWS SDK for C++ Version 1.11.849

Loading...
Searching...
No Matches
DeploymentCircuitBreaker.h
1
6#pragma once
7#include <aws/ecs/ECS_EXPORTS.h>
8#include <aws/ecs/model/ThresholdConfiguration.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace ECS {
20namespace Model {
21
40 public:
41 AWS_ECS_API DeploymentCircuitBreaker() = default;
45
47
51 inline bool GetEnable() const { return m_enable; }
52 inline bool EnableHasBeenSet() const { return m_enableHasBeenSet; }
53 inline void SetEnable(bool value) {
54 m_enableHasBeenSet = true;
55 m_enable = value;
56 }
58 SetEnable(value);
59 return *this;
60 }
62
64
70 inline bool GetRollback() const { return m_rollback; }
71 inline bool RollbackHasBeenSet() const { return m_rollbackHasBeenSet; }
72 inline void SetRollback(bool value) {
73 m_rollbackHasBeenSet = true;
74 m_rollback = value;
75 }
77 SetRollback(value);
78 return *this;
79 }
81
83
90 inline bool GetResetOnHealthyTask() const { return m_resetOnHealthyTask; }
91 inline bool ResetOnHealthyTaskHasBeenSet() const { return m_resetOnHealthyTaskHasBeenSet; }
92 inline void SetResetOnHealthyTask(bool value) {
93 m_resetOnHealthyTaskHasBeenSet = true;
94 m_resetOnHealthyTask = value;
95 }
98 return *this;
99 }
101
103
108 inline const ThresholdConfiguration& GetThresholdConfiguration() const { return m_thresholdConfiguration; }
109 inline bool ThresholdConfigurationHasBeenSet() const { return m_thresholdConfigurationHasBeenSet; }
110 template <typename ThresholdConfigurationT = ThresholdConfiguration>
111 void SetThresholdConfiguration(ThresholdConfigurationT&& value) {
112 m_thresholdConfigurationHasBeenSet = true;
113 m_thresholdConfiguration = std::forward<ThresholdConfigurationT>(value);
114 }
115 template <typename ThresholdConfigurationT = ThresholdConfiguration>
116 DeploymentCircuitBreaker& WithThresholdConfiguration(ThresholdConfigurationT&& value) {
117 SetThresholdConfiguration(std::forward<ThresholdConfigurationT>(value));
118 return *this;
119 }
121 private:
122 bool m_enable{false};
123
124 bool m_rollback{false};
125
126 bool m_resetOnHealthyTask{false};
127
128 ThresholdConfiguration m_thresholdConfiguration;
129 bool m_enableHasBeenSet = false;
130 bool m_rollbackHasBeenSet = false;
131 bool m_resetOnHealthyTaskHasBeenSet = false;
132 bool m_thresholdConfigurationHasBeenSet = false;
133};
134
135} // namespace Model
136} // namespace ECS
137} // namespace Aws
DeploymentCircuitBreaker & WithResetOnHealthyTask(bool value)
AWS_ECS_API DeploymentCircuitBreaker & operator=(Aws::Utils::Json::JsonView jsonValue)
const ThresholdConfiguration & GetThresholdConfiguration() const
DeploymentCircuitBreaker & WithThresholdConfiguration(ThresholdConfigurationT &&value)
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetThresholdConfiguration(ThresholdConfigurationT &&value)
AWS_ECS_API DeploymentCircuitBreaker(Aws::Utils::Json::JsonView jsonValue)
DeploymentCircuitBreaker & WithEnable(bool value)
DeploymentCircuitBreaker & WithRollback(bool value)
AWS_ECS_API DeploymentCircuitBreaker()=default
Aws::Utils::Json::JsonValue JsonValue