AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
LoadBasedAutoScalingConfiguration.h
1
6#pragma once
7#include <aws/opsworks/OpsWorks_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/opsworks/model/AutoScalingThresholds.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace OpsWorks
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_OPSWORKS_API LoadBasedAutoScalingConfiguration() = default;
39 AWS_OPSWORKS_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
46 inline const Aws::String& GetLayerId() const { return m_layerId; }
47 inline bool LayerIdHasBeenSet() const { return m_layerIdHasBeenSet; }
48 template<typename LayerIdT = Aws::String>
49 void SetLayerId(LayerIdT&& value) { m_layerIdHasBeenSet = true; m_layerId = std::forward<LayerIdT>(value); }
50 template<typename LayerIdT = Aws::String>
51 LoadBasedAutoScalingConfiguration& WithLayerId(LayerIdT&& value) { SetLayerId(std::forward<LayerIdT>(value)); return *this;}
53
55
58 inline bool GetEnable() const { return m_enable; }
59 inline bool EnableHasBeenSet() const { return m_enableHasBeenSet; }
60 inline void SetEnable(bool value) { m_enableHasBeenSet = true; m_enable = value; }
61 inline LoadBasedAutoScalingConfiguration& WithEnable(bool value) { SetEnable(value); return *this;}
63
65
70 inline const AutoScalingThresholds& GetUpScaling() const { return m_upScaling; }
71 inline bool UpScalingHasBeenSet() const { return m_upScalingHasBeenSet; }
72 template<typename UpScalingT = AutoScalingThresholds>
73 void SetUpScaling(UpScalingT&& value) { m_upScalingHasBeenSet = true; m_upScaling = std::forward<UpScalingT>(value); }
74 template<typename UpScalingT = AutoScalingThresholds>
75 LoadBasedAutoScalingConfiguration& WithUpScaling(UpScalingT&& value) { SetUpScaling(std::forward<UpScalingT>(value)); return *this;}
77
79
84 inline const AutoScalingThresholds& GetDownScaling() const { return m_downScaling; }
85 inline bool DownScalingHasBeenSet() const { return m_downScalingHasBeenSet; }
86 template<typename DownScalingT = AutoScalingThresholds>
87 void SetDownScaling(DownScalingT&& value) { m_downScalingHasBeenSet = true; m_downScaling = std::forward<DownScalingT>(value); }
88 template<typename DownScalingT = AutoScalingThresholds>
89 LoadBasedAutoScalingConfiguration& WithDownScaling(DownScalingT&& value) { SetDownScaling(std::forward<DownScalingT>(value)); return *this;}
91 private:
92
93 Aws::String m_layerId;
94 bool m_layerIdHasBeenSet = false;
95
96 bool m_enable{false};
97 bool m_enableHasBeenSet = false;
98
99 AutoScalingThresholds m_upScaling;
100 bool m_upScalingHasBeenSet = false;
101
102 AutoScalingThresholds m_downScaling;
103 bool m_downScalingHasBeenSet = false;
104 };
105
106} // namespace Model
107} // namespace OpsWorks
108} // namespace Aws
LoadBasedAutoScalingConfiguration & WithLayerId(LayerIdT &&value)
LoadBasedAutoScalingConfiguration & WithDownScaling(DownScalingT &&value)
AWS_OPSWORKS_API LoadBasedAutoScalingConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWS_OPSWORKS_API LoadBasedAutoScalingConfiguration()=default
LoadBasedAutoScalingConfiguration & WithUpScaling(UpScalingT &&value)
AWS_OPSWORKS_API LoadBasedAutoScalingConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_OPSWORKS_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue