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

com.amazonaws.services.opsworks.model.CreateStackRequest 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 CreateStackRequest extends AmazonWebServiceRequest implements
        Serializable, Cloneable {

    /**
     * 

* The stack name. *

*/ private String name; /** *

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

*/ private String region; /** *

* The ID of the VPC that the stack is to be launched into. The VPC must be * in the stack's region. All instances are launched into this VPC. 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; /** *

* One or more user-defined key-value pairs to be added to the stack * attributes. *

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

* The stack's 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. For * more information about IAM ARNs, see Using Identifiers. *

*/ 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 default operating system, which is installed on every * instance unless you specify a different operating system when you create * the instance. You can specify 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 *

    *
  • *
  • *

    * A supported Windows operating system, such as * 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, see Using Custom AMIs. *

    *
  • *
*

* The default option is the current Amazon Linux version. For more * information on the supported operating systems, see AWS OpsWorks Operating Systems. *

*/ private String defaultOs; /** *

* The stack's host name theme, with spaces 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 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 can be used to * override the corresponding default stack configuration attribute values * or to pass data to recipes. The string should be in the following 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 create 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 11.4. *

*/ 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 the stack uses 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 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; /** *

* The default root device type. This value is the default for all instances * in the stack, but you can override it when you create an instance. The * default option is instance-store. 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 the most recent release of the agent. 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 stack name. *

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

* The stack name. *

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

* The stack name. *

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

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

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

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

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

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

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

* The ID of the VPC that the stack is to be launched into. The VPC must be * in the stack's region. All instances are launched into this VPC. 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 stack is to be launched into. The VPC * must be in the stack's region. All instances are launched into * this VPC. 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 stack is to be launched into. The VPC must be * in the stack's region. All instances are launched into this VPC. 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 stack is to be launched into. The VPC * must be in the stack's region. All instances are launched into * this VPC. 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 stack is to be launched into. The VPC must be * in the stack's region. All instances are launched into this VPC. 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 stack is to be launched into. The VPC * must be in the stack's region. All instances are launched into * this VPC. 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 CreateStackRequest withVpcId(String vpcId) { setVpcId(vpcId); return this; } /** *

* One or more user-defined key-value pairs to be added to the stack * attributes. *

* * @return One or more user-defined key-value pairs to be added to the stack * attributes. */ public java.util.Map getAttributes() { if (attributes == null) { attributes = new com.amazonaws.internal.SdkInternalMap(); } return attributes; } /** *

* One or more user-defined key-value pairs to be added to the stack * attributes. *

* * @param attributes * One or more user-defined key-value pairs to be added to the stack * attributes. */ public void setAttributes(java.util.Map attributes) { this.attributes = attributes == null ? null : new com.amazonaws.internal.SdkInternalMap( attributes); } /** *

* One or more user-defined key-value pairs to be added to the stack * attributes. *

* * @param attributes * One or more user-defined key-value pairs to be added to the stack * attributes. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateStackRequest withAttributes( java.util.Map attributes) { setAttributes(attributes); return this; } public CreateStackRequest 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 CreateStackRequest clearAttributesEntries() { this.attributes = null; return this; } /** *

* The stack's 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. For * more information about IAM ARNs, see Using Identifiers. *

* * @param serviceRoleArn * The stack's 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. For more information about IAM ARNs, see Using Identifiers. */ public void setServiceRoleArn(String serviceRoleArn) { this.serviceRoleArn = serviceRoleArn; } /** *

* The stack's 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. For * more information about IAM ARNs, see Using Identifiers. *

* * @return The stack's 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. For more information about IAM ARNs, see Using Identifiers. */ public String getServiceRoleArn() { return this.serviceRoleArn; } /** *

* The stack's 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. For * more information about IAM ARNs, see Using Identifiers. *

* * @param serviceRoleArn * The stack's 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. 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 CreateStackRequest 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 CreateStackRequest withDefaultInstanceProfileArn( String defaultInstanceProfileArn) { setDefaultInstanceProfileArn(defaultInstanceProfileArn); return this; } /** *

* The stack's default operating system, which is installed on every * instance unless you specify a different operating system when you create * the instance. You can specify 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 *

    *
  • *
  • *

    * A supported Windows operating system, such as * 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, see Using Custom AMIs. *

    *
  • *
*

* The default option is the current Amazon Linux version. For more * information on the supported operating systems, see AWS OpsWorks Operating Systems. *

* * @param defaultOs * The stack's default operating system, which is installed on every * instance unless you specify a different operating system when you * create the instance. You can specify 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 *

    *
  • *
  • *

    * A supported Windows operating system, such as * 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, see * Using Custom AMIs. *

    *
  • *
*

* The default option is the current Amazon Linux version. For more * information on the supported operating systems, see AWS OpsWorks Operating Systems. */ public void setDefaultOs(String defaultOs) { this.defaultOs = defaultOs; } /** *

* The stack's default operating system, which is installed on every * instance unless you specify a different operating system when you create * the instance. You can specify 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 *

    *
  • *
  • *

    * A supported Windows operating system, such as * 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, see Using Custom AMIs. *

    *
  • *
*

* The default option is the current Amazon Linux version. For more * information on the supported operating systems, see AWS OpsWorks Operating Systems. *

* * @return The stack's default operating system, which is installed on every * instance unless you specify a different operating system when you * create the instance. You can specify 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 *

    *
  • *
  • *

    * A supported Windows operating system, such as * 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, see * Using Custom AMIs. *

    *
  • *
*

* The default option is the current Amazon Linux version. For more * information on the supported operating systems, see AWS OpsWorks Operating Systems. */ public String getDefaultOs() { return this.defaultOs; } /** *

* The stack's default operating system, which is installed on every * instance unless you specify a different operating system when you create * the instance. You can specify 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 *

    *
  • *
  • *

    * A supported Windows operating system, such as * 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, see Using Custom AMIs. *

    *
  • *
*

* The default option is the current Amazon Linux version. For more * information on the supported operating systems, see AWS OpsWorks Operating Systems. *

* * @param defaultOs * The stack's default operating system, which is installed on every * instance unless you specify a different operating system when you * create the instance. You can specify 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 *

    *
  • *
  • *

    * A supported Windows operating system, such as * 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, see * Using Custom AMIs. *

    *
  • *
*

* The default option is the current Amazon Linux version. For more * information on the supported operating systems, see AWS OpsWorks Operating Systems. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateStackRequest withDefaultOs(String defaultOs) { setDefaultOs(defaultOs); return this; } /** *

* The stack's host name theme, with spaces 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 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 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 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 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 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 CreateStackRequest withHostnameTheme(String hostnameTheme) { setHostnameTheme(hostnameTheme); return this; } /** *

* The 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 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 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 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 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 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 CreateStackRequest 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 CreateStackRequest withDefaultSubnetId(String defaultSubnetId) { setDefaultSubnetId(defaultSubnetId); return this; } /** *

* A string that contains user-defined, custom JSON. It can be used to * override the corresponding default stack configuration attribute values * or to pass data to recipes. The string should be in the following 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 can be used * to override the corresponding default stack configuration * attribute values or to pass data to recipes. The string should be * in the following 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 can be used to * override the corresponding default stack configuration attribute values * or to pass data to recipes. The string should be in the following 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 can be used * to override the corresponding default stack configuration * attribute values or to pass data to recipes. The string should be * in the following 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 can be used to * override the corresponding default stack configuration attribute values * or to pass data to recipes. The string should be in the following 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 can be used * to override the corresponding default stack configuration * attribute values or to pass data to recipes. The string should be * in the following 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 CreateStackRequest withCustomJson(String customJson) { setCustomJson(customJson); return this; } /** *

* The configuration manager. When you create 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 11.4. *

* * @param configurationManager * The configuration manager. When you create 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 11.4. */ public void setConfigurationManager( StackConfigurationManager configurationManager) { this.configurationManager = configurationManager; } /** *

* The configuration manager. When you create 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 11.4. *

* * @return The configuration manager. When you create 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 11.4. */ public StackConfigurationManager getConfigurationManager() { return this.configurationManager; } /** *

* The configuration manager. When you create 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 11.4. *

* * @param configurationManager * The configuration manager. When you create 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 11.4. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateStackRequest 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 CreateStackRequest withChefConfiguration( ChefConfiguration chefConfiguration) { setChefConfiguration(chefConfiguration); return this; } /** *

* Whether the stack uses custom cookbooks. *

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

* Whether the stack uses custom cookbooks. *

* * @return Whether the stack uses custom cookbooks. */ public Boolean getUseCustomCookbooks() { return this.useCustomCookbooks; } /** *

* Whether the stack uses custom cookbooks. *

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

* Whether the stack uses custom cookbooks. *

* * @return Whether the stack uses 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 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 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 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 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 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 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 CreateStackRequest 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 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 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 CreateStackRequest 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 CreateStackRequest withDefaultSshKeyName(String defaultSshKeyName) { setDefaultSshKeyName(defaultSshKeyName); return this; } /** *

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

* * @param defaultRootDeviceType * The default root device type. This value is the default for all * instances in the stack, but you can override it when you create an * instance. The default option is instance-store. 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 the default for all instances * in the stack, but you can override it when you create an instance. The * default option is instance-store. For more information, see * Storage for the Root Device. *

* * @return The default root device type. This value is the default for all * instances in the stack, but you can override it when you create * an instance. The default option is instance-store. * 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 the default for all instances * in the stack, but you can override it when you create an instance. The * default option is instance-store. For more information, see * Storage for the Root Device. *

* * @param defaultRootDeviceType * The default root device type. This value is the default for all * instances in the stack, but you can override it when you create an * instance. The default option is instance-store. 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 CreateStackRequest withDefaultRootDeviceType( String defaultRootDeviceType) { setDefaultRootDeviceType(defaultRootDeviceType); return this; } /** *

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

* * @param defaultRootDeviceType * The default root device type. This value is the default for all * instances in the stack, but you can override it when you create an * instance. The default option is instance-store. 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 the default for all instances * in the stack, but you can override it when you create an instance. The * default option is instance-store. For more information, see * Storage for the Root Device. *

* * @param defaultRootDeviceType * The default root device type. This value is the default for all * instances in the stack, but you can override it when you create an * instance. The default option is instance-store. 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 CreateStackRequest 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 the most recent release of the agent. 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 the most recent release of the agent. 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 the most recent release of the agent. 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 the most recent release of the agent. 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 the most recent release of the agent. 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 the most recent release of the agent. 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 CreateStackRequest 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 (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 (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 CreateStackRequest == false) return false; CreateStackRequest other = (CreateStackRequest) obj; 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.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 + ((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 + ((getDefaultRootDeviceType() == null) ? 0 : getDefaultRootDeviceType().hashCode()); hashCode = prime * hashCode + ((getAgentVersion() == null) ? 0 : getAgentVersion() .hashCode()); return hashCode; } @Override public CreateStackRequest clone() { return (CreateStackRequest) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy