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

com.amazonaws.services.opsworks.model.CloneStackRequest 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.opsworks.model;

import java.io.Serializable;
import com.amazonaws.AmazonWebServiceRequest;

/**
 * 
 */
public class CloneStackRequest extends AmazonWebServiceRequest implements
        Serializable, Cloneable {

    /**
     * 

* The source stack ID. *

*/ private String sourceStackId; /** *

* The cloned stack name. *

*/ private String name; /** *

* The cloned stack AWS region, such as "us-east-1". For more information * about AWS regions, see Regions * and Endpoints. *

*/ private String region; /** *

* The ID of the VPC that the cloned stack is to be launched into. It must * be in the specified region. All instances are launched into this VPC, and * you cannot change the ID later. *

*
    *
  • *

    * If your account supports EC2 Classic, the default value is no VPC. *

    *
  • *
  • *

    * If your account does not support EC2 Classic, the default value is the * default VPC for the specified region. *

    *
  • *
*

* If the VPC ID corresponds to a default VPC and you have specified either * the DefaultAvailabilityZone or the * DefaultSubnetId parameter only, AWS OpsWorks infers the * value of the other parameter. If you specify neither parameter, AWS * OpsWorks sets these parameters to the first valid Availability Zone for * the specified region and the corresponding default VPC subnet ID, * respectively. *

*

* If you specify a nondefault VPC ID, note the following: *

*
    *
  • *

    * It must belong to a VPC in your account that is in the specified region. *

    *
  • *
  • *

    * You must specify a value for DefaultSubnetId. *

    *
  • *
*

* For more information on how to use AWS OpsWorks with a VPC, see Running a Stack in a VPC. For more information on default VPC and * EC2 Classic, see Supported Platforms. *

*/ private String vpcId; /** *

* A list of stack attributes and values as key/value pairs to be added to * the cloned stack. *

*/ private com.amazonaws.internal.SdkInternalMap attributes; /** *

* The stack AWS Identity and Access Management (IAM) role, which allows AWS * OpsWorks to work with AWS resources on your behalf. You must set this * parameter to the Amazon Resource Name (ARN) for an existing IAM role. If * you create a stack by using the AWS OpsWorks console, it creates the role * for you. You can obtain an existing stack's IAM ARN programmatically by * calling DescribePermissions. For more information about IAM ARNs, * see Using Identifiers. *

* *

* You must set this parameter to a valid service role ARN or the action * will fail; there is no default value. You can specify the source stack's * service role ARN, if you prefer, but you must do so explicitly. *

*
*/ private String serviceRoleArn; /** *

* The Amazon Resource Name (ARN) of an IAM profile that is the default * profile for all of the stack's EC2 instances. For more information about * IAM ARNs, see Using Identifiers. *

*/ private String defaultInstanceProfileArn; /** *

* The stack's operating system, which must be set to one of the following. *

*
    *
  • *

    * A supported Linux operating system: An Amazon Linux version, such as * Amazon Linux 2016.03, Amazon Linux 2015.09, or * Amazon Linux 2015.03. *

    *
  • *
  • *

    * A supported Ubuntu operating system, such as * Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or * Ubuntu 12.04 LTS. *

    *
  • *
  • *

    * CentOS 7 *

    *
  • *
  • *

    * Red Hat Enterprise Linux 7 *

    *
  • *
  • *

    * Microsoft Windows Server 2012 R2 Base, * Microsoft Windows Server 2012 R2 with SQL Server Express, * Microsoft Windows Server 2012 R2 with SQL Server Standard, * or Microsoft Windows Server 2012 R2 with SQL Server Web. *

    *
  • *
  • *

    * A custom AMI: Custom. You specify the custom AMI you want to * use when you create instances. For more information on how to use custom * AMIs with OpsWorks, see Using Custom AMIs. *

    *
  • *
*

* The default option is the parent stack's operating system. For more * information on the supported operating systems, see AWS OpsWorks Operating Systems. *

* *

* You can specify a different Linux operating system for the cloned stack, * but you cannot change from Linux to Windows or Windows to Linux. *

*
*/ private String defaultOs; /** *

* The stack's host name theme, with spaces are replaced by underscores. The * theme is used to generate host names for the stack's instances. By * default, HostnameTheme is set to * Layer_Dependent, which creates host names by appending * integers to the layer's short name. The other themes are: *

*
    *
  • *

    * Baked_Goods *

    *
  • *
  • *

    * Clouds *

    *
  • *
  • *

    * Europe_Cities *

    *
  • *
  • *

    * Fruits *

    *
  • *
  • *

    * Greek_Deities *

    *
  • *
  • *

    * Legendary_creatures_from_Japan *

    *
  • *
  • *

    * Planets_and_Moons *

    *
  • *
  • *

    * Roman_Deities *

    *
  • *
  • *

    * Scottish_Islands *

    *
  • *
  • *

    * US_Cities *

    *
  • *
  • *

    * Wild_Cats *

    *
  • *
*

* To obtain a generated host name, call GetHostNameSuggestion, * which returns a host name based on the current theme. *

*/ private String hostnameTheme; /** *

* The cloned stack's default Availability Zone, which must be in the * specified region. For more information, see Regions * and Endpoints. If you also specify a value for * DefaultSubnetId, the subnet must be in the same zone. For * more information, see the VpcId parameter description. *

*/ private String defaultAvailabilityZone; /** *

* The stack's default VPC subnet ID. This parameter is required if you * specify a value for the VpcId parameter. All instances are * launched into this subnet unless you specify otherwise when you create * the instance. If you also specify a value for * DefaultAvailabilityZone, the subnet must be in that zone. * For information on default values and when this parameter is required, * see the VpcId parameter description. *

*/ private String defaultSubnetId; /** *

* A string that contains user-defined, custom JSON. It is used to override * the corresponding default stack configuration JSON values. The string * should be in the following format and must escape characters such as '"': *

*

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}" *

*

* For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes *

*/ private String customJson; /** *

* The configuration manager. When you clone a stack we recommend that you * use the configuration manager to specify the Chef version: 12, 11.10, or * 11.4 for Linux stacks, or 12.2 for Windows stacks. The default value for * Linux stacks is currently 12. *

*/ private StackConfigurationManager configurationManager; /** *

* A ChefConfiguration object that specifies whether to enable * Berkshelf and the Berkshelf version on Chef 11.10 stacks. For more * information, see Create a New Stack. *

*/ private ChefConfiguration chefConfiguration; /** *

* Whether to use custom cookbooks. *

*/ private Boolean useCustomCookbooks; /** *

* Whether to associate the AWS OpsWorks built-in security groups with the * stack's layers. *

*

* AWS OpsWorks provides a standard set of built-in security groups, one for * each layer, which are associated with layers by default. With * UseOpsworksSecurityGroups you can instead provide your own * custom security groups. UseOpsworksSecurityGroups has the * following settings: *

*
    *
  • *

    * True - AWS OpsWorks automatically associates the appropriate built-in * security group with each layer (default setting). You can associate * additional security groups with a layer after you create it but you * cannot delete the built-in security group. *

    *
  • *
  • *

    * False - AWS OpsWorks does not associate built-in security groups with * layers. You must create appropriate Amazon Elastic Compute Cloud (Amazon * EC2) security groups and associate a security group with each layer that * you create. However, you can still manually associate a built-in security * group with a layer on creation; custom security groups are required only * for those layers that need custom settings. *

    *
  • *
*

* For more information, see Create a New Stack. *

*/ private Boolean useOpsworksSecurityGroups; private Source customCookbooksSource; /** *

* A default Amazon EC2 key pair name. The default value is none. If you * specify a key pair name, AWS OpsWorks installs the public key on the * instance and you can use the private key with an SSH client to log in to * the instance. For more information, see Using SSH to Communicate with an Instance and Managing SSH Access. You can override this setting by specifying a * different key pair, or no key pair, when you create an instance. *

*/ private String defaultSshKeyName; /** *

* Whether to clone the source stack's permissions. *

*/ private Boolean clonePermissions; /** *

* A list of source stack app IDs to be included in the cloned stack. *

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

* The default root device type. This value is used by default for all * instances in the cloned stack, but you can override it when you create an * instance. For more information, see Storage for the Root Device. *

*/ private String defaultRootDeviceType; /** *

* The default AWS OpsWorks agent version. You have the following options: *

*
    *
  • *

    * Auto-update - Set this parameter to LATEST. AWS OpsWorks * automatically installs new agent versions on the stack's instances as * soon as they are available. *

    *
  • *
  • *

    * Fixed version - Set this parameter to your preferred agent version. To * update the agent version, you must edit the stack configuration and * specify a new version. AWS OpsWorks then automatically installs that * version on the stack's instances. *

    *
  • *
*

* The default setting is LATEST. To specify an agent version, * you must use the complete version number, not the abbreviated number * shown on the console. For a list of available agent version numbers, call * DescribeAgentVersions. *

* *

* You can also specify an agent version when you create or update an * instance, which overrides the stack's default setting. *

*
*/ private String agentVersion; /** *

* The source stack ID. *

* * @param sourceStackId * The source stack ID. */ public void setSourceStackId(String sourceStackId) { this.sourceStackId = sourceStackId; } /** *

* The source stack ID. *

* * @return The source stack ID. */ public String getSourceStackId() { return this.sourceStackId; } /** *

* The source stack ID. *

* * @param sourceStackId * The source stack ID. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withSourceStackId(String sourceStackId) { setSourceStackId(sourceStackId); return this; } /** *

* The cloned stack name. *

* * @param name * The cloned stack name. */ public void setName(String name) { this.name = name; } /** *

* The cloned stack name. *

* * @return The cloned stack name. */ public String getName() { return this.name; } /** *

* The cloned stack name. *

* * @param name * The cloned stack name. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withName(String name) { setName(name); return this; } /** *

* The cloned stack AWS region, such as "us-east-1". For more information * about AWS regions, see Regions * and Endpoints. *

* * @param region * The cloned stack AWS region, such as "us-east-1". For more * information about AWS regions, see Regions and Endpoints. */ public void setRegion(String region) { this.region = region; } /** *

* The cloned stack AWS region, such as "us-east-1". For more information * about AWS regions, see Regions * and Endpoints. *

* * @return The cloned stack AWS region, such as "us-east-1". For more * information about AWS regions, see Regions and Endpoints. */ public String getRegion() { return this.region; } /** *

* The cloned stack AWS region, such as "us-east-1". For more information * about AWS regions, see Regions * and Endpoints. *

* * @param region * The cloned stack AWS region, such as "us-east-1". For more * information about AWS regions, see Regions and Endpoints. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withRegion(String region) { setRegion(region); return this; } /** *

* The ID of the VPC that the cloned stack is to be launched into. It must * be in the specified region. All instances are launched into this VPC, and * you cannot change the ID later. *

*
    *
  • *

    * If your account supports EC2 Classic, the default value is no VPC. *

    *
  • *
  • *

    * If your account does not support EC2 Classic, the default value is the * default VPC for the specified region. *

    *
  • *
*

* If the VPC ID corresponds to a default VPC and you have specified either * the DefaultAvailabilityZone or the * DefaultSubnetId parameter only, AWS OpsWorks infers the * value of the other parameter. If you specify neither parameter, AWS * OpsWorks sets these parameters to the first valid Availability Zone for * the specified region and the corresponding default VPC subnet ID, * respectively. *

*

* If you specify a nondefault VPC ID, note the following: *

*
    *
  • *

    * It must belong to a VPC in your account that is in the specified region. *

    *
  • *
  • *

    * You must specify a value for DefaultSubnetId. *

    *
  • *
*

* For more information on how to use AWS OpsWorks with a VPC, see Running a Stack in a VPC. For more information on default VPC and * EC2 Classic, see Supported Platforms. *

* * @param vpcId * The ID of the VPC that the cloned stack is to be launched into. It * must be in the specified region. All instances are launched into * this VPC, and you cannot change the ID later.

*
    *
  • *

    * If your account supports EC2 Classic, the default value is no VPC. *

    *
  • *
  • *

    * If your account does not support EC2 Classic, the default value is * the default VPC for the specified region. *

    *
  • *
*

* If the VPC ID corresponds to a default VPC and you have specified * either the DefaultAvailabilityZone or the * DefaultSubnetId parameter only, AWS OpsWorks infers * the value of the other parameter. If you specify neither * parameter, AWS OpsWorks sets these parameters to the first valid * Availability Zone for the specified region and the corresponding * default VPC subnet ID, respectively. *

*

* If you specify a nondefault VPC ID, note the following: *

*
    *
  • *

    * It must belong to a VPC in your account that is in the specified * region. *

    *
  • *
  • *

    * You must specify a value for DefaultSubnetId. *

    *
  • *
*

* For more information on how to use AWS OpsWorks with a VPC, see Running a Stack in a VPC. For more information on default VPC * and EC2 Classic, see Supported Platforms. */ public void setVpcId(String vpcId) { this.vpcId = vpcId; } /** *

* The ID of the VPC that the cloned stack is to be launched into. It must * be in the specified region. All instances are launched into this VPC, and * you cannot change the ID later. *

*
    *
  • *

    * If your account supports EC2 Classic, the default value is no VPC. *

    *
  • *
  • *

    * If your account does not support EC2 Classic, the default value is the * default VPC for the specified region. *

    *
  • *
*

* If the VPC ID corresponds to a default VPC and you have specified either * the DefaultAvailabilityZone or the * DefaultSubnetId parameter only, AWS OpsWorks infers the * value of the other parameter. If you specify neither parameter, AWS * OpsWorks sets these parameters to the first valid Availability Zone for * the specified region and the corresponding default VPC subnet ID, * respectively. *

*

* If you specify a nondefault VPC ID, note the following: *

*
    *
  • *

    * It must belong to a VPC in your account that is in the specified region. *

    *
  • *
  • *

    * You must specify a value for DefaultSubnetId. *

    *
  • *
*

* For more information on how to use AWS OpsWorks with a VPC, see Running a Stack in a VPC. For more information on default VPC and * EC2 Classic, see Supported Platforms. *

* * @return The ID of the VPC that the cloned stack is to be launched into. * It must be in the specified region. All instances are launched * into this VPC, and you cannot change the ID later.

*
    *
  • *

    * If your account supports EC2 Classic, the default value is no * VPC. *

    *
  • *
  • *

    * If your account does not support EC2 Classic, the default value * is the default VPC for the specified region. *

    *
  • *
*

* If the VPC ID corresponds to a default VPC and you have specified * either the DefaultAvailabilityZone or the * DefaultSubnetId parameter only, AWS OpsWorks infers * the value of the other parameter. If you specify neither * parameter, AWS OpsWorks sets these parameters to the first valid * Availability Zone for the specified region and the corresponding * default VPC subnet ID, respectively. *

*

* If you specify a nondefault VPC ID, note the following: *

*
    *
  • *

    * It must belong to a VPC in your account that is in the specified * region. *

    *
  • *
  • *

    * You must specify a value for DefaultSubnetId. *

    *
  • *
*

* For more information on how to use AWS OpsWorks with a VPC, see * Running a Stack in a VPC. For more information on default * VPC and EC2 Classic, see Supported Platforms. */ public String getVpcId() { return this.vpcId; } /** *

* The ID of the VPC that the cloned stack is to be launched into. It must * be in the specified region. All instances are launched into this VPC, and * you cannot change the ID later. *

*
    *
  • *

    * If your account supports EC2 Classic, the default value is no VPC. *

    *
  • *
  • *

    * If your account does not support EC2 Classic, the default value is the * default VPC for the specified region. *

    *
  • *
*

* If the VPC ID corresponds to a default VPC and you have specified either * the DefaultAvailabilityZone or the * DefaultSubnetId parameter only, AWS OpsWorks infers the * value of the other parameter. If you specify neither parameter, AWS * OpsWorks sets these parameters to the first valid Availability Zone for * the specified region and the corresponding default VPC subnet ID, * respectively. *

*

* If you specify a nondefault VPC ID, note the following: *

*
    *
  • *

    * It must belong to a VPC in your account that is in the specified region. *

    *
  • *
  • *

    * You must specify a value for DefaultSubnetId. *

    *
  • *
*

* For more information on how to use AWS OpsWorks with a VPC, see Running a Stack in a VPC. For more information on default VPC and * EC2 Classic, see Supported Platforms. *

* * @param vpcId * The ID of the VPC that the cloned stack is to be launched into. It * must be in the specified region. All instances are launched into * this VPC, and you cannot change the ID later.

*
    *
  • *

    * If your account supports EC2 Classic, the default value is no VPC. *

    *
  • *
  • *

    * If your account does not support EC2 Classic, the default value is * the default VPC for the specified region. *

    *
  • *
*

* If the VPC ID corresponds to a default VPC and you have specified * either the DefaultAvailabilityZone or the * DefaultSubnetId parameter only, AWS OpsWorks infers * the value of the other parameter. If you specify neither * parameter, AWS OpsWorks sets these parameters to the first valid * Availability Zone for the specified region and the corresponding * default VPC subnet ID, respectively. *

*

* If you specify a nondefault VPC ID, note the following: *

*
    *
  • *

    * It must belong to a VPC in your account that is in the specified * region. *

    *
  • *
  • *

    * You must specify a value for DefaultSubnetId. *

    *
  • *
*

* For more information on how to use AWS OpsWorks with a VPC, see Running a Stack in a VPC. For more information on default VPC * and EC2 Classic, see Supported Platforms. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withVpcId(String vpcId) { setVpcId(vpcId); return this; } /** *

* A list of stack attributes and values as key/value pairs to be added to * the cloned stack. *

* * @return A list of stack attributes and values as key/value pairs to be * added to the cloned stack. */ public java.util.Map getAttributes() { if (attributes == null) { attributes = new com.amazonaws.internal.SdkInternalMap(); } return attributes; } /** *

* A list of stack attributes and values as key/value pairs to be added to * the cloned stack. *

* * @param attributes * A list of stack attributes and values as key/value pairs to be * added to the cloned stack. */ public void setAttributes(java.util.Map attributes) { this.attributes = attributes == null ? null : new com.amazonaws.internal.SdkInternalMap( attributes); } /** *

* A list of stack attributes and values as key/value pairs to be added to * the cloned stack. *

* * @param attributes * A list of stack attributes and values as key/value pairs to be * added to the cloned stack. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withAttributes( java.util.Map attributes) { setAttributes(attributes); return this; } public CloneStackRequest addAttributesEntry(String key, String value) { if (null == this.attributes) { this.attributes = new com.amazonaws.internal.SdkInternalMap(); } if (this.attributes.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.attributes.put(key, value); return this; } /** * Removes all the entries added into Attributes. <p> Returns a reference * to this object so that method calls can be chained together. */ public CloneStackRequest clearAttributesEntries() { this.attributes = null; return this; } /** *

* The stack AWS Identity and Access Management (IAM) role, which allows AWS * OpsWorks to work with AWS resources on your behalf. You must set this * parameter to the Amazon Resource Name (ARN) for an existing IAM role. If * you create a stack by using the AWS OpsWorks console, it creates the role * for you. You can obtain an existing stack's IAM ARN programmatically by * calling DescribePermissions. For more information about IAM ARNs, * see Using Identifiers. *

* *

* You must set this parameter to a valid service role ARN or the action * will fail; there is no default value. You can specify the source stack's * service role ARN, if you prefer, but you must do so explicitly. *

*
* * @param serviceRoleArn * The stack AWS Identity and Access Management (IAM) role, which * allows AWS OpsWorks to work with AWS resources on your behalf. You * must set this parameter to the Amazon Resource Name (ARN) for an * existing IAM role. If you create a stack by using the AWS OpsWorks * console, it creates the role for you. You can obtain an existing * stack's IAM ARN programmatically by calling * DescribePermissions. For more information about IAM ARNs, * see Using Identifiers.

*

* You must set this parameter to a valid service role ARN or the * action will fail; there is no default value. You can specify the * source stack's service role ARN, if you prefer, but you must do so * explicitly. *

*/ public void setServiceRoleArn(String serviceRoleArn) { this.serviceRoleArn = serviceRoleArn; } /** *

* The stack AWS Identity and Access Management (IAM) role, which allows AWS * OpsWorks to work with AWS resources on your behalf. You must set this * parameter to the Amazon Resource Name (ARN) for an existing IAM role. If * you create a stack by using the AWS OpsWorks console, it creates the role * for you. You can obtain an existing stack's IAM ARN programmatically by * calling DescribePermissions. For more information about IAM ARNs, * see Using Identifiers. *

* *

* You must set this parameter to a valid service role ARN or the action * will fail; there is no default value. You can specify the source stack's * service role ARN, if you prefer, but you must do so explicitly. *

*
* * @return The stack AWS Identity and Access Management (IAM) role, which * allows AWS OpsWorks to work with AWS resources on your behalf. * You must set this parameter to the Amazon Resource Name (ARN) for * an existing IAM role. If you create a stack by using the AWS * OpsWorks console, it creates the role for you. You can obtain an * existing stack's IAM ARN programmatically by calling * DescribePermissions. For more information about IAM ARNs, * see Using Identifiers.

*

* You must set this parameter to a valid service role ARN or the * action will fail; there is no default value. You can specify the * source stack's service role ARN, if you prefer, but you must do * so explicitly. *

*/ public String getServiceRoleArn() { return this.serviceRoleArn; } /** *

* The stack AWS Identity and Access Management (IAM) role, which allows AWS * OpsWorks to work with AWS resources on your behalf. You must set this * parameter to the Amazon Resource Name (ARN) for an existing IAM role. If * you create a stack by using the AWS OpsWorks console, it creates the role * for you. You can obtain an existing stack's IAM ARN programmatically by * calling DescribePermissions. For more information about IAM ARNs, * see Using Identifiers. *

* *

* You must set this parameter to a valid service role ARN or the action * will fail; there is no default value. You can specify the source stack's * service role ARN, if you prefer, but you must do so explicitly. *

*
* * @param serviceRoleArn * The stack AWS Identity and Access Management (IAM) role, which * allows AWS OpsWorks to work with AWS resources on your behalf. You * must set this parameter to the Amazon Resource Name (ARN) for an * existing IAM role. If you create a stack by using the AWS OpsWorks * console, it creates the role for you. You can obtain an existing * stack's IAM ARN programmatically by calling * DescribePermissions. For more information about IAM ARNs, * see Using Identifiers.

*

* You must set this parameter to a valid service role ARN or the * action will fail; there is no default value. You can specify the * source stack's service role ARN, if you prefer, but you must do so * explicitly. *

* @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withServiceRoleArn(String serviceRoleArn) { setServiceRoleArn(serviceRoleArn); return this; } /** *

* The Amazon Resource Name (ARN) of an IAM profile that is the default * profile for all of the stack's EC2 instances. For more information about * IAM ARNs, see Using Identifiers. *

* * @param defaultInstanceProfileArn * The Amazon Resource Name (ARN) of an IAM profile that is the * default profile for all of the stack's EC2 instances. For more * information about IAM ARNs, see Using Identifiers. */ public void setDefaultInstanceProfileArn(String defaultInstanceProfileArn) { this.defaultInstanceProfileArn = defaultInstanceProfileArn; } /** *

* The Amazon Resource Name (ARN) of an IAM profile that is the default * profile for all of the stack's EC2 instances. For more information about * IAM ARNs, see Using Identifiers. *

* * @return The Amazon Resource Name (ARN) of an IAM profile that is the * default profile for all of the stack's EC2 instances. For more * information about IAM ARNs, see Using Identifiers. */ public String getDefaultInstanceProfileArn() { return this.defaultInstanceProfileArn; } /** *

* The Amazon Resource Name (ARN) of an IAM profile that is the default * profile for all of the stack's EC2 instances. For more information about * IAM ARNs, see Using Identifiers. *

* * @param defaultInstanceProfileArn * The Amazon Resource Name (ARN) of an IAM profile that is the * default profile for all of the stack's EC2 instances. For more * information about IAM ARNs, see Using Identifiers. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withDefaultInstanceProfileArn( String defaultInstanceProfileArn) { setDefaultInstanceProfileArn(defaultInstanceProfileArn); return this; } /** *

* The stack's operating system, which must be set to one of the following. *

*
    *
  • *

    * A supported Linux operating system: An Amazon Linux version, such as * Amazon Linux 2016.03, Amazon Linux 2015.09, or * Amazon Linux 2015.03. *

    *
  • *
  • *

    * A supported Ubuntu operating system, such as * Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or * Ubuntu 12.04 LTS. *

    *
  • *
  • *

    * CentOS 7 *

    *
  • *
  • *

    * Red Hat Enterprise Linux 7 *

    *
  • *
  • *

    * Microsoft Windows Server 2012 R2 Base, * Microsoft Windows Server 2012 R2 with SQL Server Express, * Microsoft Windows Server 2012 R2 with SQL Server Standard, * or Microsoft Windows Server 2012 R2 with SQL Server Web. *

    *
  • *
  • *

    * A custom AMI: Custom. You specify the custom AMI you want to * use when you create instances. For more information on how to use custom * AMIs with OpsWorks, see Using Custom AMIs. *

    *
  • *
*

* The default option is the parent stack's operating system. For more * information on the supported operating systems, see AWS OpsWorks Operating Systems. *

* *

* You can specify a different Linux operating system for the cloned stack, * but you cannot change from Linux to Windows or Windows to Linux. *

*
* * @param defaultOs * The stack's operating system, which must be set to one of the * following.

*
    *
  • *

    * A supported Linux operating system: An Amazon Linux version, such * as Amazon Linux 2016.03, * Amazon Linux 2015.09, or * Amazon Linux 2015.03. *

    *
  • *
  • *

    * A supported Ubuntu operating system, such as * Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or * Ubuntu 12.04 LTS. *

    *
  • *
  • *

    * CentOS 7 *

    *
  • *
  • *

    * Red Hat Enterprise Linux 7 *

    *
  • *
  • *

    * Microsoft Windows Server 2012 R2 Base, * Microsoft Windows Server 2012 R2 with SQL Server Express, * Microsoft Windows Server 2012 R2 with SQL Server Standard * , or * Microsoft Windows Server 2012 R2 with SQL Server Web. *

    *
  • *
  • *

    * A custom AMI: Custom. You specify the custom AMI you * want to use when you create instances. For more information on how * to use custom AMIs with OpsWorks, see Using Custom AMIs. *

    *
  • *
*

* The default option is the parent stack's operating system. For * more information on the supported operating systems, see AWS OpsWorks Operating Systems. *

* *

* You can specify a different Linux operating system for the cloned * stack, but you cannot change from Linux to Windows or Windows to * Linux. *

*/ public void setDefaultOs(String defaultOs) { this.defaultOs = defaultOs; } /** *

* The stack's operating system, which must be set to one of the following. *

*
    *
  • *

    * A supported Linux operating system: An Amazon Linux version, such as * Amazon Linux 2016.03, Amazon Linux 2015.09, or * Amazon Linux 2015.03. *

    *
  • *
  • *

    * A supported Ubuntu operating system, such as * Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or * Ubuntu 12.04 LTS. *

    *
  • *
  • *

    * CentOS 7 *

    *
  • *
  • *

    * Red Hat Enterprise Linux 7 *

    *
  • *
  • *

    * Microsoft Windows Server 2012 R2 Base, * Microsoft Windows Server 2012 R2 with SQL Server Express, * Microsoft Windows Server 2012 R2 with SQL Server Standard, * or Microsoft Windows Server 2012 R2 with SQL Server Web. *

    *
  • *
  • *

    * A custom AMI: Custom. You specify the custom AMI you want to * use when you create instances. For more information on how to use custom * AMIs with OpsWorks, see Using Custom AMIs. *

    *
  • *
*

* The default option is the parent stack's operating system. For more * information on the supported operating systems, see AWS OpsWorks Operating Systems. *

* *

* You can specify a different Linux operating system for the cloned stack, * but you cannot change from Linux to Windows or Windows to Linux. *

*
* * @return The stack's operating system, which must be set to one of the * following.

*
    *
  • *

    * A supported Linux operating system: An Amazon Linux version, such * as Amazon Linux 2016.03, * Amazon Linux 2015.09, or * Amazon Linux 2015.03. *

    *
  • *
  • *

    * A supported Ubuntu operating system, such as * Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or * Ubuntu 12.04 LTS. *

    *
  • *
  • *

    * CentOS 7 *

    *
  • *
  • *

    * Red Hat Enterprise Linux 7 *

    *
  • *
  • *

    * Microsoft Windows Server 2012 R2 Base, * Microsoft Windows Server 2012 R2 with SQL Server Express, * Microsoft Windows Server 2012 R2 with SQL Server Standard * , or * Microsoft Windows Server 2012 R2 with SQL Server Web * . *

    *
  • *
  • *

    * A custom AMI: Custom. You specify the custom AMI you * want to use when you create instances. For more information on * how to use custom AMIs with OpsWorks, see Using Custom AMIs. *

    *
  • *
*

* The default option is the parent stack's operating system. For * more information on the supported operating systems, see AWS OpsWorks Operating Systems. *

* *

* You can specify a different Linux operating system for the cloned * stack, but you cannot change from Linux to Windows or Windows to * Linux. *

*/ public String getDefaultOs() { return this.defaultOs; } /** *

* The stack's operating system, which must be set to one of the following. *

*
    *
  • *

    * A supported Linux operating system: An Amazon Linux version, such as * Amazon Linux 2016.03, Amazon Linux 2015.09, or * Amazon Linux 2015.03. *

    *
  • *
  • *

    * A supported Ubuntu operating system, such as * Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or * Ubuntu 12.04 LTS. *

    *
  • *
  • *

    * CentOS 7 *

    *
  • *
  • *

    * Red Hat Enterprise Linux 7 *

    *
  • *
  • *

    * Microsoft Windows Server 2012 R2 Base, * Microsoft Windows Server 2012 R2 with SQL Server Express, * Microsoft Windows Server 2012 R2 with SQL Server Standard, * or Microsoft Windows Server 2012 R2 with SQL Server Web. *

    *
  • *
  • *

    * A custom AMI: Custom. You specify the custom AMI you want to * use when you create instances. For more information on how to use custom * AMIs with OpsWorks, see Using Custom AMIs. *

    *
  • *
*

* The default option is the parent stack's operating system. For more * information on the supported operating systems, see AWS OpsWorks Operating Systems. *

* *

* You can specify a different Linux operating system for the cloned stack, * but you cannot change from Linux to Windows or Windows to Linux. *

*
* * @param defaultOs * The stack's operating system, which must be set to one of the * following.

*
    *
  • *

    * A supported Linux operating system: An Amazon Linux version, such * as Amazon Linux 2016.03, * Amazon Linux 2015.09, or * Amazon Linux 2015.03. *

    *
  • *
  • *

    * A supported Ubuntu operating system, such as * Ubuntu 16.04 LTS, Ubuntu 14.04 LTS, or * Ubuntu 12.04 LTS. *

    *
  • *
  • *

    * CentOS 7 *

    *
  • *
  • *

    * Red Hat Enterprise Linux 7 *

    *
  • *
  • *

    * Microsoft Windows Server 2012 R2 Base, * Microsoft Windows Server 2012 R2 with SQL Server Express, * Microsoft Windows Server 2012 R2 with SQL Server Standard * , or * Microsoft Windows Server 2012 R2 with SQL Server Web. *

    *
  • *
  • *

    * A custom AMI: Custom. You specify the custom AMI you * want to use when you create instances. For more information on how * to use custom AMIs with OpsWorks, see Using Custom AMIs. *

    *
  • *
*

* The default option is the parent stack's operating system. For * more information on the supported operating systems, see AWS OpsWorks Operating Systems. *

* *

* You can specify a different Linux operating system for the cloned * stack, but you cannot change from Linux to Windows or Windows to * Linux. *

* @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withDefaultOs(String defaultOs) { setDefaultOs(defaultOs); return this; } /** *

* The stack's host name theme, with spaces are replaced by underscores. The * theme is used to generate host names for the stack's instances. By * default, HostnameTheme is set to * Layer_Dependent, which creates host names by appending * integers to the layer's short name. The other themes are: *

*
    *
  • *

    * Baked_Goods *

    *
  • *
  • *

    * Clouds *

    *
  • *
  • *

    * Europe_Cities *

    *
  • *
  • *

    * Fruits *

    *
  • *
  • *

    * Greek_Deities *

    *
  • *
  • *

    * Legendary_creatures_from_Japan *

    *
  • *
  • *

    * Planets_and_Moons *

    *
  • *
  • *

    * Roman_Deities *

    *
  • *
  • *

    * Scottish_Islands *

    *
  • *
  • *

    * US_Cities *

    *
  • *
  • *

    * Wild_Cats *

    *
  • *
*

* To obtain a generated host name, call GetHostNameSuggestion, * which returns a host name based on the current theme. *

* * @param hostnameTheme * The stack's host name theme, with spaces are replaced by * underscores. The theme is used to generate host names for the * stack's instances. By default, HostnameTheme is set * to Layer_Dependent, which creates host names by * appending integers to the layer's short name. The other themes * are:

*
    *
  • *

    * Baked_Goods *

    *
  • *
  • *

    * Clouds *

    *
  • *
  • *

    * Europe_Cities *

    *
  • *
  • *

    * Fruits *

    *
  • *
  • *

    * Greek_Deities *

    *
  • *
  • *

    * Legendary_creatures_from_Japan *

    *
  • *
  • *

    * Planets_and_Moons *

    *
  • *
  • *

    * Roman_Deities *

    *
  • *
  • *

    * Scottish_Islands *

    *
  • *
  • *

    * US_Cities *

    *
  • *
  • *

    * Wild_Cats *

    *
  • *
*

* To obtain a generated host name, call * GetHostNameSuggestion, which returns a host name * based on the current theme. */ public void setHostnameTheme(String hostnameTheme) { this.hostnameTheme = hostnameTheme; } /** *

* The stack's host name theme, with spaces are replaced by underscores. The * theme is used to generate host names for the stack's instances. By * default, HostnameTheme is set to * Layer_Dependent, which creates host names by appending * integers to the layer's short name. The other themes are: *

*
    *
  • *

    * Baked_Goods *

    *
  • *
  • *

    * Clouds *

    *
  • *
  • *

    * Europe_Cities *

    *
  • *
  • *

    * Fruits *

    *
  • *
  • *

    * Greek_Deities *

    *
  • *
  • *

    * Legendary_creatures_from_Japan *

    *
  • *
  • *

    * Planets_and_Moons *

    *
  • *
  • *

    * Roman_Deities *

    *
  • *
  • *

    * Scottish_Islands *

    *
  • *
  • *

    * US_Cities *

    *
  • *
  • *

    * Wild_Cats *

    *
  • *
*

* To obtain a generated host name, call GetHostNameSuggestion, * which returns a host name based on the current theme. *

* * @return The stack's host name theme, with spaces are replaced by * underscores. The theme is used to generate host names for the * stack's instances. By default, HostnameTheme is set * to Layer_Dependent, which creates host names by * appending integers to the layer's short name. The other themes * are:

*
    *
  • *

    * Baked_Goods *

    *
  • *
  • *

    * Clouds *

    *
  • *
  • *

    * Europe_Cities *

    *
  • *
  • *

    * Fruits *

    *
  • *
  • *

    * Greek_Deities *

    *
  • *
  • *

    * Legendary_creatures_from_Japan *

    *
  • *
  • *

    * Planets_and_Moons *

    *
  • *
  • *

    * Roman_Deities *

    *
  • *
  • *

    * Scottish_Islands *

    *
  • *
  • *

    * US_Cities *

    *
  • *
  • *

    * Wild_Cats *

    *
  • *
*

* To obtain a generated host name, call * GetHostNameSuggestion, which returns a host name * based on the current theme. */ public String getHostnameTheme() { return this.hostnameTheme; } /** *

* The stack's host name theme, with spaces are replaced by underscores. The * theme is used to generate host names for the stack's instances. By * default, HostnameTheme is set to * Layer_Dependent, which creates host names by appending * integers to the layer's short name. The other themes are: *

*
    *
  • *

    * Baked_Goods *

    *
  • *
  • *

    * Clouds *

    *
  • *
  • *

    * Europe_Cities *

    *
  • *
  • *

    * Fruits *

    *
  • *
  • *

    * Greek_Deities *

    *
  • *
  • *

    * Legendary_creatures_from_Japan *

    *
  • *
  • *

    * Planets_and_Moons *

    *
  • *
  • *

    * Roman_Deities *

    *
  • *
  • *

    * Scottish_Islands *

    *
  • *
  • *

    * US_Cities *

    *
  • *
  • *

    * Wild_Cats *

    *
  • *
*

* To obtain a generated host name, call GetHostNameSuggestion, * which returns a host name based on the current theme. *

* * @param hostnameTheme * The stack's host name theme, with spaces are replaced by * underscores. The theme is used to generate host names for the * stack's instances. By default, HostnameTheme is set * to Layer_Dependent, which creates host names by * appending integers to the layer's short name. The other themes * are:

*
    *
  • *

    * Baked_Goods *

    *
  • *
  • *

    * Clouds *

    *
  • *
  • *

    * Europe_Cities *

    *
  • *
  • *

    * Fruits *

    *
  • *
  • *

    * Greek_Deities *

    *
  • *
  • *

    * Legendary_creatures_from_Japan *

    *
  • *
  • *

    * Planets_and_Moons *

    *
  • *
  • *

    * Roman_Deities *

    *
  • *
  • *

    * Scottish_Islands *

    *
  • *
  • *

    * US_Cities *

    *
  • *
  • *

    * Wild_Cats *

    *
  • *
*

* To obtain a generated host name, call * GetHostNameSuggestion, which returns a host name * based on the current theme. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withHostnameTheme(String hostnameTheme) { setHostnameTheme(hostnameTheme); return this; } /** *

* The cloned stack's default Availability Zone, which must be in the * specified region. For more information, see Regions * and Endpoints. If you also specify a value for * DefaultSubnetId, the subnet must be in the same zone. For * more information, see the VpcId parameter description. *

* * @param defaultAvailabilityZone * The cloned stack's default Availability Zone, which must be in the * specified region. For more information, see Regions and Endpoints. If you also specify a value for * DefaultSubnetId, the subnet must be in the same zone. * For more information, see the VpcId parameter * description. */ public void setDefaultAvailabilityZone(String defaultAvailabilityZone) { this.defaultAvailabilityZone = defaultAvailabilityZone; } /** *

* The cloned stack's default Availability Zone, which must be in the * specified region. For more information, see Regions * and Endpoints. If you also specify a value for * DefaultSubnetId, the subnet must be in the same zone. For * more information, see the VpcId parameter description. *

* * @return The cloned stack's default Availability Zone, which must be in * the specified region. For more information, see Regions and Endpoints. If you also specify a value for * DefaultSubnetId, the subnet must be in the same * zone. For more information, see the VpcId parameter * description. */ public String getDefaultAvailabilityZone() { return this.defaultAvailabilityZone; } /** *

* The cloned stack's default Availability Zone, which must be in the * specified region. For more information, see Regions * and Endpoints. If you also specify a value for * DefaultSubnetId, the subnet must be in the same zone. For * more information, see the VpcId parameter description. *

* * @param defaultAvailabilityZone * The cloned stack's default Availability Zone, which must be in the * specified region. For more information, see Regions and Endpoints. If you also specify a value for * DefaultSubnetId, the subnet must be in the same zone. * For more information, see the VpcId parameter * description. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withDefaultAvailabilityZone( String defaultAvailabilityZone) { setDefaultAvailabilityZone(defaultAvailabilityZone); return this; } /** *

* The stack's default VPC subnet ID. This parameter is required if you * specify a value for the VpcId parameter. All instances are * launched into this subnet unless you specify otherwise when you create * the instance. If you also specify a value for * DefaultAvailabilityZone, the subnet must be in that zone. * For information on default values and when this parameter is required, * see the VpcId parameter description. *

* * @param defaultSubnetId * The stack's default VPC subnet ID. This parameter is required if * you specify a value for the VpcId parameter. All * instances are launched into this subnet unless you specify * otherwise when you create the instance. If you also specify a * value for DefaultAvailabilityZone, the subnet must be * in that zone. For information on default values and when this * parameter is required, see the VpcId parameter * description. */ public void setDefaultSubnetId(String defaultSubnetId) { this.defaultSubnetId = defaultSubnetId; } /** *

* The stack's default VPC subnet ID. This parameter is required if you * specify a value for the VpcId parameter. All instances are * launched into this subnet unless you specify otherwise when you create * the instance. If you also specify a value for * DefaultAvailabilityZone, the subnet must be in that zone. * For information on default values and when this parameter is required, * see the VpcId parameter description. *

* * @return The stack's default VPC subnet ID. This parameter is required if * you specify a value for the VpcId parameter. All * instances are launched into this subnet unless you specify * otherwise when you create the instance. If you also specify a * value for DefaultAvailabilityZone, the subnet must * be in that zone. For information on default values and when this * parameter is required, see the VpcId parameter * description. */ public String getDefaultSubnetId() { return this.defaultSubnetId; } /** *

* The stack's default VPC subnet ID. This parameter is required if you * specify a value for the VpcId parameter. All instances are * launched into this subnet unless you specify otherwise when you create * the instance. If you also specify a value for * DefaultAvailabilityZone, the subnet must be in that zone. * For information on default values and when this parameter is required, * see the VpcId parameter description. *

* * @param defaultSubnetId * The stack's default VPC subnet ID. This parameter is required if * you specify a value for the VpcId parameter. All * instances are launched into this subnet unless you specify * otherwise when you create the instance. If you also specify a * value for DefaultAvailabilityZone, the subnet must be * in that zone. For information on default values and when this * parameter is required, see the VpcId parameter * description. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withDefaultSubnetId(String defaultSubnetId) { setDefaultSubnetId(defaultSubnetId); return this; } /** *

* A string that contains user-defined, custom JSON. It is used to override * the corresponding default stack configuration JSON values. The string * should be in the following format and must escape characters such as '"': *

*

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}" *

*

* For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes *

* * @param customJson * A string that contains user-defined, custom JSON. It is used to * override the corresponding default stack configuration JSON * values. The string should be in the following format and must * escape characters such as '"':

*

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}" *

*

* For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes */ public void setCustomJson(String customJson) { this.customJson = customJson; } /** *

* A string that contains user-defined, custom JSON. It is used to override * the corresponding default stack configuration JSON values. The string * should be in the following format and must escape characters such as '"': *

*

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}" *

*

* For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes *

* * @return A string that contains user-defined, custom JSON. It is used to * override the corresponding default stack configuration JSON * values. The string should be in the following format and must * escape characters such as '"':

*

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}" *

*

* For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes */ public String getCustomJson() { return this.customJson; } /** *

* A string that contains user-defined, custom JSON. It is used to override * the corresponding default stack configuration JSON values. The string * should be in the following format and must escape characters such as '"': *

*

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}" *

*

* For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes *

* * @param customJson * A string that contains user-defined, custom JSON. It is used to * override the corresponding default stack configuration JSON * values. The string should be in the following format and must * escape characters such as '"':

*

* "{\"key1\": \"value1\", \"key2\": \"value2\",...}" *

*

* For more information on custom JSON, see Use Custom JSON to Modify the Stack Configuration Attributes * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withCustomJson(String customJson) { setCustomJson(customJson); return this; } /** *

* The configuration manager. When you clone a stack we recommend that you * use the configuration manager to specify the Chef version: 12, 11.10, or * 11.4 for Linux stacks, or 12.2 for Windows stacks. The default value for * Linux stacks is currently 12. *

* * @param configurationManager * The configuration manager. When you clone a stack we recommend * that you use the configuration manager to specify the Chef * version: 12, 11.10, or 11.4 for Linux stacks, or 12.2 for Windows * stacks. The default value for Linux stacks is currently 12. */ public void setConfigurationManager( StackConfigurationManager configurationManager) { this.configurationManager = configurationManager; } /** *

* The configuration manager. When you clone a stack we recommend that you * use the configuration manager to specify the Chef version: 12, 11.10, or * 11.4 for Linux stacks, or 12.2 for Windows stacks. The default value for * Linux stacks is currently 12. *

* * @return The configuration manager. When you clone a stack we recommend * that you use the configuration manager to specify the Chef * version: 12, 11.10, or 11.4 for Linux stacks, or 12.2 for Windows * stacks. The default value for Linux stacks is currently 12. */ public StackConfigurationManager getConfigurationManager() { return this.configurationManager; } /** *

* The configuration manager. When you clone a stack we recommend that you * use the configuration manager to specify the Chef version: 12, 11.10, or * 11.4 for Linux stacks, or 12.2 for Windows stacks. The default value for * Linux stacks is currently 12. *

* * @param configurationManager * The configuration manager. When you clone a stack we recommend * that you use the configuration manager to specify the Chef * version: 12, 11.10, or 11.4 for Linux stacks, or 12.2 for Windows * stacks. The default value for Linux stacks is currently 12. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withConfigurationManager( StackConfigurationManager configurationManager) { setConfigurationManager(configurationManager); return this; } /** *

* A ChefConfiguration object that specifies whether to enable * Berkshelf and the Berkshelf version on Chef 11.10 stacks. For more * information, see Create a New Stack. *

* * @param chefConfiguration * A ChefConfiguration object that specifies whether to * enable Berkshelf and the Berkshelf version on Chef 11.10 stacks. * For more information, see Create a New Stack. */ public void setChefConfiguration(ChefConfiguration chefConfiguration) { this.chefConfiguration = chefConfiguration; } /** *

* A ChefConfiguration object that specifies whether to enable * Berkshelf and the Berkshelf version on Chef 11.10 stacks. For more * information, see Create a New Stack. *

* * @return A ChefConfiguration object that specifies whether to * enable Berkshelf and the Berkshelf version on Chef 11.10 stacks. * For more information, see Create a New Stack. */ public ChefConfiguration getChefConfiguration() { return this.chefConfiguration; } /** *

* A ChefConfiguration object that specifies whether to enable * Berkshelf and the Berkshelf version on Chef 11.10 stacks. For more * information, see Create a New Stack. *

* * @param chefConfiguration * A ChefConfiguration object that specifies whether to * enable Berkshelf and the Berkshelf version on Chef 11.10 stacks. * For more information, see Create a New Stack. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withChefConfiguration( ChefConfiguration chefConfiguration) { setChefConfiguration(chefConfiguration); return this; } /** *

* Whether to use custom cookbooks. *

* * @param useCustomCookbooks * Whether to use custom cookbooks. */ public void setUseCustomCookbooks(Boolean useCustomCookbooks) { this.useCustomCookbooks = useCustomCookbooks; } /** *

* Whether to use custom cookbooks. *

* * @return Whether to use custom cookbooks. */ public Boolean getUseCustomCookbooks() { return this.useCustomCookbooks; } /** *

* Whether to use custom cookbooks. *

* * @param useCustomCookbooks * Whether to use custom cookbooks. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withUseCustomCookbooks(Boolean useCustomCookbooks) { setUseCustomCookbooks(useCustomCookbooks); return this; } /** *

* Whether to use custom cookbooks. *

* * @return Whether to use custom cookbooks. */ public Boolean isUseCustomCookbooks() { return this.useCustomCookbooks; } /** *

* Whether to associate the AWS OpsWorks built-in security groups with the * stack's layers. *

*

* AWS OpsWorks provides a standard set of built-in security groups, one for * each layer, which are associated with layers by default. With * UseOpsworksSecurityGroups you can instead provide your own * custom security groups. UseOpsworksSecurityGroups has the * following settings: *

*
    *
  • *

    * True - AWS OpsWorks automatically associates the appropriate built-in * security group with each layer (default setting). You can associate * additional security groups with a layer after you create it but you * cannot delete the built-in security group. *

    *
  • *
  • *

    * False - AWS OpsWorks does not associate built-in security groups with * layers. You must create appropriate Amazon Elastic Compute Cloud (Amazon * EC2) security groups and associate a security group with each layer that * you create. However, you can still manually associate a built-in security * group with a layer on creation; custom security groups are required only * for those layers that need custom settings. *

    *
  • *
*

* For more information, see Create a New Stack. *

* * @param useOpsworksSecurityGroups * Whether to associate the AWS OpsWorks built-in security groups * with the stack's layers.

*

* AWS OpsWorks provides a standard set of built-in security groups, * one for each layer, which are associated with layers by default. * With UseOpsworksSecurityGroups you can instead * provide your own custom security groups. * UseOpsworksSecurityGroups has the following settings: *

*
    *
  • *

    * True - AWS OpsWorks automatically associates the appropriate * built-in security group with each layer (default setting). You can * associate additional security groups with a layer after you create * it but you cannot delete the built-in security group. *

    *
  • *
  • *

    * False - AWS OpsWorks does not associate built-in security groups * with layers. You must create appropriate Amazon Elastic Compute * Cloud (Amazon EC2) security groups and associate a security group * with each layer that you create. However, you can still manually * associate a built-in security group with a layer on creation; * custom security groups are required only for those layers that * need custom settings. *

    *
  • *
*

* For more information, see Create a New Stack. */ public void setUseOpsworksSecurityGroups(Boolean useOpsworksSecurityGroups) { this.useOpsworksSecurityGroups = useOpsworksSecurityGroups; } /** *

* Whether to associate the AWS OpsWorks built-in security groups with the * stack's layers. *

*

* AWS OpsWorks provides a standard set of built-in security groups, one for * each layer, which are associated with layers by default. With * UseOpsworksSecurityGroups you can instead provide your own * custom security groups. UseOpsworksSecurityGroups has the * following settings: *

*
    *
  • *

    * True - AWS OpsWorks automatically associates the appropriate built-in * security group with each layer (default setting). You can associate * additional security groups with a layer after you create it but you * cannot delete the built-in security group. *

    *
  • *
  • *

    * False - AWS OpsWorks does not associate built-in security groups with * layers. You must create appropriate Amazon Elastic Compute Cloud (Amazon * EC2) security groups and associate a security group with each layer that * you create. However, you can still manually associate a built-in security * group with a layer on creation; custom security groups are required only * for those layers that need custom settings. *

    *
  • *
*

* For more information, see Create a New Stack. *

* * @return Whether to associate the AWS OpsWorks built-in security groups * with the stack's layers.

*

* AWS OpsWorks provides a standard set of built-in security groups, * one for each layer, which are associated with layers by default. * With UseOpsworksSecurityGroups you can instead * provide your own custom security groups. * UseOpsworksSecurityGroups has the following * settings: *

*
    *
  • *

    * True - AWS OpsWorks automatically associates the appropriate * built-in security group with each layer (default setting). You * can associate additional security groups with a layer after you * create it but you cannot delete the built-in security group. *

    *
  • *
  • *

    * False - AWS OpsWorks does not associate built-in security groups * with layers. You must create appropriate Amazon Elastic Compute * Cloud (Amazon EC2) security groups and associate a security group * with each layer that you create. However, you can still manually * associate a built-in security group with a layer on creation; * custom security groups are required only for those layers that * need custom settings. *

    *
  • *
*

* For more information, see Create a New Stack. */ public Boolean getUseOpsworksSecurityGroups() { return this.useOpsworksSecurityGroups; } /** *

* Whether to associate the AWS OpsWorks built-in security groups with the * stack's layers. *

*

* AWS OpsWorks provides a standard set of built-in security groups, one for * each layer, which are associated with layers by default. With * UseOpsworksSecurityGroups you can instead provide your own * custom security groups. UseOpsworksSecurityGroups has the * following settings: *

*
    *
  • *

    * True - AWS OpsWorks automatically associates the appropriate built-in * security group with each layer (default setting). You can associate * additional security groups with a layer after you create it but you * cannot delete the built-in security group. *

    *
  • *
  • *

    * False - AWS OpsWorks does not associate built-in security groups with * layers. You must create appropriate Amazon Elastic Compute Cloud (Amazon * EC2) security groups and associate a security group with each layer that * you create. However, you can still manually associate a built-in security * group with a layer on creation; custom security groups are required only * for those layers that need custom settings. *

    *
  • *
*

* For more information, see Create a New Stack. *

* * @param useOpsworksSecurityGroups * Whether to associate the AWS OpsWorks built-in security groups * with the stack's layers.

*

* AWS OpsWorks provides a standard set of built-in security groups, * one for each layer, which are associated with layers by default. * With UseOpsworksSecurityGroups you can instead * provide your own custom security groups. * UseOpsworksSecurityGroups has the following settings: *

*
    *
  • *

    * True - AWS OpsWorks automatically associates the appropriate * built-in security group with each layer (default setting). You can * associate additional security groups with a layer after you create * it but you cannot delete the built-in security group. *

    *
  • *
  • *

    * False - AWS OpsWorks does not associate built-in security groups * with layers. You must create appropriate Amazon Elastic Compute * Cloud (Amazon EC2) security groups and associate a security group * with each layer that you create. However, you can still manually * associate a built-in security group with a layer on creation; * custom security groups are required only for those layers that * need custom settings. *

    *
  • *
*

* For more information, see Create a New Stack. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withUseOpsworksSecurityGroups( Boolean useOpsworksSecurityGroups) { setUseOpsworksSecurityGroups(useOpsworksSecurityGroups); return this; } /** *

* Whether to associate the AWS OpsWorks built-in security groups with the * stack's layers. *

*

* AWS OpsWorks provides a standard set of built-in security groups, one for * each layer, which are associated with layers by default. With * UseOpsworksSecurityGroups you can instead provide your own * custom security groups. UseOpsworksSecurityGroups has the * following settings: *

*
    *
  • *

    * True - AWS OpsWorks automatically associates the appropriate built-in * security group with each layer (default setting). You can associate * additional security groups with a layer after you create it but you * cannot delete the built-in security group. *

    *
  • *
  • *

    * False - AWS OpsWorks does not associate built-in security groups with * layers. You must create appropriate Amazon Elastic Compute Cloud (Amazon * EC2) security groups and associate a security group with each layer that * you create. However, you can still manually associate a built-in security * group with a layer on creation; custom security groups are required only * for those layers that need custom settings. *

    *
  • *
*

* For more information, see Create a New Stack. *

* * @return Whether to associate the AWS OpsWorks built-in security groups * with the stack's layers.

*

* AWS OpsWorks provides a standard set of built-in security groups, * one for each layer, which are associated with layers by default. * With UseOpsworksSecurityGroups you can instead * provide your own custom security groups. * UseOpsworksSecurityGroups has the following * settings: *

*
    *
  • *

    * True - AWS OpsWorks automatically associates the appropriate * built-in security group with each layer (default setting). You * can associate additional security groups with a layer after you * create it but you cannot delete the built-in security group. *

    *
  • *
  • *

    * False - AWS OpsWorks does not associate built-in security groups * with layers. You must create appropriate Amazon Elastic Compute * Cloud (Amazon EC2) security groups and associate a security group * with each layer that you create. However, you can still manually * associate a built-in security group with a layer on creation; * custom security groups are required only for those layers that * need custom settings. *

    *
  • *
*

* For more information, see Create a New Stack. */ public Boolean isUseOpsworksSecurityGroups() { return this.useOpsworksSecurityGroups; } /** * @param customCookbooksSource */ public void setCustomCookbooksSource(Source customCookbooksSource) { this.customCookbooksSource = customCookbooksSource; } /** * @return */ public Source getCustomCookbooksSource() { return this.customCookbooksSource; } /** * @param customCookbooksSource * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withCustomCookbooksSource( Source customCookbooksSource) { setCustomCookbooksSource(customCookbooksSource); return this; } /** *

* A default Amazon EC2 key pair name. The default value is none. If you * specify a key pair name, AWS OpsWorks installs the public key on the * instance and you can use the private key with an SSH client to log in to * the instance. For more information, see Using SSH to Communicate with an Instance and Managing SSH Access. You can override this setting by specifying a * different key pair, or no key pair, when you create an instance. *

* * @param defaultSshKeyName * A default Amazon EC2 key pair name. The default value is none. If * you specify a key pair name, AWS OpsWorks installs the public key * on the instance and you can use the private key with an SSH client * to log in to the instance. For more information, see Using SSH to Communicate with an Instance and Managing SSH Access. You can override this setting by * specifying a different key pair, or no key pair, when you create an instance. */ public void setDefaultSshKeyName(String defaultSshKeyName) { this.defaultSshKeyName = defaultSshKeyName; } /** *

* A default Amazon EC2 key pair name. The default value is none. If you * specify a key pair name, AWS OpsWorks installs the public key on the * instance and you can use the private key with an SSH client to log in to * the instance. For more information, see Using SSH to Communicate with an Instance and Managing SSH Access. You can override this setting by specifying a * different key pair, or no key pair, when you create an instance. *

* * @return A default Amazon EC2 key pair name. The default value is none. If * you specify a key pair name, AWS OpsWorks installs the public key * on the instance and you can use the private key with an SSH * client to log in to the instance. For more information, see Using SSH to Communicate with an Instance and Managing SSH Access. You can override this setting by * specifying a different key pair, or no key pair, when you create an instance. */ public String getDefaultSshKeyName() { return this.defaultSshKeyName; } /** *

* A default Amazon EC2 key pair name. The default value is none. If you * specify a key pair name, AWS OpsWorks installs the public key on the * instance and you can use the private key with an SSH client to log in to * the instance. For more information, see Using SSH to Communicate with an Instance and Managing SSH Access. You can override this setting by specifying a * different key pair, or no key pair, when you create an instance. *

* * @param defaultSshKeyName * A default Amazon EC2 key pair name. The default value is none. If * you specify a key pair name, AWS OpsWorks installs the public key * on the instance and you can use the private key with an SSH client * to log in to the instance. For more information, see Using SSH to Communicate with an Instance and Managing SSH Access. You can override this setting by * specifying a different key pair, or no key pair, when you create an instance. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withDefaultSshKeyName(String defaultSshKeyName) { setDefaultSshKeyName(defaultSshKeyName); return this; } /** *

* Whether to clone the source stack's permissions. *

* * @param clonePermissions * Whether to clone the source stack's permissions. */ public void setClonePermissions(Boolean clonePermissions) { this.clonePermissions = clonePermissions; } /** *

* Whether to clone the source stack's permissions. *

* * @return Whether to clone the source stack's permissions. */ public Boolean getClonePermissions() { return this.clonePermissions; } /** *

* Whether to clone the source stack's permissions. *

* * @param clonePermissions * Whether to clone the source stack's permissions. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withClonePermissions(Boolean clonePermissions) { setClonePermissions(clonePermissions); return this; } /** *

* Whether to clone the source stack's permissions. *

* * @return Whether to clone the source stack's permissions. */ public Boolean isClonePermissions() { return this.clonePermissions; } /** *

* A list of source stack app IDs to be included in the cloned stack. *

* * @return A list of source stack app IDs to be included in the cloned * stack. */ public java.util.List getCloneAppIds() { if (cloneAppIds == null) { cloneAppIds = new com.amazonaws.internal.SdkInternalList(); } return cloneAppIds; } /** *

* A list of source stack app IDs to be included in the cloned stack. *

* * @param cloneAppIds * A list of source stack app IDs to be included in the cloned stack. */ public void setCloneAppIds(java.util.Collection cloneAppIds) { if (cloneAppIds == null) { this.cloneAppIds = null; return; } this.cloneAppIds = new com.amazonaws.internal.SdkInternalList( cloneAppIds); } /** *

* A list of source stack app IDs to be included in the cloned stack. *

*

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

* * @param cloneAppIds * A list of source stack app IDs to be included in the cloned stack. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withCloneAppIds(String... cloneAppIds) { if (this.cloneAppIds == null) { setCloneAppIds(new com.amazonaws.internal.SdkInternalList( cloneAppIds.length)); } for (String ele : cloneAppIds) { this.cloneAppIds.add(ele); } return this; } /** *

* A list of source stack app IDs to be included in the cloned stack. *

* * @param cloneAppIds * A list of source stack app IDs to be included in the cloned stack. * @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withCloneAppIds( java.util.Collection cloneAppIds) { setCloneAppIds(cloneAppIds); return this; } /** *

* The default root device type. This value is used by default for all * instances in the cloned stack, but you can override it when you create an * instance. For more information, see Storage for the Root Device. *

* * @param defaultRootDeviceType * The default root device type. This value is used by default for * all instances in the cloned stack, but you can override it when * you create an instance. For more information, see Storage for the Root Device. * @see RootDeviceType */ public void setDefaultRootDeviceType(String defaultRootDeviceType) { this.defaultRootDeviceType = defaultRootDeviceType; } /** *

* The default root device type. This value is used by default for all * instances in the cloned stack, but you can override it when you create an * instance. For more information, see Storage for the Root Device. *

* * @return The default root device type. This value is used by default for * all instances in the cloned stack, but you can override it when * you create an instance. For more information, see Storage for the Root Device. * @see RootDeviceType */ public String getDefaultRootDeviceType() { return this.defaultRootDeviceType; } /** *

* The default root device type. This value is used by default for all * instances in the cloned stack, but you can override it when you create an * instance. For more information, see Storage for the Root Device. *

* * @param defaultRootDeviceType * The default root device type. This value is used by default for * all instances in the cloned stack, but you can override it when * you create an instance. For more information, see Storage for the Root Device. * @return Returns a reference to this object so that method calls can be * chained together. * @see RootDeviceType */ public CloneStackRequest withDefaultRootDeviceType( String defaultRootDeviceType) { setDefaultRootDeviceType(defaultRootDeviceType); return this; } /** *

* The default root device type. This value is used by default for all * instances in the cloned stack, but you can override it when you create an * instance. For more information, see Storage for the Root Device. *

* * @param defaultRootDeviceType * The default root device type. This value is used by default for * all instances in the cloned stack, but you can override it when * you create an instance. For more information, see Storage for the Root Device. * @see RootDeviceType */ public void setDefaultRootDeviceType(RootDeviceType defaultRootDeviceType) { this.defaultRootDeviceType = defaultRootDeviceType.toString(); } /** *

* The default root device type. This value is used by default for all * instances in the cloned stack, but you can override it when you create an * instance. For more information, see Storage for the Root Device. *

* * @param defaultRootDeviceType * The default root device type. This value is used by default for * all instances in the cloned stack, but you can override it when * you create an instance. For more information, see Storage for the Root Device. * @return Returns a reference to this object so that method calls can be * chained together. * @see RootDeviceType */ public CloneStackRequest withDefaultRootDeviceType( RootDeviceType defaultRootDeviceType) { setDefaultRootDeviceType(defaultRootDeviceType); return this; } /** *

* The default AWS OpsWorks agent version. You have the following options: *

*
    *
  • *

    * Auto-update - Set this parameter to LATEST. AWS OpsWorks * automatically installs new agent versions on the stack's instances as * soon as they are available. *

    *
  • *
  • *

    * Fixed version - Set this parameter to your preferred agent version. To * update the agent version, you must edit the stack configuration and * specify a new version. AWS OpsWorks then automatically installs that * version on the stack's instances. *

    *
  • *
*

* The default setting is LATEST. To specify an agent version, * you must use the complete version number, not the abbreviated number * shown on the console. For a list of available agent version numbers, call * DescribeAgentVersions. *

* *

* You can also specify an agent version when you create or update an * instance, which overrides the stack's default setting. *

*
* * @param agentVersion * The default AWS OpsWorks agent version. You have the following * options:

*
    *
  • *

    * Auto-update - Set this parameter to LATEST. AWS * OpsWorks automatically installs new agent versions on the stack's * instances as soon as they are available. *

    *
  • *
  • *

    * Fixed version - Set this parameter to your preferred agent * version. To update the agent version, you must edit the stack * configuration and specify a new version. AWS OpsWorks then * automatically installs that version on the stack's instances. *

    *
  • *
*

* The default setting is LATEST. To specify an agent * version, you must use the complete version number, not the * abbreviated number shown on the console. For a list of available * agent version numbers, call DescribeAgentVersions. *

* *

* You can also specify an agent version when you create or update an * instance, which overrides the stack's default setting. *

*/ public void setAgentVersion(String agentVersion) { this.agentVersion = agentVersion; } /** *

* The default AWS OpsWorks agent version. You have the following options: *

*
    *
  • *

    * Auto-update - Set this parameter to LATEST. AWS OpsWorks * automatically installs new agent versions on the stack's instances as * soon as they are available. *

    *
  • *
  • *

    * Fixed version - Set this parameter to your preferred agent version. To * update the agent version, you must edit the stack configuration and * specify a new version. AWS OpsWorks then automatically installs that * version on the stack's instances. *

    *
  • *
*

* The default setting is LATEST. To specify an agent version, * you must use the complete version number, not the abbreviated number * shown on the console. For a list of available agent version numbers, call * DescribeAgentVersions. *

* *

* You can also specify an agent version when you create or update an * instance, which overrides the stack's default setting. *

*
* * @return The default AWS OpsWorks agent version. You have the following * options:

*
    *
  • *

    * Auto-update - Set this parameter to LATEST. AWS * OpsWorks automatically installs new agent versions on the stack's * instances as soon as they are available. *

    *
  • *
  • *

    * Fixed version - Set this parameter to your preferred agent * version. To update the agent version, you must edit the stack * configuration and specify a new version. AWS OpsWorks then * automatically installs that version on the stack's instances. *

    *
  • *
*

* The default setting is LATEST. To specify an agent * version, you must use the complete version number, not the * abbreviated number shown on the console. For a list of available * agent version numbers, call DescribeAgentVersions. *

* *

* You can also specify an agent version when you create or update * an instance, which overrides the stack's default setting. *

*/ public String getAgentVersion() { return this.agentVersion; } /** *

* The default AWS OpsWorks agent version. You have the following options: *

*
    *
  • *

    * Auto-update - Set this parameter to LATEST. AWS OpsWorks * automatically installs new agent versions on the stack's instances as * soon as they are available. *

    *
  • *
  • *

    * Fixed version - Set this parameter to your preferred agent version. To * update the agent version, you must edit the stack configuration and * specify a new version. AWS OpsWorks then automatically installs that * version on the stack's instances. *

    *
  • *
*

* The default setting is LATEST. To specify an agent version, * you must use the complete version number, not the abbreviated number * shown on the console. For a list of available agent version numbers, call * DescribeAgentVersions. *

* *

* You can also specify an agent version when you create or update an * instance, which overrides the stack's default setting. *

*
* * @param agentVersion * The default AWS OpsWorks agent version. You have the following * options:

*
    *
  • *

    * Auto-update - Set this parameter to LATEST. AWS * OpsWorks automatically installs new agent versions on the stack's * instances as soon as they are available. *

    *
  • *
  • *

    * Fixed version - Set this parameter to your preferred agent * version. To update the agent version, you must edit the stack * configuration and specify a new version. AWS OpsWorks then * automatically installs that version on the stack's instances. *

    *
  • *
*

* The default setting is LATEST. To specify an agent * version, you must use the complete version number, not the * abbreviated number shown on the console. For a list of available * agent version numbers, call DescribeAgentVersions. *

* *

* You can also specify an agent version when you create or update an * instance, which overrides the stack's default setting. *

* @return Returns a reference to this object so that method calls can be * chained together. */ public CloneStackRequest withAgentVersion(String agentVersion) { setAgentVersion(agentVersion); return this; } /** * 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 (getSourceStackId() != null) sb.append("SourceStackId: " + getSourceStackId() + ","); if (getName() != null) sb.append("Name: " + getName() + ","); if (getRegion() != null) sb.append("Region: " + getRegion() + ","); if (getVpcId() != null) sb.append("VpcId: " + getVpcId() + ","); if (getAttributes() != null) sb.append("Attributes: " + getAttributes() + ","); if (getServiceRoleArn() != null) sb.append("ServiceRoleArn: " + getServiceRoleArn() + ","); if (getDefaultInstanceProfileArn() != null) sb.append("DefaultInstanceProfileArn: " + getDefaultInstanceProfileArn() + ","); if (getDefaultOs() != null) sb.append("DefaultOs: " + getDefaultOs() + ","); if (getHostnameTheme() != null) sb.append("HostnameTheme: " + getHostnameTheme() + ","); if (getDefaultAvailabilityZone() != null) sb.append("DefaultAvailabilityZone: " + getDefaultAvailabilityZone() + ","); if (getDefaultSubnetId() != null) sb.append("DefaultSubnetId: " + getDefaultSubnetId() + ","); if (getCustomJson() != null) sb.append("CustomJson: " + getCustomJson() + ","); if (getConfigurationManager() != null) sb.append("ConfigurationManager: " + getConfigurationManager() + ","); if (getChefConfiguration() != null) sb.append("ChefConfiguration: " + getChefConfiguration() + ","); if (getUseCustomCookbooks() != null) sb.append("UseCustomCookbooks: " + getUseCustomCookbooks() + ","); if (getUseOpsworksSecurityGroups() != null) sb.append("UseOpsworksSecurityGroups: " + getUseOpsworksSecurityGroups() + ","); if (getCustomCookbooksSource() != null) sb.append("CustomCookbooksSource: " + getCustomCookbooksSource() + ","); if (getDefaultSshKeyName() != null) sb.append("DefaultSshKeyName: " + getDefaultSshKeyName() + ","); if (getClonePermissions() != null) sb.append("ClonePermissions: " + getClonePermissions() + ","); if (getCloneAppIds() != null) sb.append("CloneAppIds: " + getCloneAppIds() + ","); if (getDefaultRootDeviceType() != null) sb.append("DefaultRootDeviceType: " + getDefaultRootDeviceType() + ","); if (getAgentVersion() != null) sb.append("AgentVersion: " + getAgentVersion()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CloneStackRequest == false) return false; CloneStackRequest other = (CloneStackRequest) obj; if (other.getSourceStackId() == null ^ this.getSourceStackId() == null) return false; if (other.getSourceStackId() != null && other.getSourceStackId().equals(this.getSourceStackId()) == false) return false; if (other.getName() == null ^ this.getName() == null) return false; if (other.getName() != null && other.getName().equals(this.getName()) == false) return false; if (other.getRegion() == null ^ this.getRegion() == null) return false; if (other.getRegion() != null && other.getRegion().equals(this.getRegion()) == false) return false; if (other.getVpcId() == null ^ this.getVpcId() == null) return false; if (other.getVpcId() != null && other.getVpcId().equals(this.getVpcId()) == false) return false; if (other.getAttributes() == null ^ this.getAttributes() == null) return false; if (other.getAttributes() != null && other.getAttributes().equals(this.getAttributes()) == false) return false; if (other.getServiceRoleArn() == null ^ this.getServiceRoleArn() == null) return false; if (other.getServiceRoleArn() != null && other.getServiceRoleArn().equals(this.getServiceRoleArn()) == false) return false; if (other.getDefaultInstanceProfileArn() == null ^ this.getDefaultInstanceProfileArn() == null) return false; if (other.getDefaultInstanceProfileArn() != null && other.getDefaultInstanceProfileArn().equals( this.getDefaultInstanceProfileArn()) == false) return false; if (other.getDefaultOs() == null ^ this.getDefaultOs() == null) return false; if (other.getDefaultOs() != null && other.getDefaultOs().equals(this.getDefaultOs()) == false) return false; if (other.getHostnameTheme() == null ^ this.getHostnameTheme() == null) return false; if (other.getHostnameTheme() != null && other.getHostnameTheme().equals(this.getHostnameTheme()) == false) return false; if (other.getDefaultAvailabilityZone() == null ^ this.getDefaultAvailabilityZone() == null) return false; if (other.getDefaultAvailabilityZone() != null && other.getDefaultAvailabilityZone().equals( this.getDefaultAvailabilityZone()) == false) return false; if (other.getDefaultSubnetId() == null ^ this.getDefaultSubnetId() == null) return false; if (other.getDefaultSubnetId() != null && other.getDefaultSubnetId().equals(this.getDefaultSubnetId()) == false) return false; if (other.getCustomJson() == null ^ this.getCustomJson() == null) return false; if (other.getCustomJson() != null && other.getCustomJson().equals(this.getCustomJson()) == false) return false; if (other.getConfigurationManager() == null ^ this.getConfigurationManager() == null) return false; if (other.getConfigurationManager() != null && other.getConfigurationManager().equals( this.getConfigurationManager()) == false) return false; if (other.getChefConfiguration() == null ^ this.getChefConfiguration() == null) return false; if (other.getChefConfiguration() != null && other.getChefConfiguration().equals( this.getChefConfiguration()) == false) return false; if (other.getUseCustomCookbooks() == null ^ this.getUseCustomCookbooks() == null) return false; if (other.getUseCustomCookbooks() != null && other.getUseCustomCookbooks().equals( this.getUseCustomCookbooks()) == false) return false; if (other.getUseOpsworksSecurityGroups() == null ^ this.getUseOpsworksSecurityGroups() == null) return false; if (other.getUseOpsworksSecurityGroups() != null && other.getUseOpsworksSecurityGroups().equals( this.getUseOpsworksSecurityGroups()) == false) return false; if (other.getCustomCookbooksSource() == null ^ this.getCustomCookbooksSource() == null) return false; if (other.getCustomCookbooksSource() != null && other.getCustomCookbooksSource().equals( this.getCustomCookbooksSource()) == false) return false; if (other.getDefaultSshKeyName() == null ^ this.getDefaultSshKeyName() == null) return false; if (other.getDefaultSshKeyName() != null && other.getDefaultSshKeyName().equals( this.getDefaultSshKeyName()) == false) return false; if (other.getClonePermissions() == null ^ this.getClonePermissions() == null) return false; if (other.getClonePermissions() != null && other.getClonePermissions().equals( this.getClonePermissions()) == false) return false; if (other.getCloneAppIds() == null ^ this.getCloneAppIds() == null) return false; if (other.getCloneAppIds() != null && other.getCloneAppIds().equals(this.getCloneAppIds()) == false) return false; if (other.getDefaultRootDeviceType() == null ^ this.getDefaultRootDeviceType() == null) return false; if (other.getDefaultRootDeviceType() != null && other.getDefaultRootDeviceType().equals( this.getDefaultRootDeviceType()) == false) return false; if (other.getAgentVersion() == null ^ this.getAgentVersion() == null) return false; if (other.getAgentVersion() != null && other.getAgentVersion().equals(this.getAgentVersion()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getSourceStackId() == null) ? 0 : getSourceStackId() .hashCode()); hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode()); hashCode = prime * hashCode + ((getRegion() == null) ? 0 : getRegion().hashCode()); hashCode = prime * hashCode + ((getVpcId() == null) ? 0 : getVpcId().hashCode()); hashCode = prime * hashCode + ((getAttributes() == null) ? 0 : getAttributes().hashCode()); hashCode = prime * hashCode + ((getServiceRoleArn() == null) ? 0 : getServiceRoleArn() .hashCode()); hashCode = prime * hashCode + ((getDefaultInstanceProfileArn() == null) ? 0 : getDefaultInstanceProfileArn().hashCode()); hashCode = prime * hashCode + ((getDefaultOs() == null) ? 0 : getDefaultOs().hashCode()); hashCode = prime * hashCode + ((getHostnameTheme() == null) ? 0 : getHostnameTheme() .hashCode()); hashCode = prime * hashCode + ((getDefaultAvailabilityZone() == null) ? 0 : getDefaultAvailabilityZone().hashCode()); hashCode = prime * hashCode + ((getDefaultSubnetId() == null) ? 0 : getDefaultSubnetId() .hashCode()); hashCode = prime * hashCode + ((getCustomJson() == null) ? 0 : getCustomJson().hashCode()); hashCode = prime * hashCode + ((getConfigurationManager() == null) ? 0 : getConfigurationManager().hashCode()); hashCode = prime * hashCode + ((getChefConfiguration() == null) ? 0 : getChefConfiguration().hashCode()); hashCode = prime * hashCode + ((getUseCustomCookbooks() == null) ? 0 : getUseCustomCookbooks().hashCode()); hashCode = prime * hashCode + ((getUseOpsworksSecurityGroups() == null) ? 0 : getUseOpsworksSecurityGroups().hashCode()); hashCode = prime * hashCode + ((getCustomCookbooksSource() == null) ? 0 : getCustomCookbooksSource().hashCode()); hashCode = prime * hashCode + ((getDefaultSshKeyName() == null) ? 0 : getDefaultSshKeyName().hashCode()); hashCode = prime * hashCode + ((getClonePermissions() == null) ? 0 : getClonePermissions() .hashCode()); hashCode = prime * hashCode + ((getCloneAppIds() == null) ? 0 : getCloneAppIds().hashCode()); hashCode = prime * hashCode + ((getDefaultRootDeviceType() == null) ? 0 : getDefaultRootDeviceType().hashCode()); hashCode = prime * hashCode + ((getAgentVersion() == null) ? 0 : getAgentVersion() .hashCode()); return hashCode; } @Override public CloneStackRequest clone() { return (CloneStackRequest) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy