AWS SDK for C++  0.12.9
AWS SDK for C++
LoadBasedAutoScalingConfiguration.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
19 
20 namespace Aws
21 {
22 namespace Utils
23 {
24 namespace Json
25 {
26  class JsonValue;
27 } // namespace Json
28 } // namespace Utils
29 namespace OpsWorks
30 {
31 namespace Model
32 {
33 
38  {
39  public:
43  Aws::Utils::Json::JsonValue Jsonize() const;
44 
48  inline const Aws::String& GetLayerId() const{ return m_layerId; }
49 
53  inline void SetLayerId(const Aws::String& value) { m_layerIdHasBeenSet = true; m_layerId = value; }
54 
58  inline void SetLayerId(Aws::String&& value) { m_layerIdHasBeenSet = true; m_layerId = value; }
59 
63  inline void SetLayerId(const char* value) { m_layerIdHasBeenSet = true; m_layerId.assign(value); }
64 
68  inline LoadBasedAutoScalingConfiguration& WithLayerId(const Aws::String& value) { SetLayerId(value); return *this;}
69 
73  inline LoadBasedAutoScalingConfiguration& WithLayerId(Aws::String&& value) { SetLayerId(value); return *this;}
74 
78  inline LoadBasedAutoScalingConfiguration& WithLayerId(const char* value) { SetLayerId(value); return *this;}
79 
83  inline bool GetEnable() const{ return m_enable; }
84 
88  inline void SetEnable(bool value) { m_enableHasBeenSet = true; m_enable = value; }
89 
93  inline LoadBasedAutoScalingConfiguration& WithEnable(bool value) { SetEnable(value); return *this;}
94 
100  inline const AutoScalingThresholds& GetUpScaling() const{ return m_upScaling; }
101 
107  inline void SetUpScaling(const AutoScalingThresholds& value) { m_upScalingHasBeenSet = true; m_upScaling = value; }
108 
114  inline void SetUpScaling(AutoScalingThresholds&& value) { m_upScalingHasBeenSet = true; m_upScaling = value; }
115 
121  inline LoadBasedAutoScalingConfiguration& WithUpScaling(const AutoScalingThresholds& value) { SetUpScaling(value); return *this;}
122 
128  inline LoadBasedAutoScalingConfiguration& WithUpScaling(AutoScalingThresholds&& value) { SetUpScaling(value); return *this;}
129 
135  inline const AutoScalingThresholds& GetDownScaling() const{ return m_downScaling; }
136 
142  inline void SetDownScaling(const AutoScalingThresholds& value) { m_downScalingHasBeenSet = true; m_downScaling = value; }
143 
149  inline void SetDownScaling(AutoScalingThresholds&& value) { m_downScalingHasBeenSet = true; m_downScaling = value; }
150 
156  inline LoadBasedAutoScalingConfiguration& WithDownScaling(const AutoScalingThresholds& value) { SetDownScaling(value); return *this;}
157 
163  inline LoadBasedAutoScalingConfiguration& WithDownScaling(AutoScalingThresholds&& value) { SetDownScaling(value); return *this;}
164 
165  private:
166  Aws::String m_layerId;
167  bool m_layerIdHasBeenSet;
168  bool m_enable;
169  bool m_enableHasBeenSet;
170  AutoScalingThresholds m_upScaling;
171  bool m_upScalingHasBeenSet;
172  AutoScalingThresholds m_downScaling;
173  bool m_downScalingHasBeenSet;
174  };
175 
176 } // namespace Model
177 } // namespace OpsWorks
178 } // namespace Aws
LoadBasedAutoScalingConfiguration & WithLayerId(const Aws::String &value)
LoadBasedAutoScalingConfiguration & WithLayerId(const char *value)
LoadBasedAutoScalingConfiguration & WithEnable(bool value)
LoadBasedAutoScalingConfiguration & WithUpScaling(AutoScalingThresholds &&value)
LoadBasedAutoScalingConfiguration & WithDownScaling(AutoScalingThresholds &&value)
LoadBasedAutoScalingConfiguration & WithLayerId(Aws::String &&value)
LoadBasedAutoScalingConfiguration & WithDownScaling(const AutoScalingThresholds &value)
LoadBasedAutoScalingConfiguration & WithUpScaling(const AutoScalingThresholds &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
#define AWS_OPSWORKS_API
JSON (JavaScript Object Notation).