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

com.amazonaws.services.cloudformation.model.CreateChangeSetRequest 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.cloudformation.model;

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

/**
 * 

* The input for the CreateChangeSet action. *

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

* The name or the unique ID of the stack for which you are creating a * change set. AWS CloudFormation generates the change set by comparing this * stack's information with the information that you submit, such as a * modified template or different parameter input values. *

*/ private String stackName; /** *

* A structure that contains the body of the revised template, with a * minimum length of 1 byte and a maximum length of 51,200 bytes. AWS * CloudFormation generates the change set by comparing this template with * the template of the stack that you specified. *

*

* Conditional: You must specify only TemplateBody or * TemplateURL. *

*/ private String templateBody; /** *

* The location of the file that contains the revised template. The URL must * point to a template (max size: 460,800 bytes) that is located in an S3 * bucket. AWS CloudFormation generates the change set by comparing this * template with the stack that you specified. *

*

* Conditional: You must specify only TemplateBody or * TemplateURL. *

*/ private String templateURL; /** *

* Whether to reuse the template that is associated with the stack to create * the change set. *

*/ private Boolean usePreviousTemplate; /** *

* A list of Parameter structures that specify input parameters * for the change set. For more information, see the Parameter data type. *

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

* A list of values that you must specify before AWS CloudFormation can * update certain stacks. Some stack templates might include resources that * can affect permissions in your AWS account, for example, by creating new * AWS Identity and Access Management (IAM) users. For those stacks, you * must explicitly acknowledge their capabilities by specifying this * parameter. *

*

* The only valid values are CAPABILITY_IAM and * CAPABILITY_NAMED_IAM. The following resources require you to * specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template contains * these resources, we recommend that you review all permissions associated * with them and edit their permissions if necessary. *

*

* If you have IAM resources, you can specify either capability. If you have * IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. If you don't specify this parameter, * this action returns an InsufficientCapabilities error. *

*

* For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates. *

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

* The template resource types that you have permissions to work with if you * execute this change set, such as AWS::EC2::Instance, * AWS::EC2::*, or Custom::MyCustomInstance. *

*

* If the list of resource types doesn't include a resource type that you're * updating, the stack update fails. By default, AWS CloudFormation grants * permissions to all resource types. AWS Identity and Access Management * (IAM) uses this parameter for condition keys in IAM policies for AWS * CloudFormation. For more information, see Controlling Access with AWS Identity and Access Management in the * AWS CloudFormation User Guide. *

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

* The Amazon Resource Names (ARNs) of Amazon Simple Notification Service * (Amazon SNS) topics that AWS CloudFormation associates with the stack. To * remove all associated notification topics, specify an empty list. *

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

* Key-value pairs to associate with this stack. AWS CloudFormation also * propagates these tags to resources in the stack. You can specify a * maximum of 10 tags. *

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

* The name of the change set. The name must be unique among all change sets * that are associated with the specified stack. *

*

* A change set name can contain only alphanumeric, case sensitive * characters and hyphens. It must start with an alphabetic character and * cannot exceed 128 characters. *

*/ private String changeSetName; /** *

* A unique identifier for this CreateChangeSet request. * Specify this token if you plan to retry requests so that AWS * CloudFormation knows that you're not attempting to create another change * set with the same name. You might retry CreateChangeSet * requests to ensure that AWS CloudFormation successfully received them. *

*/ private String clientToken; /** *

* A description to help you identify this change set. *

*/ private String description; /** *

* The name or the unique ID of the stack for which you are creating a * change set. AWS CloudFormation generates the change set by comparing this * stack's information with the information that you submit, such as a * modified template or different parameter input values. *

* * @param stackName * The name or the unique ID of the stack for which you are creating * a change set. AWS CloudFormation generates the change set by * comparing this stack's information with the information that you * submit, such as a modified template or different parameter input * values. */ public void setStackName(String stackName) { this.stackName = stackName; } /** *

* The name or the unique ID of the stack for which you are creating a * change set. AWS CloudFormation generates the change set by comparing this * stack's information with the information that you submit, such as a * modified template or different parameter input values. *

* * @return The name or the unique ID of the stack for which you are creating * a change set. AWS CloudFormation generates the change set by * comparing this stack's information with the information that you * submit, such as a modified template or different parameter input * values. */ public String getStackName() { return this.stackName; } /** *

* The name or the unique ID of the stack for which you are creating a * change set. AWS CloudFormation generates the change set by comparing this * stack's information with the information that you submit, such as a * modified template or different parameter input values. *

* * @param stackName * The name or the unique ID of the stack for which you are creating * a change set. AWS CloudFormation generates the change set by * comparing this stack's information with the information that you * submit, such as a modified template or different parameter input * values. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withStackName(String stackName) { setStackName(stackName); return this; } /** *

* A structure that contains the body of the revised template, with a * minimum length of 1 byte and a maximum length of 51,200 bytes. AWS * CloudFormation generates the change set by comparing this template with * the template of the stack that you specified. *

*

* Conditional: You must specify only TemplateBody or * TemplateURL. *

* * @param templateBody * A structure that contains the body of the revised template, with a * minimum length of 1 byte and a maximum length of 51,200 bytes. AWS * CloudFormation generates the change set by comparing this template * with the template of the stack that you specified.

*

* Conditional: You must specify only TemplateBody or * TemplateURL. */ public void setTemplateBody(String templateBody) { this.templateBody = templateBody; } /** *

* A structure that contains the body of the revised template, with a * minimum length of 1 byte and a maximum length of 51,200 bytes. AWS * CloudFormation generates the change set by comparing this template with * the template of the stack that you specified. *

*

* Conditional: You must specify only TemplateBody or * TemplateURL. *

* * @return A structure that contains the body of the revised template, with * a minimum length of 1 byte and a maximum length of 51,200 bytes. * AWS CloudFormation generates the change set by comparing this * template with the template of the stack that you specified.

*

* Conditional: You must specify only TemplateBody or * TemplateURL. */ public String getTemplateBody() { return this.templateBody; } /** *

* A structure that contains the body of the revised template, with a * minimum length of 1 byte and a maximum length of 51,200 bytes. AWS * CloudFormation generates the change set by comparing this template with * the template of the stack that you specified. *

*

* Conditional: You must specify only TemplateBody or * TemplateURL. *

* * @param templateBody * A structure that contains the body of the revised template, with a * minimum length of 1 byte and a maximum length of 51,200 bytes. AWS * CloudFormation generates the change set by comparing this template * with the template of the stack that you specified.

*

* Conditional: You must specify only TemplateBody or * TemplateURL. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withTemplateBody(String templateBody) { setTemplateBody(templateBody); return this; } /** *

* The location of the file that contains the revised template. The URL must * point to a template (max size: 460,800 bytes) that is located in an S3 * bucket. AWS CloudFormation generates the change set by comparing this * template with the stack that you specified. *

*

* Conditional: You must specify only TemplateBody or * TemplateURL. *

* * @param templateURL * The location of the file that contains the revised template. The * URL must point to a template (max size: 460,800 bytes) that is * located in an S3 bucket. AWS CloudFormation generates the change * set by comparing this template with the stack that you * specified.

*

* Conditional: You must specify only TemplateBody or * TemplateURL. */ public void setTemplateURL(String templateURL) { this.templateURL = templateURL; } /** *

* The location of the file that contains the revised template. The URL must * point to a template (max size: 460,800 bytes) that is located in an S3 * bucket. AWS CloudFormation generates the change set by comparing this * template with the stack that you specified. *

*

* Conditional: You must specify only TemplateBody or * TemplateURL. *

* * @return The location of the file that contains the revised template. The * URL must point to a template (max size: 460,800 bytes) that is * located in an S3 bucket. AWS CloudFormation generates the change * set by comparing this template with the stack that you * specified.

*

* Conditional: You must specify only TemplateBody or * TemplateURL. */ public String getTemplateURL() { return this.templateURL; } /** *

* The location of the file that contains the revised template. The URL must * point to a template (max size: 460,800 bytes) that is located in an S3 * bucket. AWS CloudFormation generates the change set by comparing this * template with the stack that you specified. *

*

* Conditional: You must specify only TemplateBody or * TemplateURL. *

* * @param templateURL * The location of the file that contains the revised template. The * URL must point to a template (max size: 460,800 bytes) that is * located in an S3 bucket. AWS CloudFormation generates the change * set by comparing this template with the stack that you * specified.

*

* Conditional: You must specify only TemplateBody or * TemplateURL. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withTemplateURL(String templateURL) { setTemplateURL(templateURL); return this; } /** *

* Whether to reuse the template that is associated with the stack to create * the change set. *

* * @param usePreviousTemplate * Whether to reuse the template that is associated with the stack to * create the change set. */ public void setUsePreviousTemplate(Boolean usePreviousTemplate) { this.usePreviousTemplate = usePreviousTemplate; } /** *

* Whether to reuse the template that is associated with the stack to create * the change set. *

* * @return Whether to reuse the template that is associated with the stack * to create the change set. */ public Boolean getUsePreviousTemplate() { return this.usePreviousTemplate; } /** *

* Whether to reuse the template that is associated with the stack to create * the change set. *

* * @param usePreviousTemplate * Whether to reuse the template that is associated with the stack to * create the change set. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withUsePreviousTemplate( Boolean usePreviousTemplate) { setUsePreviousTemplate(usePreviousTemplate); return this; } /** *

* Whether to reuse the template that is associated with the stack to create * the change set. *

* * @return Whether to reuse the template that is associated with the stack * to create the change set. */ public Boolean isUsePreviousTemplate() { return this.usePreviousTemplate; } /** *

* A list of Parameter structures that specify input parameters * for the change set. For more information, see the Parameter data type. *

* * @return A list of Parameter structures that specify input * parameters for the change set. For more information, see the Parameter data type. */ public java.util.List getParameters() { if (parameters == null) { parameters = new com.amazonaws.internal.SdkInternalList(); } return parameters; } /** *

* A list of Parameter structures that specify input parameters * for the change set. For more information, see the Parameter data type. *

* * @param parameters * A list of Parameter structures that specify input * parameters for the change set. For more information, see the Parameter data type. */ public void setParameters(java.util.Collection parameters) { if (parameters == null) { this.parameters = null; return; } this.parameters = new com.amazonaws.internal.SdkInternalList( parameters); } /** *

* A list of Parameter structures that specify input parameters * for the change set. For more information, see the Parameter data type. *

*

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

* * @param parameters * A list of Parameter structures that specify input * parameters for the change set. For more information, see the Parameter data type. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withParameters(Parameter... parameters) { if (this.parameters == null) { setParameters(new com.amazonaws.internal.SdkInternalList( parameters.length)); } for (Parameter ele : parameters) { this.parameters.add(ele); } return this; } /** *

* A list of Parameter structures that specify input parameters * for the change set. For more information, see the Parameter data type. *

* * @param parameters * A list of Parameter structures that specify input * parameters for the change set. For more information, see the Parameter data type. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withParameters( java.util.Collection parameters) { setParameters(parameters); return this; } /** *

* A list of values that you must specify before AWS CloudFormation can * update certain stacks. Some stack templates might include resources that * can affect permissions in your AWS account, for example, by creating new * AWS Identity and Access Management (IAM) users. For those stacks, you * must explicitly acknowledge their capabilities by specifying this * parameter. *

*

* The only valid values are CAPABILITY_IAM and * CAPABILITY_NAMED_IAM. The following resources require you to * specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template contains * these resources, we recommend that you review all permissions associated * with them and edit their permissions if necessary. *

*

* If you have IAM resources, you can specify either capability. If you have * IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. If you don't specify this parameter, * this action returns an InsufficientCapabilities error. *

*

* For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates. *

* * @return A list of values that you must specify before AWS CloudFormation * can update certain stacks. Some stack templates might include * resources that can affect permissions in your AWS account, for * example, by creating new AWS Identity and Access Management (IAM) * users. For those stacks, you must explicitly acknowledge their * capabilities by specifying this parameter.

*

* The only valid values are CAPABILITY_IAM and * CAPABILITY_NAMED_IAM. The following resources * require you to specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template * contains these resources, we recommend that you review all * permissions associated with them and edit their permissions if * necessary. *

*

* If you have IAM resources, you can specify either capability. If * you have IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. If you don't specify this * parameter, this action returns an * InsufficientCapabilities error. *

*

* For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates. * @see Capability */ public java.util.List getCapabilities() { if (capabilities == null) { capabilities = new com.amazonaws.internal.SdkInternalList(); } return capabilities; } /** *

* A list of values that you must specify before AWS CloudFormation can * update certain stacks. Some stack templates might include resources that * can affect permissions in your AWS account, for example, by creating new * AWS Identity and Access Management (IAM) users. For those stacks, you * must explicitly acknowledge their capabilities by specifying this * parameter. *

*

* The only valid values are CAPABILITY_IAM and * CAPABILITY_NAMED_IAM. The following resources require you to * specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template contains * these resources, we recommend that you review all permissions associated * with them and edit their permissions if necessary. *

*

* If you have IAM resources, you can specify either capability. If you have * IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. If you don't specify this parameter, * this action returns an InsufficientCapabilities error. *

*

* For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates. *

* * @param capabilities * A list of values that you must specify before AWS CloudFormation * can update certain stacks. Some stack templates might include * resources that can affect permissions in your AWS account, for * example, by creating new AWS Identity and Access Management (IAM) * users. For those stacks, you must explicitly acknowledge their * capabilities by specifying this parameter.

*

* The only valid values are CAPABILITY_IAM and * CAPABILITY_NAMED_IAM. The following resources require * you to specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template * contains these resources, we recommend that you review all * permissions associated with them and edit their permissions if * necessary. *

*

* If you have IAM resources, you can specify either capability. If * you have IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. If you don't specify this * parameter, this action returns an * InsufficientCapabilities error. *

*

* For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates. * @see Capability */ public void setCapabilities(java.util.Collection capabilities) { if (capabilities == null) { this.capabilities = null; return; } this.capabilities = new com.amazonaws.internal.SdkInternalList( capabilities); } /** *

* A list of values that you must specify before AWS CloudFormation can * update certain stacks. Some stack templates might include resources that * can affect permissions in your AWS account, for example, by creating new * AWS Identity and Access Management (IAM) users. For those stacks, you * must explicitly acknowledge their capabilities by specifying this * parameter. *

*

* The only valid values are CAPABILITY_IAM and * CAPABILITY_NAMED_IAM. The following resources require you to * specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template contains * these resources, we recommend that you review all permissions associated * with them and edit their permissions if necessary. *

*

* If you have IAM resources, you can specify either capability. If you have * IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. If you don't specify this parameter, * this action returns an InsufficientCapabilities error. *

*

* For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates. *

*

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

* * @param capabilities * A list of values that you must specify before AWS CloudFormation * can update certain stacks. Some stack templates might include * resources that can affect permissions in your AWS account, for * example, by creating new AWS Identity and Access Management (IAM) * users. For those stacks, you must explicitly acknowledge their * capabilities by specifying this parameter.

*

* The only valid values are CAPABILITY_IAM and * CAPABILITY_NAMED_IAM. The following resources require * you to specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template * contains these resources, we recommend that you review all * permissions associated with them and edit their permissions if * necessary. *

*

* If you have IAM resources, you can specify either capability. If * you have IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. If you don't specify this * parameter, this action returns an * InsufficientCapabilities error. *

*

* For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates. * @return Returns a reference to this object so that method calls can be * chained together. * @see Capability */ public CreateChangeSetRequest withCapabilities(String... capabilities) { if (this.capabilities == null) { setCapabilities(new com.amazonaws.internal.SdkInternalList( capabilities.length)); } for (String ele : capabilities) { this.capabilities.add(ele); } return this; } /** *

* A list of values that you must specify before AWS CloudFormation can * update certain stacks. Some stack templates might include resources that * can affect permissions in your AWS account, for example, by creating new * AWS Identity and Access Management (IAM) users. For those stacks, you * must explicitly acknowledge their capabilities by specifying this * parameter. *

*

* The only valid values are CAPABILITY_IAM and * CAPABILITY_NAMED_IAM. The following resources require you to * specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template contains * these resources, we recommend that you review all permissions associated * with them and edit their permissions if necessary. *

*

* If you have IAM resources, you can specify either capability. If you have * IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. If you don't specify this parameter, * this action returns an InsufficientCapabilities error. *

*

* For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates. *

* * @param capabilities * A list of values that you must specify before AWS CloudFormation * can update certain stacks. Some stack templates might include * resources that can affect permissions in your AWS account, for * example, by creating new AWS Identity and Access Management (IAM) * users. For those stacks, you must explicitly acknowledge their * capabilities by specifying this parameter.

*

* The only valid values are CAPABILITY_IAM and * CAPABILITY_NAMED_IAM. The following resources require * you to specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template * contains these resources, we recommend that you review all * permissions associated with them and edit their permissions if * necessary. *

*

* If you have IAM resources, you can specify either capability. If * you have IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. If you don't specify this * parameter, this action returns an * InsufficientCapabilities error. *

*

* For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates. * @return Returns a reference to this object so that method calls can be * chained together. * @see Capability */ public CreateChangeSetRequest withCapabilities( java.util.Collection capabilities) { setCapabilities(capabilities); return this; } /** *

* A list of values that you must specify before AWS CloudFormation can * update certain stacks. Some stack templates might include resources that * can affect permissions in your AWS account, for example, by creating new * AWS Identity and Access Management (IAM) users. For those stacks, you * must explicitly acknowledge their capabilities by specifying this * parameter. *

*

* The only valid values are CAPABILITY_IAM and * CAPABILITY_NAMED_IAM. The following resources require you to * specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template contains * these resources, we recommend that you review all permissions associated * with them and edit their permissions if necessary. *

*

* If you have IAM resources, you can specify either capability. If you have * IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. If you don't specify this parameter, * this action returns an InsufficientCapabilities error. *

*

* For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates. *

* * @param capabilities * A list of values that you must specify before AWS CloudFormation * can update certain stacks. Some stack templates might include * resources that can affect permissions in your AWS account, for * example, by creating new AWS Identity and Access Management (IAM) * users. For those stacks, you must explicitly acknowledge their * capabilities by specifying this parameter.

*

* The only valid values are CAPABILITY_IAM and * CAPABILITY_NAMED_IAM. The following resources require * you to specify this parameter: AWS::IAM::AccessKey, AWS::IAM::Group, AWS::IAM::InstanceProfile, AWS::IAM::Policy, AWS::IAM::Role, AWS::IAM::User, and AWS::IAM::UserToGroupAddition. If your stack template * contains these resources, we recommend that you review all * permissions associated with them and edit their permissions if * necessary. *

*

* If you have IAM resources, you can specify either capability. If * you have IAM resources with custom names, you must specify * CAPABILITY_NAMED_IAM. If you don't specify this * parameter, this action returns an * InsufficientCapabilities error. *

*

* For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates. * @return Returns a reference to this object so that method calls can be * chained together. * @see Capability */ public CreateChangeSetRequest withCapabilities(Capability... capabilities) { com.amazonaws.internal.SdkInternalList capabilitiesCopy = new com.amazonaws.internal.SdkInternalList( capabilities.length); for (Capability value : capabilities) { capabilitiesCopy.add(value.toString()); } if (getCapabilities() == null) { setCapabilities(capabilitiesCopy); } else { getCapabilities().addAll(capabilitiesCopy); } return this; } /** *

* The template resource types that you have permissions to work with if you * execute this change set, such as AWS::EC2::Instance, * AWS::EC2::*, or Custom::MyCustomInstance. *

*

* If the list of resource types doesn't include a resource type that you're * updating, the stack update fails. By default, AWS CloudFormation grants * permissions to all resource types. AWS Identity and Access Management * (IAM) uses this parameter for condition keys in IAM policies for AWS * CloudFormation. For more information, see Controlling Access with AWS Identity and Access Management in the * AWS CloudFormation User Guide. *

* * @return The template resource types that you have permissions to work * with if you execute this change set, such as * AWS::EC2::Instance, AWS::EC2::*, or * Custom::MyCustomInstance.

*

* If the list of resource types doesn't include a resource type * that you're updating, the stack update fails. By default, AWS * CloudFormation grants permissions to all resource types. AWS * Identity and Access Management (IAM) uses this parameter for * condition keys in IAM policies for AWS CloudFormation. For more * information, see Controlling Access with AWS Identity and Access Management * in the AWS CloudFormation User Guide. */ public java.util.List getResourceTypes() { if (resourceTypes == null) { resourceTypes = new com.amazonaws.internal.SdkInternalList(); } return resourceTypes; } /** *

* The template resource types that you have permissions to work with if you * execute this change set, such as AWS::EC2::Instance, * AWS::EC2::*, or Custom::MyCustomInstance. *

*

* If the list of resource types doesn't include a resource type that you're * updating, the stack update fails. By default, AWS CloudFormation grants * permissions to all resource types. AWS Identity and Access Management * (IAM) uses this parameter for condition keys in IAM policies for AWS * CloudFormation. For more information, see Controlling Access with AWS Identity and Access Management in the * AWS CloudFormation User Guide. *

* * @param resourceTypes * The template resource types that you have permissions to work with * if you execute this change set, such as * AWS::EC2::Instance, AWS::EC2::*, or * Custom::MyCustomInstance.

*

* If the list of resource types doesn't include a resource type that * you're updating, the stack update fails. By default, AWS * CloudFormation grants permissions to all resource types. AWS * Identity and Access Management (IAM) uses this parameter for * condition keys in IAM policies for AWS CloudFormation. For more * information, see Controlling Access with AWS Identity and Access Management in * the AWS CloudFormation User Guide. */ public void setResourceTypes(java.util.Collection resourceTypes) { if (resourceTypes == null) { this.resourceTypes = null; return; } this.resourceTypes = new com.amazonaws.internal.SdkInternalList( resourceTypes); } /** *

* The template resource types that you have permissions to work with if you * execute this change set, such as AWS::EC2::Instance, * AWS::EC2::*, or Custom::MyCustomInstance. *

*

* If the list of resource types doesn't include a resource type that you're * updating, the stack update fails. By default, AWS CloudFormation grants * permissions to all resource types. AWS Identity and Access Management * (IAM) uses this parameter for condition keys in IAM policies for AWS * CloudFormation. For more information, see Controlling Access with AWS Identity and Access Management in the * AWS CloudFormation User Guide. *

*

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

* * @param resourceTypes * The template resource types that you have permissions to work with * if you execute this change set, such as * AWS::EC2::Instance, AWS::EC2::*, or * Custom::MyCustomInstance.

*

* If the list of resource types doesn't include a resource type that * you're updating, the stack update fails. By default, AWS * CloudFormation grants permissions to all resource types. AWS * Identity and Access Management (IAM) uses this parameter for * condition keys in IAM policies for AWS CloudFormation. For more * information, see Controlling Access with AWS Identity and Access Management in * the AWS CloudFormation User Guide. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withResourceTypes(String... resourceTypes) { if (this.resourceTypes == null) { setResourceTypes(new com.amazonaws.internal.SdkInternalList( resourceTypes.length)); } for (String ele : resourceTypes) { this.resourceTypes.add(ele); } return this; } /** *

* The template resource types that you have permissions to work with if you * execute this change set, such as AWS::EC2::Instance, * AWS::EC2::*, or Custom::MyCustomInstance. *

*

* If the list of resource types doesn't include a resource type that you're * updating, the stack update fails. By default, AWS CloudFormation grants * permissions to all resource types. AWS Identity and Access Management * (IAM) uses this parameter for condition keys in IAM policies for AWS * CloudFormation. For more information, see Controlling Access with AWS Identity and Access Management in the * AWS CloudFormation User Guide. *

* * @param resourceTypes * The template resource types that you have permissions to work with * if you execute this change set, such as * AWS::EC2::Instance, AWS::EC2::*, or * Custom::MyCustomInstance.

*

* If the list of resource types doesn't include a resource type that * you're updating, the stack update fails. By default, AWS * CloudFormation grants permissions to all resource types. AWS * Identity and Access Management (IAM) uses this parameter for * condition keys in IAM policies for AWS CloudFormation. For more * information, see Controlling Access with AWS Identity and Access Management in * the AWS CloudFormation User Guide. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withResourceTypes( java.util.Collection resourceTypes) { setResourceTypes(resourceTypes); return this; } /** *

* The Amazon Resource Names (ARNs) of Amazon Simple Notification Service * (Amazon SNS) topics that AWS CloudFormation associates with the stack. To * remove all associated notification topics, specify an empty list. *

* * @return The Amazon Resource Names (ARNs) of Amazon Simple Notification * Service (Amazon SNS) topics that AWS CloudFormation associates * with the stack. To remove all associated notification topics, * specify an empty list. */ public java.util.List getNotificationARNs() { if (notificationARNs == null) { notificationARNs = new com.amazonaws.internal.SdkInternalList(); } return notificationARNs; } /** *

* The Amazon Resource Names (ARNs) of Amazon Simple Notification Service * (Amazon SNS) topics that AWS CloudFormation associates with the stack. To * remove all associated notification topics, specify an empty list. *

* * @param notificationARNs * The Amazon Resource Names (ARNs) of Amazon Simple Notification * Service (Amazon SNS) topics that AWS CloudFormation associates * with the stack. To remove all associated notification topics, * specify an empty list. */ public void setNotificationARNs( java.util.Collection notificationARNs) { if (notificationARNs == null) { this.notificationARNs = null; return; } this.notificationARNs = new com.amazonaws.internal.SdkInternalList( notificationARNs); } /** *

* The Amazon Resource Names (ARNs) of Amazon Simple Notification Service * (Amazon SNS) topics that AWS CloudFormation associates with the stack. To * remove all associated notification topics, specify an empty list. *

*

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

* * @param notificationARNs * The Amazon Resource Names (ARNs) of Amazon Simple Notification * Service (Amazon SNS) topics that AWS CloudFormation associates * with the stack. To remove all associated notification topics, * specify an empty list. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withNotificationARNs( String... notificationARNs) { if (this.notificationARNs == null) { setNotificationARNs(new com.amazonaws.internal.SdkInternalList( notificationARNs.length)); } for (String ele : notificationARNs) { this.notificationARNs.add(ele); } return this; } /** *

* The Amazon Resource Names (ARNs) of Amazon Simple Notification Service * (Amazon SNS) topics that AWS CloudFormation associates with the stack. To * remove all associated notification topics, specify an empty list. *

* * @param notificationARNs * The Amazon Resource Names (ARNs) of Amazon Simple Notification * Service (Amazon SNS) topics that AWS CloudFormation associates * with the stack. To remove all associated notification topics, * specify an empty list. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withNotificationARNs( java.util.Collection notificationARNs) { setNotificationARNs(notificationARNs); return this; } /** *

* Key-value pairs to associate with this stack. AWS CloudFormation also * propagates these tags to resources in the stack. You can specify a * maximum of 10 tags. *

* * @return Key-value pairs to associate with this stack. AWS CloudFormation * also propagates these tags to resources in the stack. You can * specify a maximum of 10 tags. */ public java.util.List getTags() { if (tags == null) { tags = new com.amazonaws.internal.SdkInternalList(); } return tags; } /** *

* Key-value pairs to associate with this stack. AWS CloudFormation also * propagates these tags to resources in the stack. You can specify a * maximum of 10 tags. *

* * @param tags * Key-value pairs to associate with this stack. AWS CloudFormation * also propagates these tags to resources in the stack. You can * specify a maximum of 10 tags. */ public void setTags(java.util.Collection tags) { if (tags == null) { this.tags = null; return; } this.tags = new com.amazonaws.internal.SdkInternalList(tags); } /** *

* Key-value pairs to associate with this stack. AWS CloudFormation also * propagates these tags to resources in the stack. You can specify a * maximum of 10 tags. *

*

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

* * @param tags * Key-value pairs to associate with this stack. AWS CloudFormation * also propagates these tags to resources in the stack. You can * specify a maximum of 10 tags. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withTags(Tag... tags) { if (this.tags == null) { setTags(new com.amazonaws.internal.SdkInternalList(tags.length)); } for (Tag ele : tags) { this.tags.add(ele); } return this; } /** *

* Key-value pairs to associate with this stack. AWS CloudFormation also * propagates these tags to resources in the stack. You can specify a * maximum of 10 tags. *

* * @param tags * Key-value pairs to associate with this stack. AWS CloudFormation * also propagates these tags to resources in the stack. You can * specify a maximum of 10 tags. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withTags(java.util.Collection tags) { setTags(tags); return this; } /** *

* The name of the change set. The name must be unique among all change sets * that are associated with the specified stack. *

*

* A change set name can contain only alphanumeric, case sensitive * characters and hyphens. It must start with an alphabetic character and * cannot exceed 128 characters. *

* * @param changeSetName * The name of the change set. The name must be unique among all * change sets that are associated with the specified stack.

*

* A change set name can contain only alphanumeric, case sensitive * characters and hyphens. It must start with an alphabetic character * and cannot exceed 128 characters. */ public void setChangeSetName(String changeSetName) { this.changeSetName = changeSetName; } /** *

* The name of the change set. The name must be unique among all change sets * that are associated with the specified stack. *

*

* A change set name can contain only alphanumeric, case sensitive * characters and hyphens. It must start with an alphabetic character and * cannot exceed 128 characters. *

* * @return The name of the change set. The name must be unique among all * change sets that are associated with the specified stack.

*

* A change set name can contain only alphanumeric, case sensitive * characters and hyphens. It must start with an alphabetic * character and cannot exceed 128 characters. */ public String getChangeSetName() { return this.changeSetName; } /** *

* The name of the change set. The name must be unique among all change sets * that are associated with the specified stack. *

*

* A change set name can contain only alphanumeric, case sensitive * characters and hyphens. It must start with an alphabetic character and * cannot exceed 128 characters. *

* * @param changeSetName * The name of the change set. The name must be unique among all * change sets that are associated with the specified stack.

*

* A change set name can contain only alphanumeric, case sensitive * characters and hyphens. It must start with an alphabetic character * and cannot exceed 128 characters. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withChangeSetName(String changeSetName) { setChangeSetName(changeSetName); return this; } /** *

* A unique identifier for this CreateChangeSet request. * Specify this token if you plan to retry requests so that AWS * CloudFormation knows that you're not attempting to create another change * set with the same name. You might retry CreateChangeSet * requests to ensure that AWS CloudFormation successfully received them. *

* * @param clientToken * A unique identifier for this CreateChangeSet request. * Specify this token if you plan to retry requests so that AWS * CloudFormation knows that you're not attempting to create another * change set with the same name. You might retry * CreateChangeSet requests to ensure that AWS * CloudFormation successfully received them. */ public void setClientToken(String clientToken) { this.clientToken = clientToken; } /** *

* A unique identifier for this CreateChangeSet request. * Specify this token if you plan to retry requests so that AWS * CloudFormation knows that you're not attempting to create another change * set with the same name. You might retry CreateChangeSet * requests to ensure that AWS CloudFormation successfully received them. *

* * @return A unique identifier for this CreateChangeSet * request. Specify this token if you plan to retry requests so that * AWS CloudFormation knows that you're not attempting to create * another change set with the same name. You might retry * CreateChangeSet requests to ensure that AWS * CloudFormation successfully received them. */ public String getClientToken() { return this.clientToken; } /** *

* A unique identifier for this CreateChangeSet request. * Specify this token if you plan to retry requests so that AWS * CloudFormation knows that you're not attempting to create another change * set with the same name. You might retry CreateChangeSet * requests to ensure that AWS CloudFormation successfully received them. *

* * @param clientToken * A unique identifier for this CreateChangeSet request. * Specify this token if you plan to retry requests so that AWS * CloudFormation knows that you're not attempting to create another * change set with the same name. You might retry * CreateChangeSet requests to ensure that AWS * CloudFormation successfully received them. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withClientToken(String clientToken) { setClientToken(clientToken); return this; } /** *

* A description to help you identify this change set. *

* * @param description * A description to help you identify this change set. */ public void setDescription(String description) { this.description = description; } /** *

* A description to help you identify this change set. *

* * @return A description to help you identify this change set. */ public String getDescription() { return this.description; } /** *

* A description to help you identify this change set. *

* * @param description * A description to help you identify this change set. * @return Returns a reference to this object so that method calls can be * chained together. */ public CreateChangeSetRequest withDescription(String description) { setDescription(description); 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 (getStackName() != null) sb.append("StackName: " + getStackName() + ","); if (getTemplateBody() != null) sb.append("TemplateBody: " + getTemplateBody() + ","); if (getTemplateURL() != null) sb.append("TemplateURL: " + getTemplateURL() + ","); if (getUsePreviousTemplate() != null) sb.append("UsePreviousTemplate: " + getUsePreviousTemplate() + ","); if (getParameters() != null) sb.append("Parameters: " + getParameters() + ","); if (getCapabilities() != null) sb.append("Capabilities: " + getCapabilities() + ","); if (getResourceTypes() != null) sb.append("ResourceTypes: " + getResourceTypes() + ","); if (getNotificationARNs() != null) sb.append("NotificationARNs: " + getNotificationARNs() + ","); if (getTags() != null) sb.append("Tags: " + getTags() + ","); if (getChangeSetName() != null) sb.append("ChangeSetName: " + getChangeSetName() + ","); if (getClientToken() != null) sb.append("ClientToken: " + getClientToken() + ","); if (getDescription() != null) sb.append("Description: " + getDescription()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateChangeSetRequest == false) return false; CreateChangeSetRequest other = (CreateChangeSetRequest) obj; if (other.getStackName() == null ^ this.getStackName() == null) return false; if (other.getStackName() != null && other.getStackName().equals(this.getStackName()) == false) return false; if (other.getTemplateBody() == null ^ this.getTemplateBody() == null) return false; if (other.getTemplateBody() != null && other.getTemplateBody().equals(this.getTemplateBody()) == false) return false; if (other.getTemplateURL() == null ^ this.getTemplateURL() == null) return false; if (other.getTemplateURL() != null && other.getTemplateURL().equals(this.getTemplateURL()) == false) return false; if (other.getUsePreviousTemplate() == null ^ this.getUsePreviousTemplate() == null) return false; if (other.getUsePreviousTemplate() != null && other.getUsePreviousTemplate().equals( this.getUsePreviousTemplate()) == false) return false; if (other.getParameters() == null ^ this.getParameters() == null) return false; if (other.getParameters() != null && other.getParameters().equals(this.getParameters()) == false) return false; if (other.getCapabilities() == null ^ this.getCapabilities() == null) return false; if (other.getCapabilities() != null && other.getCapabilities().equals(this.getCapabilities()) == false) return false; if (other.getResourceTypes() == null ^ this.getResourceTypes() == null) return false; if (other.getResourceTypes() != null && other.getResourceTypes().equals(this.getResourceTypes()) == false) return false; if (other.getNotificationARNs() == null ^ this.getNotificationARNs() == null) return false; if (other.getNotificationARNs() != null && other.getNotificationARNs().equals( this.getNotificationARNs()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; if (other.getChangeSetName() == null ^ this.getChangeSetName() == null) return false; if (other.getChangeSetName() != null && other.getChangeSetName().equals(this.getChangeSetName()) == false) return false; if (other.getClientToken() == null ^ this.getClientToken() == null) return false; if (other.getClientToken() != null && other.getClientToken().equals(this.getClientToken()) == false) return false; if (other.getDescription() == null ^ this.getDescription() == null) return false; if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getStackName() == null) ? 0 : getStackName().hashCode()); hashCode = prime * hashCode + ((getTemplateBody() == null) ? 0 : getTemplateBody() .hashCode()); hashCode = prime * hashCode + ((getTemplateURL() == null) ? 0 : getTemplateURL().hashCode()); hashCode = prime * hashCode + ((getUsePreviousTemplate() == null) ? 0 : getUsePreviousTemplate().hashCode()); hashCode = prime * hashCode + ((getParameters() == null) ? 0 : getParameters().hashCode()); hashCode = prime * hashCode + ((getCapabilities() == null) ? 0 : getCapabilities() .hashCode()); hashCode = prime * hashCode + ((getResourceTypes() == null) ? 0 : getResourceTypes() .hashCode()); hashCode = prime * hashCode + ((getNotificationARNs() == null) ? 0 : getNotificationARNs() .hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getChangeSetName() == null) ? 0 : getChangeSetName() .hashCode()); hashCode = prime * hashCode + ((getClientToken() == null) ? 0 : getClientToken().hashCode()); hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode()); return hashCode; } @Override public CreateChangeSetRequest clone() { return (CreateChangeSetRequest) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy