All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.autoscaling.model.AutoScalingGroup Maven / Gradle / Ivy

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * Copyright 2011-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not
 * use this file except in compliance with the License. A copy of the License is
 * located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on
 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package com.amazonaws.services.autoscaling.model;

import java.io.Serializable;

/**
 * 

* Describes an Auto Scaling group. *

*/ public class AutoScalingGroup implements Serializable, Cloneable { /** *

* The name of the group. *

*/ private String autoScalingGroupName; /** *

* The Amazon Resource Name (ARN) of the group. *

*/ private String autoScalingGroupARN; /** *

* The name of the associated launch configuration. *

*/ private String launchConfigurationName; /** *

* The minimum size of the group. *

*/ private Integer minSize; /** *

* The maximum size of the group. *

*/ private Integer maxSize; /** *

* The desired size of the group. *

*/ private Integer desiredCapacity; /** *

* The amount of time, in seconds, after a scaling activity completes before * another scaling activity can start. *

*/ private Integer defaultCooldown; /** *

* One or more Availability Zones for the group. *

*/ private com.amazonaws.internal.SdkInternalList availabilityZones; /** *

* One or more load balancers associated with the group. *

*/ private com.amazonaws.internal.SdkInternalList loadBalancerNames; /** *

* The service to use for the health checks. The valid values are * EC2 and ELB. *

*/ private String healthCheckType; /** *

* The amount of time, in seconds, that Auto Scaling waits before checking * the health status of an EC2 instance that has come into service. *

*/ private Integer healthCheckGracePeriod; /** *

* The EC2 instances associated with the group. *

*/ private com.amazonaws.internal.SdkInternalList instances; /** *

* The date and time the group was created. *

*/ private java.util.Date createdTime; /** *

* The suspended processes associated with the group. *

*/ private com.amazonaws.internal.SdkInternalList suspendedProcesses; /** *

* The name of the placement group into which you'll launch your instances, * if any. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User * Guide. *

*/ private String placementGroup; /** *

* One or more subnet IDs, if applicable, separated by commas. *

*

* If you specify VPCZoneIdentifier and * AvailabilityZones, ensure that the Availability Zones of the * subnets match the values for AvailabilityZones. *

*/ private String vPCZoneIdentifier; /** *

* The metrics enabled for the group. *

*/ private com.amazonaws.internal.SdkInternalList enabledMetrics; /** *

* The current state of the group when DeleteAutoScalingGroup is in * progress. *

*/ private String status; /** *

* The tags for the group. *

*/ private com.amazonaws.internal.SdkInternalList tags; /** *

* The termination policies for the group. *

*/ private com.amazonaws.internal.SdkInternalList terminationPolicies; /** *

* Indicates whether newly launched instances are protected from termination * by Auto Scaling when scaling in. *

*/ private Boolean newInstancesProtectedFromScaleIn; /** *

* The name of the group. *

* * @param autoScalingGroupName * The name of the group. */ public void setAutoScalingGroupName(String autoScalingGroupName) { this.autoScalingGroupName = autoScalingGroupName; } /** *

* The name of the group. *

* * @return The name of the group. */ public String getAutoScalingGroupName() { return this.autoScalingGroupName; } /** *

* The name of the group. *

* * @param autoScalingGroupName * The name of the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withAutoScalingGroupName(String autoScalingGroupName) { setAutoScalingGroupName(autoScalingGroupName); return this; } /** *

* The Amazon Resource Name (ARN) of the group. *

* * @param autoScalingGroupARN * The Amazon Resource Name (ARN) of the group. */ public void setAutoScalingGroupARN(String autoScalingGroupARN) { this.autoScalingGroupARN = autoScalingGroupARN; } /** *

* The Amazon Resource Name (ARN) of the group. *

* * @return The Amazon Resource Name (ARN) of the group. */ public String getAutoScalingGroupARN() { return this.autoScalingGroupARN; } /** *

* The Amazon Resource Name (ARN) of the group. *

* * @param autoScalingGroupARN * The Amazon Resource Name (ARN) of the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withAutoScalingGroupARN(String autoScalingGroupARN) { setAutoScalingGroupARN(autoScalingGroupARN); return this; } /** *

* The name of the associated launch configuration. *

* * @param launchConfigurationName * The name of the associated launch configuration. */ public void setLaunchConfigurationName(String launchConfigurationName) { this.launchConfigurationName = launchConfigurationName; } /** *

* The name of the associated launch configuration. *

* * @return The name of the associated launch configuration. */ public String getLaunchConfigurationName() { return this.launchConfigurationName; } /** *

* The name of the associated launch configuration. *

* * @param launchConfigurationName * The name of the associated launch configuration. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withLaunchConfigurationName( String launchConfigurationName) { setLaunchConfigurationName(launchConfigurationName); return this; } /** *

* The minimum size of the group. *

* * @param minSize * The minimum size of the group. */ public void setMinSize(Integer minSize) { this.minSize = minSize; } /** *

* The minimum size of the group. *

* * @return The minimum size of the group. */ public Integer getMinSize() { return this.minSize; } /** *

* The minimum size of the group. *

* * @param minSize * The minimum size of the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withMinSize(Integer minSize) { setMinSize(minSize); return this; } /** *

* The maximum size of the group. *

* * @param maxSize * The maximum size of the group. */ public void setMaxSize(Integer maxSize) { this.maxSize = maxSize; } /** *

* The maximum size of the group. *

* * @return The maximum size of the group. */ public Integer getMaxSize() { return this.maxSize; } /** *

* The maximum size of the group. *

* * @param maxSize * The maximum size of the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withMaxSize(Integer maxSize) { setMaxSize(maxSize); return this; } /** *

* The desired size of the group. *

* * @param desiredCapacity * The desired size of the group. */ public void setDesiredCapacity(Integer desiredCapacity) { this.desiredCapacity = desiredCapacity; } /** *

* The desired size of the group. *

* * @return The desired size of the group. */ public Integer getDesiredCapacity() { return this.desiredCapacity; } /** *

* The desired size of the group. *

* * @param desiredCapacity * The desired size of the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withDesiredCapacity(Integer desiredCapacity) { setDesiredCapacity(desiredCapacity); return this; } /** *

* The amount of time, in seconds, after a scaling activity completes before * another scaling activity can start. *

* * @param defaultCooldown * The amount of time, in seconds, after a scaling activity completes * before another scaling activity can start. */ public void setDefaultCooldown(Integer defaultCooldown) { this.defaultCooldown = defaultCooldown; } /** *

* The amount of time, in seconds, after a scaling activity completes before * another scaling activity can start. *

* * @return The amount of time, in seconds, after a scaling activity * completes before another scaling activity can start. */ public Integer getDefaultCooldown() { return this.defaultCooldown; } /** *

* The amount of time, in seconds, after a scaling activity completes before * another scaling activity can start. *

* * @param defaultCooldown * The amount of time, in seconds, after a scaling activity completes * before another scaling activity can start. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withDefaultCooldown(Integer defaultCooldown) { setDefaultCooldown(defaultCooldown); return this; } /** *

* One or more Availability Zones for the group. *

* * @return One or more Availability Zones for the group. */ public java.util.List getAvailabilityZones() { if (availabilityZones == null) { availabilityZones = new com.amazonaws.internal.SdkInternalList(); } return availabilityZones; } /** *

* One or more Availability Zones for the group. *

* * @param availabilityZones * One or more Availability Zones for the group. */ public void setAvailabilityZones( java.util.Collection availabilityZones) { if (availabilityZones == null) { this.availabilityZones = null; return; } this.availabilityZones = new com.amazonaws.internal.SdkInternalList( availabilityZones); } /** *

* One or more Availability Zones for the group. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setAvailabilityZones(java.util.Collection)} or * {@link #withAvailabilityZones(java.util.Collection)} if you want to * override the existing values. *

* * @param availabilityZones * One or more Availability Zones for the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withAvailabilityZones(String... availabilityZones) { if (this.availabilityZones == null) { setAvailabilityZones(new com.amazonaws.internal.SdkInternalList( availabilityZones.length)); } for (String ele : availabilityZones) { this.availabilityZones.add(ele); } return this; } /** *

* One or more Availability Zones for the group. *

* * @param availabilityZones * One or more Availability Zones for the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withAvailabilityZones( java.util.Collection availabilityZones) { setAvailabilityZones(availabilityZones); return this; } /** *

* One or more load balancers associated with the group. *

* * @return One or more load balancers associated with the group. */ public java.util.List getLoadBalancerNames() { if (loadBalancerNames == null) { loadBalancerNames = new com.amazonaws.internal.SdkInternalList(); } return loadBalancerNames; } /** *

* One or more load balancers associated with the group. *

* * @param loadBalancerNames * One or more load balancers associated with the group. */ public void setLoadBalancerNames( java.util.Collection loadBalancerNames) { if (loadBalancerNames == null) { this.loadBalancerNames = null; return; } this.loadBalancerNames = new com.amazonaws.internal.SdkInternalList( loadBalancerNames); } /** *

* One or more load balancers associated with the group. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setLoadBalancerNames(java.util.Collection)} or * {@link #withLoadBalancerNames(java.util.Collection)} if you want to * override the existing values. *

* * @param loadBalancerNames * One or more load balancers associated with the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withLoadBalancerNames(String... loadBalancerNames) { if (this.loadBalancerNames == null) { setLoadBalancerNames(new com.amazonaws.internal.SdkInternalList( loadBalancerNames.length)); } for (String ele : loadBalancerNames) { this.loadBalancerNames.add(ele); } return this; } /** *

* One or more load balancers associated with the group. *

* * @param loadBalancerNames * One or more load balancers associated with the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withLoadBalancerNames( java.util.Collection loadBalancerNames) { setLoadBalancerNames(loadBalancerNames); return this; } /** *

* The service to use for the health checks. The valid values are * EC2 and ELB. *

* * @param healthCheckType * The service to use for the health checks. The valid values are * EC2 and ELB. */ public void setHealthCheckType(String healthCheckType) { this.healthCheckType = healthCheckType; } /** *

* The service to use for the health checks. The valid values are * EC2 and ELB. *

* * @return The service to use for the health checks. The valid values are * EC2 and ELB. */ public String getHealthCheckType() { return this.healthCheckType; } /** *

* The service to use for the health checks. The valid values are * EC2 and ELB. *

* * @param healthCheckType * The service to use for the health checks. The valid values are * EC2 and ELB. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withHealthCheckType(String healthCheckType) { setHealthCheckType(healthCheckType); return this; } /** *

* The amount of time, in seconds, that Auto Scaling waits before checking * the health status of an EC2 instance that has come into service. *

* * @param healthCheckGracePeriod * The amount of time, in seconds, that Auto Scaling waits before * checking the health status of an EC2 instance that has come into * service. */ public void setHealthCheckGracePeriod(Integer healthCheckGracePeriod) { this.healthCheckGracePeriod = healthCheckGracePeriod; } /** *

* The amount of time, in seconds, that Auto Scaling waits before checking * the health status of an EC2 instance that has come into service. *

* * @return The amount of time, in seconds, that Auto Scaling waits before * checking the health status of an EC2 instance that has come into * service. */ public Integer getHealthCheckGracePeriod() { return this.healthCheckGracePeriod; } /** *

* The amount of time, in seconds, that Auto Scaling waits before checking * the health status of an EC2 instance that has come into service. *

* * @param healthCheckGracePeriod * The amount of time, in seconds, that Auto Scaling waits before * checking the health status of an EC2 instance that has come into * service. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withHealthCheckGracePeriod( Integer healthCheckGracePeriod) { setHealthCheckGracePeriod(healthCheckGracePeriod); return this; } /** *

* The EC2 instances associated with the group. *

* * @return The EC2 instances associated with the group. */ public java.util.List getInstances() { if (instances == null) { instances = new com.amazonaws.internal.SdkInternalList(); } return instances; } /** *

* The EC2 instances associated with the group. *

* * @param instances * The EC2 instances associated with the group. */ public void setInstances(java.util.Collection instances) { if (instances == null) { this.instances = null; return; } this.instances = new com.amazonaws.internal.SdkInternalList( instances); } /** *

* The EC2 instances associated with the group. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setInstances(java.util.Collection)} or * {@link #withInstances(java.util.Collection)} if you want to override the * existing values. *

* * @param instances * The EC2 instances associated with the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withInstances(Instance... instances) { if (this.instances == null) { setInstances(new com.amazonaws.internal.SdkInternalList( instances.length)); } for (Instance ele : instances) { this.instances.add(ele); } return this; } /** *

* The EC2 instances associated with the group. *

* * @param instances * The EC2 instances associated with the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withInstances( java.util.Collection instances) { setInstances(instances); return this; } /** *

* The date and time the group was created. *

* * @param createdTime * The date and time the group was created. */ public void setCreatedTime(java.util.Date createdTime) { this.createdTime = createdTime; } /** *

* The date and time the group was created. *

* * @return The date and time the group was created. */ public java.util.Date getCreatedTime() { return this.createdTime; } /** *

* The date and time the group was created. *

* * @param createdTime * The date and time the group was created. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withCreatedTime(java.util.Date createdTime) { setCreatedTime(createdTime); return this; } /** *

* The suspended processes associated with the group. *

* * @return The suspended processes associated with the group. */ public java.util.List getSuspendedProcesses() { if (suspendedProcesses == null) { suspendedProcesses = new com.amazonaws.internal.SdkInternalList(); } return suspendedProcesses; } /** *

* The suspended processes associated with the group. *

* * @param suspendedProcesses * The suspended processes associated with the group. */ public void setSuspendedProcesses( java.util.Collection suspendedProcesses) { if (suspendedProcesses == null) { this.suspendedProcesses = null; return; } this.suspendedProcesses = new com.amazonaws.internal.SdkInternalList( suspendedProcesses); } /** *

* The suspended processes associated with the group. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setSuspendedProcesses(java.util.Collection)} or * {@link #withSuspendedProcesses(java.util.Collection)} if you want to * override the existing values. *

* * @param suspendedProcesses * The suspended processes associated with the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withSuspendedProcesses( SuspendedProcess... suspendedProcesses) { if (this.suspendedProcesses == null) { setSuspendedProcesses(new com.amazonaws.internal.SdkInternalList( suspendedProcesses.length)); } for (SuspendedProcess ele : suspendedProcesses) { this.suspendedProcesses.add(ele); } return this; } /** *

* The suspended processes associated with the group. *

* * @param suspendedProcesses * The suspended processes associated with the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withSuspendedProcesses( java.util.Collection suspendedProcesses) { setSuspendedProcesses(suspendedProcesses); return this; } /** *

* The name of the placement group into which you'll launch your instances, * if any. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User * Guide. *

* * @param placementGroup * The name of the placement group into which you'll launch your * instances, if any. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User * Guide. */ public void setPlacementGroup(String placementGroup) { this.placementGroup = placementGroup; } /** *

* The name of the placement group into which you'll launch your instances, * if any. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User * Guide. *

* * @return The name of the placement group into which you'll launch your * instances, if any. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User * Guide. */ public String getPlacementGroup() { return this.placementGroup; } /** *

* The name of the placement group into which you'll launch your instances, * if any. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User * Guide. *

* * @param placementGroup * The name of the placement group into which you'll launch your * instances, if any. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User * Guide. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withPlacementGroup(String placementGroup) { setPlacementGroup(placementGroup); return this; } /** *

* One or more subnet IDs, if applicable, separated by commas. *

*

* If you specify VPCZoneIdentifier and * AvailabilityZones, ensure that the Availability Zones of the * subnets match the values for AvailabilityZones. *

* * @param vPCZoneIdentifier * One or more subnet IDs, if applicable, separated by commas.

*

* If you specify VPCZoneIdentifier and * AvailabilityZones, ensure that the Availability Zones * of the subnets match the values for AvailabilityZones. */ public void setVPCZoneIdentifier(String vPCZoneIdentifier) { this.vPCZoneIdentifier = vPCZoneIdentifier; } /** *

* One or more subnet IDs, if applicable, separated by commas. *

*

* If you specify VPCZoneIdentifier and * AvailabilityZones, ensure that the Availability Zones of the * subnets match the values for AvailabilityZones. *

* * @return One or more subnet IDs, if applicable, separated by commas.

*

* If you specify VPCZoneIdentifier and * AvailabilityZones, ensure that the Availability * Zones of the subnets match the values for * AvailabilityZones. */ public String getVPCZoneIdentifier() { return this.vPCZoneIdentifier; } /** *

* One or more subnet IDs, if applicable, separated by commas. *

*

* If you specify VPCZoneIdentifier and * AvailabilityZones, ensure that the Availability Zones of the * subnets match the values for AvailabilityZones. *

* * @param vPCZoneIdentifier * One or more subnet IDs, if applicable, separated by commas.

*

* If you specify VPCZoneIdentifier and * AvailabilityZones, ensure that the Availability Zones * of the subnets match the values for AvailabilityZones. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withVPCZoneIdentifier(String vPCZoneIdentifier) { setVPCZoneIdentifier(vPCZoneIdentifier); return this; } /** *

* The metrics enabled for the group. *

* * @return The metrics enabled for the group. */ public java.util.List getEnabledMetrics() { if (enabledMetrics == null) { enabledMetrics = new com.amazonaws.internal.SdkInternalList(); } return enabledMetrics; } /** *

* The metrics enabled for the group. *

* * @param enabledMetrics * The metrics enabled for the group. */ public void setEnabledMetrics( java.util.Collection enabledMetrics) { if (enabledMetrics == null) { this.enabledMetrics = null; return; } this.enabledMetrics = new com.amazonaws.internal.SdkInternalList( enabledMetrics); } /** *

* The metrics enabled for the group. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setEnabledMetrics(java.util.Collection)} or * {@link #withEnabledMetrics(java.util.Collection)} if you want to override * the existing values. *

* * @param enabledMetrics * The metrics enabled for the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withEnabledMetrics(EnabledMetric... enabledMetrics) { if (this.enabledMetrics == null) { setEnabledMetrics(new com.amazonaws.internal.SdkInternalList( enabledMetrics.length)); } for (EnabledMetric ele : enabledMetrics) { this.enabledMetrics.add(ele); } return this; } /** *

* The metrics enabled for the group. *

* * @param enabledMetrics * The metrics enabled for the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withEnabledMetrics( java.util.Collection enabledMetrics) { setEnabledMetrics(enabledMetrics); return this; } /** *

* The current state of the group when DeleteAutoScalingGroup is in * progress. *

* * @param status * The current state of the group when DeleteAutoScalingGroup * is in progress. */ public void setStatus(String status) { this.status = status; } /** *

* The current state of the group when DeleteAutoScalingGroup is in * progress. *

* * @return The current state of the group when DeleteAutoScalingGroup * is in progress. */ public String getStatus() { return this.status; } /** *

* The current state of the group when DeleteAutoScalingGroup is in * progress. *

* * @param status * The current state of the group when DeleteAutoScalingGroup * is in progress. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withStatus(String status) { setStatus(status); return this; } /** *

* The tags for the group. *

* * @return The tags for the group. */ public java.util.List getTags() { if (tags == null) { tags = new com.amazonaws.internal.SdkInternalList(); } return tags; } /** *

* The tags for the group. *

* * @param tags * The tags for the group. */ public void setTags(java.util.Collection tags) { if (tags == null) { this.tags = null; return; } this.tags = new com.amazonaws.internal.SdkInternalList( tags); } /** *

* The tags for the group. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setTags(java.util.Collection)} or * {@link #withTags(java.util.Collection)} if you want to override the * existing values. *

* * @param tags * The tags for the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withTags(TagDescription... tags) { if (this.tags == null) { setTags(new com.amazonaws.internal.SdkInternalList( tags.length)); } for (TagDescription ele : tags) { this.tags.add(ele); } return this; } /** *

* The tags for the group. *

* * @param tags * The tags for the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withTags(java.util.Collection tags) { setTags(tags); return this; } /** *

* The termination policies for the group. *

* * @return The termination policies for the group. */ public java.util.List getTerminationPolicies() { if (terminationPolicies == null) { terminationPolicies = new com.amazonaws.internal.SdkInternalList(); } return terminationPolicies; } /** *

* The termination policies for the group. *

* * @param terminationPolicies * The termination policies for the group. */ public void setTerminationPolicies( java.util.Collection terminationPolicies) { if (terminationPolicies == null) { this.terminationPolicies = null; return; } this.terminationPolicies = new com.amazonaws.internal.SdkInternalList( terminationPolicies); } /** *

* The termination policies for the group. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setTerminationPolicies(java.util.Collection)} or * {@link #withTerminationPolicies(java.util.Collection)} if you want to * override the existing values. *

* * @param terminationPolicies * The termination policies for the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withTerminationPolicies( String... terminationPolicies) { if (this.terminationPolicies == null) { setTerminationPolicies(new com.amazonaws.internal.SdkInternalList( terminationPolicies.length)); } for (String ele : terminationPolicies) { this.terminationPolicies.add(ele); } return this; } /** *

* The termination policies for the group. *

* * @param terminationPolicies * The termination policies for the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withTerminationPolicies( java.util.Collection terminationPolicies) { setTerminationPolicies(terminationPolicies); return this; } /** *

* Indicates whether newly launched instances are protected from termination * by Auto Scaling when scaling in. *

* * @param newInstancesProtectedFromScaleIn * Indicates whether newly launched instances are protected from * termination by Auto Scaling when scaling in. */ public void setNewInstancesProtectedFromScaleIn( Boolean newInstancesProtectedFromScaleIn) { this.newInstancesProtectedFromScaleIn = newInstancesProtectedFromScaleIn; } /** *

* Indicates whether newly launched instances are protected from termination * by Auto Scaling when scaling in. *

* * @return Indicates whether newly launched instances are protected from * termination by Auto Scaling when scaling in. */ public Boolean getNewInstancesProtectedFromScaleIn() { return this.newInstancesProtectedFromScaleIn; } /** *

* Indicates whether newly launched instances are protected from termination * by Auto Scaling when scaling in. *

* * @param newInstancesProtectedFromScaleIn * Indicates whether newly launched instances are protected from * termination by Auto Scaling when scaling in. * @return Returns a reference to this object so that method calls can be * chained together. */ public AutoScalingGroup withNewInstancesProtectedFromScaleIn( Boolean newInstancesProtectedFromScaleIn) { setNewInstancesProtectedFromScaleIn(newInstancesProtectedFromScaleIn); return this; } /** *

* Indicates whether newly launched instances are protected from termination * by Auto Scaling when scaling in. *

* * @return Indicates whether newly launched instances are protected from * termination by Auto Scaling when scaling in. */ public Boolean isNewInstancesProtectedFromScaleIn() { return this.newInstancesProtectedFromScaleIn; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getAutoScalingGroupName() != null) sb.append("AutoScalingGroupName: " + getAutoScalingGroupName() + ","); if (getAutoScalingGroupARN() != null) sb.append("AutoScalingGroupARN: " + getAutoScalingGroupARN() + ","); if (getLaunchConfigurationName() != null) sb.append("LaunchConfigurationName: " + getLaunchConfigurationName() + ","); if (getMinSize() != null) sb.append("MinSize: " + getMinSize() + ","); if (getMaxSize() != null) sb.append("MaxSize: " + getMaxSize() + ","); if (getDesiredCapacity() != null) sb.append("DesiredCapacity: " + getDesiredCapacity() + ","); if (getDefaultCooldown() != null) sb.append("DefaultCooldown: " + getDefaultCooldown() + ","); if (getAvailabilityZones() != null) sb.append("AvailabilityZones: " + getAvailabilityZones() + ","); if (getLoadBalancerNames() != null) sb.append("LoadBalancerNames: " + getLoadBalancerNames() + ","); if (getHealthCheckType() != null) sb.append("HealthCheckType: " + getHealthCheckType() + ","); if (getHealthCheckGracePeriod() != null) sb.append("HealthCheckGracePeriod: " + getHealthCheckGracePeriod() + ","); if (getInstances() != null) sb.append("Instances: " + getInstances() + ","); if (getCreatedTime() != null) sb.append("CreatedTime: " + getCreatedTime() + ","); if (getSuspendedProcesses() != null) sb.append("SuspendedProcesses: " + getSuspendedProcesses() + ","); if (getPlacementGroup() != null) sb.append("PlacementGroup: " + getPlacementGroup() + ","); if (getVPCZoneIdentifier() != null) sb.append("VPCZoneIdentifier: " + getVPCZoneIdentifier() + ","); if (getEnabledMetrics() != null) sb.append("EnabledMetrics: " + getEnabledMetrics() + ","); if (getStatus() != null) sb.append("Status: " + getStatus() + ","); if (getTags() != null) sb.append("Tags: " + getTags() + ","); if (getTerminationPolicies() != null) sb.append("TerminationPolicies: " + getTerminationPolicies() + ","); if (getNewInstancesProtectedFromScaleIn() != null) sb.append("NewInstancesProtectedFromScaleIn: " + getNewInstancesProtectedFromScaleIn()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof AutoScalingGroup == false) return false; AutoScalingGroup other = (AutoScalingGroup) obj; if (other.getAutoScalingGroupName() == null ^ this.getAutoScalingGroupName() == null) return false; if (other.getAutoScalingGroupName() != null && other.getAutoScalingGroupName().equals( this.getAutoScalingGroupName()) == false) return false; if (other.getAutoScalingGroupARN() == null ^ this.getAutoScalingGroupARN() == null) return false; if (other.getAutoScalingGroupARN() != null && other.getAutoScalingGroupARN().equals( this.getAutoScalingGroupARN()) == false) return false; if (other.getLaunchConfigurationName() == null ^ this.getLaunchConfigurationName() == null) return false; if (other.getLaunchConfigurationName() != null && other.getLaunchConfigurationName().equals( this.getLaunchConfigurationName()) == false) return false; if (other.getMinSize() == null ^ this.getMinSize() == null) return false; if (other.getMinSize() != null && other.getMinSize().equals(this.getMinSize()) == false) return false; if (other.getMaxSize() == null ^ this.getMaxSize() == null) return false; if (other.getMaxSize() != null && other.getMaxSize().equals(this.getMaxSize()) == false) return false; if (other.getDesiredCapacity() == null ^ this.getDesiredCapacity() == null) return false; if (other.getDesiredCapacity() != null && other.getDesiredCapacity().equals(this.getDesiredCapacity()) == false) return false; if (other.getDefaultCooldown() == null ^ this.getDefaultCooldown() == null) return false; if (other.getDefaultCooldown() != null && other.getDefaultCooldown().equals(this.getDefaultCooldown()) == false) return false; if (other.getAvailabilityZones() == null ^ this.getAvailabilityZones() == null) return false; if (other.getAvailabilityZones() != null && other.getAvailabilityZones().equals( this.getAvailabilityZones()) == false) return false; if (other.getLoadBalancerNames() == null ^ this.getLoadBalancerNames() == null) return false; if (other.getLoadBalancerNames() != null && other.getLoadBalancerNames().equals( this.getLoadBalancerNames()) == false) return false; if (other.getHealthCheckType() == null ^ this.getHealthCheckType() == null) return false; if (other.getHealthCheckType() != null && other.getHealthCheckType().equals(this.getHealthCheckType()) == false) return false; if (other.getHealthCheckGracePeriod() == null ^ this.getHealthCheckGracePeriod() == null) return false; if (other.getHealthCheckGracePeriod() != null && other.getHealthCheckGracePeriod().equals( this.getHealthCheckGracePeriod()) == false) return false; if (other.getInstances() == null ^ this.getInstances() == null) return false; if (other.getInstances() != null && other.getInstances().equals(this.getInstances()) == false) return false; if (other.getCreatedTime() == null ^ this.getCreatedTime() == null) return false; if (other.getCreatedTime() != null && other.getCreatedTime().equals(this.getCreatedTime()) == false) return false; if (other.getSuspendedProcesses() == null ^ this.getSuspendedProcesses() == null) return false; if (other.getSuspendedProcesses() != null && other.getSuspendedProcesses().equals( this.getSuspendedProcesses()) == false) return false; if (other.getPlacementGroup() == null ^ this.getPlacementGroup() == null) return false; if (other.getPlacementGroup() != null && other.getPlacementGroup().equals(this.getPlacementGroup()) == false) return false; if (other.getVPCZoneIdentifier() == null ^ this.getVPCZoneIdentifier() == null) return false; if (other.getVPCZoneIdentifier() != null && other.getVPCZoneIdentifier().equals( this.getVPCZoneIdentifier()) == false) return false; if (other.getEnabledMetrics() == null ^ this.getEnabledMetrics() == null) return false; if (other.getEnabledMetrics() != null && other.getEnabledMetrics().equals(this.getEnabledMetrics()) == false) return false; if (other.getStatus() == null ^ this.getStatus() == null) return false; if (other.getStatus() != null && other.getStatus().equals(this.getStatus()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; if (other.getTerminationPolicies() == null ^ this.getTerminationPolicies() == null) return false; if (other.getTerminationPolicies() != null && other.getTerminationPolicies().equals( this.getTerminationPolicies()) == false) return false; if (other.getNewInstancesProtectedFromScaleIn() == null ^ this.getNewInstancesProtectedFromScaleIn() == null) return false; if (other.getNewInstancesProtectedFromScaleIn() != null && other.getNewInstancesProtectedFromScaleIn().equals( this.getNewInstancesProtectedFromScaleIn()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getAutoScalingGroupName() == null) ? 0 : getAutoScalingGroupName().hashCode()); hashCode = prime * hashCode + ((getAutoScalingGroupARN() == null) ? 0 : getAutoScalingGroupARN().hashCode()); hashCode = prime * hashCode + ((getLaunchConfigurationName() == null) ? 0 : getLaunchConfigurationName().hashCode()); hashCode = prime * hashCode + ((getMinSize() == null) ? 0 : getMinSize().hashCode()); hashCode = prime * hashCode + ((getMaxSize() == null) ? 0 : getMaxSize().hashCode()); hashCode = prime * hashCode + ((getDesiredCapacity() == null) ? 0 : getDesiredCapacity() .hashCode()); hashCode = prime * hashCode + ((getDefaultCooldown() == null) ? 0 : getDefaultCooldown() .hashCode()); hashCode = prime * hashCode + ((getAvailabilityZones() == null) ? 0 : getAvailabilityZones().hashCode()); hashCode = prime * hashCode + ((getLoadBalancerNames() == null) ? 0 : getLoadBalancerNames().hashCode()); hashCode = prime * hashCode + ((getHealthCheckType() == null) ? 0 : getHealthCheckType() .hashCode()); hashCode = prime * hashCode + ((getHealthCheckGracePeriod() == null) ? 0 : getHealthCheckGracePeriod().hashCode()); hashCode = prime * hashCode + ((getInstances() == null) ? 0 : getInstances().hashCode()); hashCode = prime * hashCode + ((getCreatedTime() == null) ? 0 : getCreatedTime().hashCode()); hashCode = prime * hashCode + ((getSuspendedProcesses() == null) ? 0 : getSuspendedProcesses().hashCode()); hashCode = prime * hashCode + ((getPlacementGroup() == null) ? 0 : getPlacementGroup() .hashCode()); hashCode = prime * hashCode + ((getVPCZoneIdentifier() == null) ? 0 : getVPCZoneIdentifier().hashCode()); hashCode = prime * hashCode + ((getEnabledMetrics() == null) ? 0 : getEnabledMetrics() .hashCode()); hashCode = prime * hashCode + ((getStatus() == null) ? 0 : getStatus().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getTerminationPolicies() == null) ? 0 : getTerminationPolicies().hashCode()); hashCode = prime * hashCode + ((getNewInstancesProtectedFromScaleIn() == null) ? 0 : getNewInstancesProtectedFromScaleIn().hashCode()); return hashCode; } @Override public AutoScalingGroup clone() { try { return (AutoScalingGroup) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy