
com.amazonaws.services.opsworks.model.CloneStackRequest Maven / Gradle / Ivy
Show all versions of aws-java-sdk-opsworks Show documentation
/*
* 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 com.amazonaws.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 "ap-northeast-2". 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 "ap-northeast-2". For more
* information about AWS regions, see Regions
* and Endpoints.
*
*
* @param region
* The cloned stack AWS region, such as "ap-northeast-2". 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 "ap-northeast-2". For more
* information about AWS regions, see Regions
* and Endpoints.
*
*
* @return The cloned stack AWS region, such as "ap-northeast-2". For more
* information about AWS regions, see Regions and Endpoints.
*/
public String getRegion() {
return this.region;
}
/**
*
* The cloned stack AWS region, such as "ap-northeast-2". For more
* information about AWS regions, see Regions
* and Endpoints.
*
*
* @param region
* The cloned stack AWS region, such as "ap-northeast-2". 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();
}
}