AWS SDK for C++  0.12.9
AWS SDK for C++
UpdateAutoScalingGroupRequest.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
20 
21 namespace Aws
22 {
23 namespace AutoScaling
24 {
25 namespace Model
26 {
27 
31  {
32  public:
34  Aws::String SerializePayload() const override;
35 
39  inline const Aws::String& GetAutoScalingGroupName() const{ return m_autoScalingGroupName; }
40 
44  inline void SetAutoScalingGroupName(const Aws::String& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = value; }
45 
49  inline void SetAutoScalingGroupName(Aws::String&& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = value; }
50 
54  inline void SetAutoScalingGroupName(const char* value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName.assign(value); }
55 
59  inline UpdateAutoScalingGroupRequest& WithAutoScalingGroupName(const Aws::String& value) { SetAutoScalingGroupName(value); return *this;}
60 
64  inline UpdateAutoScalingGroupRequest& WithAutoScalingGroupName(Aws::String&& value) { SetAutoScalingGroupName(value); return *this;}
65 
69  inline UpdateAutoScalingGroupRequest& WithAutoScalingGroupName(const char* value) { SetAutoScalingGroupName(value); return *this;}
70 
74  inline const Aws::String& GetLaunchConfigurationName() const{ return m_launchConfigurationName; }
75 
79  inline void SetLaunchConfigurationName(const Aws::String& value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName = value; }
80 
84  inline void SetLaunchConfigurationName(Aws::String&& value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName = value; }
85 
89  inline void SetLaunchConfigurationName(const char* value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName.assign(value); }
90 
94  inline UpdateAutoScalingGroupRequest& WithLaunchConfigurationName(const Aws::String& value) { SetLaunchConfigurationName(value); return *this;}
95 
99  inline UpdateAutoScalingGroupRequest& WithLaunchConfigurationName(Aws::String&& value) { SetLaunchConfigurationName(value); return *this;}
100 
104  inline UpdateAutoScalingGroupRequest& WithLaunchConfigurationName(const char* value) { SetLaunchConfigurationName(value); return *this;}
105 
109  inline long GetMinSize() const{ return m_minSize; }
110 
114  inline void SetMinSize(long value) { m_minSizeHasBeenSet = true; m_minSize = value; }
115 
119  inline UpdateAutoScalingGroupRequest& WithMinSize(long value) { SetMinSize(value); return *this;}
120 
124  inline long GetMaxSize() const{ return m_maxSize; }
125 
129  inline void SetMaxSize(long value) { m_maxSizeHasBeenSet = true; m_maxSize = value; }
130 
134  inline UpdateAutoScalingGroupRequest& WithMaxSize(long value) { SetMaxSize(value); return *this;}
135 
141  inline long GetDesiredCapacity() const{ return m_desiredCapacity; }
142 
148  inline void SetDesiredCapacity(long value) { m_desiredCapacityHasBeenSet = true; m_desiredCapacity = value; }
149 
155  inline UpdateAutoScalingGroupRequest& WithDesiredCapacity(long value) { SetDesiredCapacity(value); return *this;}
156 
164  inline long GetDefaultCooldown() const{ return m_defaultCooldown; }
165 
173  inline void SetDefaultCooldown(long value) { m_defaultCooldownHasBeenSet = true; m_defaultCooldown = value; }
174 
182  inline UpdateAutoScalingGroupRequest& WithDefaultCooldown(long value) { SetDefaultCooldown(value); return *this;}
183 
187  inline const Aws::Vector<Aws::String>& GetAvailabilityZones() const{ return m_availabilityZones; }
188 
192  inline void SetAvailabilityZones(const Aws::Vector<Aws::String>& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = value; }
193 
197  inline void SetAvailabilityZones(Aws::Vector<Aws::String>&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = value; }
198 
202  inline UpdateAutoScalingGroupRequest& WithAvailabilityZones(const Aws::Vector<Aws::String>& value) { SetAvailabilityZones(value); return *this;}
203 
207  inline UpdateAutoScalingGroupRequest& WithAvailabilityZones(Aws::Vector<Aws::String>&& value) { SetAvailabilityZones(value); return *this;}
208 
212  inline UpdateAutoScalingGroupRequest& AddAvailabilityZones(const Aws::String& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
213 
217  inline UpdateAutoScalingGroupRequest& AddAvailabilityZones(Aws::String&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
218 
222  inline UpdateAutoScalingGroupRequest& AddAvailabilityZones(const char* value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
223 
228  inline const Aws::String& GetHealthCheckType() const{ return m_healthCheckType; }
229 
234  inline void SetHealthCheckType(const Aws::String& value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType = value; }
235 
240  inline void SetHealthCheckType(Aws::String&& value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType = value; }
241 
246  inline void SetHealthCheckType(const char* value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType.assign(value); }
247 
252  inline UpdateAutoScalingGroupRequest& WithHealthCheckType(const Aws::String& value) { SetHealthCheckType(value); return *this;}
253 
258  inline UpdateAutoScalingGroupRequest& WithHealthCheckType(Aws::String&& value) { SetHealthCheckType(value); return *this;}
259 
264  inline UpdateAutoScalingGroupRequest& WithHealthCheckType(const char* value) { SetHealthCheckType(value); return *this;}
265 
273  inline long GetHealthCheckGracePeriod() const{ return m_healthCheckGracePeriod; }
274 
282  inline void SetHealthCheckGracePeriod(long value) { m_healthCheckGracePeriodHasBeenSet = true; m_healthCheckGracePeriod = value; }
283 
291  inline UpdateAutoScalingGroupRequest& WithHealthCheckGracePeriod(long value) { SetHealthCheckGracePeriod(value); return *this;}
292 
299  inline const Aws::String& GetPlacementGroup() const{ return m_placementGroup; }
300 
307  inline void SetPlacementGroup(const Aws::String& value) { m_placementGroupHasBeenSet = true; m_placementGroup = value; }
308 
315  inline void SetPlacementGroup(Aws::String&& value) { m_placementGroupHasBeenSet = true; m_placementGroup = value; }
316 
323  inline void SetPlacementGroup(const char* value) { m_placementGroupHasBeenSet = true; m_placementGroup.assign(value); }
324 
331  inline UpdateAutoScalingGroupRequest& WithPlacementGroup(const Aws::String& value) { SetPlacementGroup(value); return *this;}
332 
339  inline UpdateAutoScalingGroupRequest& WithPlacementGroup(Aws::String&& value) { SetPlacementGroup(value); return *this;}
340 
347  inline UpdateAutoScalingGroupRequest& WithPlacementGroup(const char* value) { SetPlacementGroup(value); return *this;}
348 
359  inline const Aws::String& GetVPCZoneIdentifier() const{ return m_vPCZoneIdentifier; }
360 
371  inline void SetVPCZoneIdentifier(const Aws::String& value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier = value; }
372 
383  inline void SetVPCZoneIdentifier(Aws::String&& value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier = value; }
384 
395  inline void SetVPCZoneIdentifier(const char* value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier.assign(value); }
396 
407  inline UpdateAutoScalingGroupRequest& WithVPCZoneIdentifier(const Aws::String& value) { SetVPCZoneIdentifier(value); return *this;}
408 
419  inline UpdateAutoScalingGroupRequest& WithVPCZoneIdentifier(Aws::String&& value) { SetVPCZoneIdentifier(value); return *this;}
420 
431  inline UpdateAutoScalingGroupRequest& WithVPCZoneIdentifier(const char* value) { SetVPCZoneIdentifier(value); return *this;}
432 
441  inline const Aws::Vector<Aws::String>& GetTerminationPolicies() const{ return m_terminationPolicies; }
442 
451  inline void SetTerminationPolicies(const Aws::Vector<Aws::String>& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies = value; }
452 
461  inline void SetTerminationPolicies(Aws::Vector<Aws::String>&& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies = value; }
462 
471  inline UpdateAutoScalingGroupRequest& WithTerminationPolicies(const Aws::Vector<Aws::String>& value) { SetTerminationPolicies(value); return *this;}
472 
481  inline UpdateAutoScalingGroupRequest& WithTerminationPolicies(Aws::Vector<Aws::String>&& value) { SetTerminationPolicies(value); return *this;}
482 
491  inline UpdateAutoScalingGroupRequest& AddTerminationPolicies(const Aws::String& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(value); return *this; }
492 
501  inline UpdateAutoScalingGroupRequest& AddTerminationPolicies(Aws::String&& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(value); return *this; }
502 
511  inline UpdateAutoScalingGroupRequest& AddTerminationPolicies(const char* value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(value); return *this; }
512 
517  inline bool GetNewInstancesProtectedFromScaleIn() const{ return m_newInstancesProtectedFromScaleIn; }
518 
523  inline void SetNewInstancesProtectedFromScaleIn(bool value) { m_newInstancesProtectedFromScaleInHasBeenSet = true; m_newInstancesProtectedFromScaleIn = value; }
524 
529  inline UpdateAutoScalingGroupRequest& WithNewInstancesProtectedFromScaleIn(bool value) { SetNewInstancesProtectedFromScaleIn(value); return *this;}
530 
531  private:
532  Aws::String m_autoScalingGroupName;
533  bool m_autoScalingGroupNameHasBeenSet;
534  Aws::String m_launchConfigurationName;
535  bool m_launchConfigurationNameHasBeenSet;
536  long m_minSize;
537  bool m_minSizeHasBeenSet;
538  long m_maxSize;
539  bool m_maxSizeHasBeenSet;
540  long m_desiredCapacity;
541  bool m_desiredCapacityHasBeenSet;
542  long m_defaultCooldown;
543  bool m_defaultCooldownHasBeenSet;
544  Aws::Vector<Aws::String> m_availabilityZones;
545  bool m_availabilityZonesHasBeenSet;
546  Aws::String m_healthCheckType;
547  bool m_healthCheckTypeHasBeenSet;
548  long m_healthCheckGracePeriod;
549  bool m_healthCheckGracePeriodHasBeenSet;
550  Aws::String m_placementGroup;
551  bool m_placementGroupHasBeenSet;
552  Aws::String m_vPCZoneIdentifier;
553  bool m_vPCZoneIdentifierHasBeenSet;
554  Aws::Vector<Aws::String> m_terminationPolicies;
555  bool m_terminationPoliciesHasBeenSet;
556  bool m_newInstancesProtectedFromScaleIn;
557  bool m_newInstancesProtectedFromScaleInHasBeenSet;
558  };
559 
560 } // namespace Model
561 } // namespace AutoScaling
562 } // namespace Aws
UpdateAutoScalingGroupRequest & WithLaunchConfigurationName(const char *value)
UpdateAutoScalingGroupRequest & WithDesiredCapacity(long value)
UpdateAutoScalingGroupRequest & WithPlacementGroup(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithTerminationPolicies(Aws::Vector< Aws::String > &&value)
UpdateAutoScalingGroupRequest & AddAvailabilityZones(const Aws::String &value)
UpdateAutoScalingGroupRequest & WithLaunchConfigurationName(const Aws::String &value)
UpdateAutoScalingGroupRequest & WithAvailabilityZones(Aws::Vector< Aws::String > &&value)
UpdateAutoScalingGroupRequest & AddTerminationPolicies(const char *value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
UpdateAutoScalingGroupRequest & AddTerminationPolicies(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithDefaultCooldown(long value)
UpdateAutoScalingGroupRequest & WithHealthCheckType(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithAutoScalingGroupName(const char *value)
UpdateAutoScalingGroupRequest & WithHealthCheckGracePeriod(long value)
void SetTerminationPolicies(const Aws::Vector< Aws::String > &value)
UpdateAutoScalingGroupRequest & WithPlacementGroup(const char *value)
const Aws::Vector< Aws::String > & GetAvailabilityZones() const
UpdateAutoScalingGroupRequest & AddAvailabilityZones(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithTerminationPolicies(const Aws::Vector< Aws::String > &value)
UpdateAutoScalingGroupRequest & WithHealthCheckType(const char *value)
UpdateAutoScalingGroupRequest & AddAvailabilityZones(const char *value)
UpdateAutoScalingGroupRequest & WithAvailabilityZones(const Aws::Vector< Aws::String > &value)
UpdateAutoScalingGroupRequest & WithLaunchConfigurationName(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithVPCZoneIdentifier(const char *value)
UpdateAutoScalingGroupRequest & WithAutoScalingGroupName(const Aws::String &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
UpdateAutoScalingGroupRequest & AddTerminationPolicies(const Aws::String &value)
UpdateAutoScalingGroupRequest & WithNewInstancesProtectedFromScaleIn(bool value)
UpdateAutoScalingGroupRequest & WithAutoScalingGroupName(Aws::String &&value)
#define AWS_AUTOSCALING_API
UpdateAutoScalingGroupRequest & WithVPCZoneIdentifier(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithHealthCheckType(const Aws::String &value)
UpdateAutoScalingGroupRequest & WithPlacementGroup(const Aws::String &value)
const Aws::Vector< Aws::String > & GetTerminationPolicies() const
UpdateAutoScalingGroupRequest & WithVPCZoneIdentifier(const Aws::String &value)
JSON (JavaScript Object Notation).
void SetAvailabilityZones(const Aws::Vector< Aws::String > &value)