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

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

/**
 * 

* The Stack data type. *

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

* Unique identifier of the stack. *

*/ private String stackId; /** *

* The name associated with the stack. *

*/ private String stackName; /** *

* A user-defined description associated with the stack. *

*/ private String description; /** *

* A list of Parameter structures. *

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

* The time at which the stack was created. *

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

* The time the stack was last updated. This field will only be returned if * the stack has been updated at least once. *

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

* Current status of the stack. *

*/ private String stackStatus; /** *

* Success/failure message associated with the stack status. *

*/ private String stackStatusReason; /** *

* Boolean to enable or disable rollback on stack creation failures: *

*
    *
  • *

    * true: disable rollback *

    *
  • *
  • *

    * false: enable rollback *

    *
  • *
*/ private Boolean disableRollback; /** *

* SNS topic ARNs to which stack related events are published. *

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

* The amount of time within which stack creation should complete. *

*/ private Integer timeoutInMinutes; /** *

* The capabilities allowed in the stack. *

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

* A list of output structures. *

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

* A list of Tags that specify information about the stack. *

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

* Unique identifier of the stack. *

* * @param stackId * Unique identifier of the stack. */ public void setStackId(String stackId) { this.stackId = stackId; } /** *

* Unique identifier of the stack. *

* * @return Unique identifier of the stack. */ public String getStackId() { return this.stackId; } /** *

* Unique identifier of the stack. *

* * @param stackId * Unique identifier of the stack. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withStackId(String stackId) { setStackId(stackId); return this; } /** *

* The name associated with the stack. *

* * @param stackName * The name associated with the stack. */ public void setStackName(String stackName) { this.stackName = stackName; } /** *

* The name associated with the stack. *

* * @return The name associated with the stack. */ public String getStackName() { return this.stackName; } /** *

* The name associated with the stack. *

* * @param stackName * The name associated with the stack. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withStackName(String stackName) { setStackName(stackName); return this; } /** *

* A user-defined description associated with the stack. *

* * @param description * A user-defined description associated with the stack. */ public void setDescription(String description) { this.description = description; } /** *

* A user-defined description associated with the stack. *

* * @return A user-defined description associated with the stack. */ public String getDescription() { return this.description; } /** *

* A user-defined description associated with the stack. *

* * @param description * A user-defined description associated with the stack. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withDescription(String description) { setDescription(description); return this; } /** *

* A list of Parameter structures. *

* * @return A list of Parameter structures. */ public java.util.List getParameters() { if (parameters == null) { parameters = new com.amazonaws.internal.SdkInternalList(); } return parameters; } /** *

* A list of Parameter structures. *

* * @param parameters * A list of Parameter structures. */ 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. *

*

* 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. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack 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. *

* * @param parameters * A list of Parameter structures. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withParameters(java.util.Collection parameters) { setParameters(parameters); return this; } /** *

* The time at which the stack was created. *

* * @param creationTime * The time at which the stack was created. */ public void setCreationTime(java.util.Date creationTime) { this.creationTime = creationTime; } /** *

* The time at which the stack was created. *

* * @return The time at which the stack was created. */ public java.util.Date getCreationTime() { return this.creationTime; } /** *

* The time at which the stack was created. *

* * @param creationTime * The time at which the stack was created. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withCreationTime(java.util.Date creationTime) { setCreationTime(creationTime); return this; } /** *

* The time the stack was last updated. This field will only be returned if * the stack has been updated at least once. *

* * @param lastUpdatedTime * The time the stack was last updated. This field will only be * returned if the stack has been updated at least once. */ public void setLastUpdatedTime(java.util.Date lastUpdatedTime) { this.lastUpdatedTime = lastUpdatedTime; } /** *

* The time the stack was last updated. This field will only be returned if * the stack has been updated at least once. *

* * @return The time the stack was last updated. This field will only be * returned if the stack has been updated at least once. */ public java.util.Date getLastUpdatedTime() { return this.lastUpdatedTime; } /** *

* The time the stack was last updated. This field will only be returned if * the stack has been updated at least once. *

* * @param lastUpdatedTime * The time the stack was last updated. This field will only be * returned if the stack has been updated at least once. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withLastUpdatedTime(java.util.Date lastUpdatedTime) { setLastUpdatedTime(lastUpdatedTime); return this; } /** *

* Current status of the stack. *

* * @param stackStatus * Current status of the stack. * @see StackStatus */ public void setStackStatus(String stackStatus) { this.stackStatus = stackStatus; } /** *

* Current status of the stack. *

* * @return Current status of the stack. * @see StackStatus */ public String getStackStatus() { return this.stackStatus; } /** *

* Current status of the stack. *

* * @param stackStatus * Current status of the stack. * @return Returns a reference to this object so that method calls can be * chained together. * @see StackStatus */ public Stack withStackStatus(String stackStatus) { setStackStatus(stackStatus); return this; } /** *

* Current status of the stack. *

* * @param stackStatus * Current status of the stack. * @see StackStatus */ public void setStackStatus(StackStatus stackStatus) { this.stackStatus = stackStatus.toString(); } /** *

* Current status of the stack. *

* * @param stackStatus * Current status of the stack. * @return Returns a reference to this object so that method calls can be * chained together. * @see StackStatus */ public Stack withStackStatus(StackStatus stackStatus) { setStackStatus(stackStatus); return this; } /** *

* Success/failure message associated with the stack status. *

* * @param stackStatusReason * Success/failure message associated with the stack status. */ public void setStackStatusReason(String stackStatusReason) { this.stackStatusReason = stackStatusReason; } /** *

* Success/failure message associated with the stack status. *

* * @return Success/failure message associated with the stack status. */ public String getStackStatusReason() { return this.stackStatusReason; } /** *

* Success/failure message associated with the stack status. *

* * @param stackStatusReason * Success/failure message associated with the stack status. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withStackStatusReason(String stackStatusReason) { setStackStatusReason(stackStatusReason); return this; } /** *

* Boolean to enable or disable rollback on stack creation failures: *

*
    *
  • *

    * true: disable rollback *

    *
  • *
  • *

    * false: enable rollback *

    *
  • *
* * @param disableRollback * Boolean to enable or disable rollback on stack creation * failures:

*
    *
  • *

    * true: disable rollback *

    *
  • *
  • *

    * false: enable rollback *

    *
  • */ public void setDisableRollback(Boolean disableRollback) { this.disableRollback = disableRollback; } /** *

    * Boolean to enable or disable rollback on stack creation failures: *

    *
      *
    • *

      * true: disable rollback *

      *
    • *
    • *

      * false: enable rollback *

      *
    • *
    * * @return Boolean to enable or disable rollback on stack creation * failures:

    *
      *
    • *

      * true: disable rollback *

      *
    • *
    • *

      * false: enable rollback *

      *
    • */ public Boolean getDisableRollback() { return this.disableRollback; } /** *

      * Boolean to enable or disable rollback on stack creation failures: *

      *
        *
      • *

        * true: disable rollback *

        *
      • *
      • *

        * false: enable rollback *

        *
      • *
      * * @param disableRollback * Boolean to enable or disable rollback on stack creation * failures:

      *
        *
      • *

        * true: disable rollback *

        *
      • *
      • *

        * false: enable rollback *

        *
      • * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withDisableRollback(Boolean disableRollback) { setDisableRollback(disableRollback); return this; } /** *

        * Boolean to enable or disable rollback on stack creation failures: *

        *
          *
        • *

          * true: disable rollback *

          *
        • *
        • *

          * false: enable rollback *

          *
        • *
        * * @return Boolean to enable or disable rollback on stack creation * failures:

        *
          *
        • *

          * true: disable rollback *

          *
        • *
        • *

          * false: enable rollback *

          *
        • */ public Boolean isDisableRollback() { return this.disableRollback; } /** *

          * SNS topic ARNs to which stack related events are published. *

          * * @return SNS topic ARNs to which stack related events are published. */ public java.util.List getNotificationARNs() { if (notificationARNs == null) { notificationARNs = new com.amazonaws.internal.SdkInternalList(); } return notificationARNs; } /** *

          * SNS topic ARNs to which stack related events are published. *

          * * @param notificationARNs * SNS topic ARNs to which stack related events are published. */ public void setNotificationARNs( java.util.Collection notificationARNs) { if (notificationARNs == null) { this.notificationARNs = null; return; } this.notificationARNs = new com.amazonaws.internal.SdkInternalList( notificationARNs); } /** *

          * SNS topic ARNs to which stack related events are published. *

          *

          * 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 * SNS topic ARNs to which stack related events are published. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack 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; } /** *

          * SNS topic ARNs to which stack related events are published. *

          * * @param notificationARNs * SNS topic ARNs to which stack related events are published. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withNotificationARNs( java.util.Collection notificationARNs) { setNotificationARNs(notificationARNs); return this; } /** *

          * The amount of time within which stack creation should complete. *

          * * @param timeoutInMinutes * The amount of time within which stack creation should complete. */ public void setTimeoutInMinutes(Integer timeoutInMinutes) { this.timeoutInMinutes = timeoutInMinutes; } /** *

          * The amount of time within which stack creation should complete. *

          * * @return The amount of time within which stack creation should complete. */ public Integer getTimeoutInMinutes() { return this.timeoutInMinutes; } /** *

          * The amount of time within which stack creation should complete. *

          * * @param timeoutInMinutes * The amount of time within which stack creation should complete. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withTimeoutInMinutes(Integer timeoutInMinutes) { setTimeoutInMinutes(timeoutInMinutes); return this; } /** *

          * The capabilities allowed in the stack. *

          * * @return The capabilities allowed in the stack. * @see Capability */ public java.util.List getCapabilities() { if (capabilities == null) { capabilities = new com.amazonaws.internal.SdkInternalList(); } return capabilities; } /** *

          * The capabilities allowed in the stack. *

          * * @param capabilities * The capabilities allowed in the stack. * @see Capability */ public void setCapabilities(java.util.Collection capabilities) { if (capabilities == null) { this.capabilities = null; return; } this.capabilities = new com.amazonaws.internal.SdkInternalList( capabilities); } /** *

          * The capabilities allowed in the stack. *

          *

          * 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 * The capabilities allowed in the stack. * @return Returns a reference to this object so that method calls can be * chained together. * @see Capability */ public Stack 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; } /** *

          * The capabilities allowed in the stack. *

          * * @param capabilities * The capabilities allowed in the stack. * @return Returns a reference to this object so that method calls can be * chained together. * @see Capability */ public Stack withCapabilities(java.util.Collection capabilities) { setCapabilities(capabilities); return this; } /** *

          * The capabilities allowed in the stack. *

          * * @param capabilities * The capabilities allowed in the stack. * @return Returns a reference to this object so that method calls can be * chained together. * @see Capability */ public Stack 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; } /** *

          * A list of output structures. *

          * * @return A list of output structures. */ public java.util.List getOutputs() { if (outputs == null) { outputs = new com.amazonaws.internal.SdkInternalList(); } return outputs; } /** *

          * A list of output structures. *

          * * @param outputs * A list of output structures. */ public void setOutputs(java.util.Collection outputs) { if (outputs == null) { this.outputs = null; return; } this.outputs = new com.amazonaws.internal.SdkInternalList( outputs); } /** *

          * A list of output structures. *

          *

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

          * * @param outputs * A list of output structures. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withOutputs(Output... outputs) { if (this.outputs == null) { setOutputs(new com.amazonaws.internal.SdkInternalList( outputs.length)); } for (Output ele : outputs) { this.outputs.add(ele); } return this; } /** *

          * A list of output structures. *

          * * @param outputs * A list of output structures. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withOutputs(java.util.Collection outputs) { setOutputs(outputs); return this; } /** *

          * A list of Tags that specify information about the stack. *

          * * @return A list of Tags that specify information about the * stack. */ public java.util.List getTags() { if (tags == null) { tags = new com.amazonaws.internal.SdkInternalList(); } return tags; } /** *

          * A list of Tags that specify information about the stack. *

          * * @param tags * A list of Tags that specify information about the * stack. */ public void setTags(java.util.Collection tags) { if (tags == null) { this.tags = null; return; } this.tags = new com.amazonaws.internal.SdkInternalList(tags); } /** *

          * A list of Tags that specify information about the stack. *

          *

          * 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 * A list of Tags that specify information about the * stack. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack 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; } /** *

          * A list of Tags that specify information about the stack. *

          * * @param tags * A list of Tags that specify information about the * stack. * @return Returns a reference to this object so that method calls can be * chained together. */ public Stack withTags(java.util.Collection tags) { setTags(tags); 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 (getStackId() != null) sb.append("StackId: " + getStackId() + ","); if (getStackName() != null) sb.append("StackName: " + getStackName() + ","); if (getDescription() != null) sb.append("Description: " + getDescription() + ","); if (getParameters() != null) sb.append("Parameters: " + getParameters() + ","); if (getCreationTime() != null) sb.append("CreationTime: " + getCreationTime() + ","); if (getLastUpdatedTime() != null) sb.append("LastUpdatedTime: " + getLastUpdatedTime() + ","); if (getStackStatus() != null) sb.append("StackStatus: " + getStackStatus() + ","); if (getStackStatusReason() != null) sb.append("StackStatusReason: " + getStackStatusReason() + ","); if (getDisableRollback() != null) sb.append("DisableRollback: " + getDisableRollback() + ","); if (getNotificationARNs() != null) sb.append("NotificationARNs: " + getNotificationARNs() + ","); if (getTimeoutInMinutes() != null) sb.append("TimeoutInMinutes: " + getTimeoutInMinutes() + ","); if (getCapabilities() != null) sb.append("Capabilities: " + getCapabilities() + ","); if (getOutputs() != null) sb.append("Outputs: " + getOutputs() + ","); if (getTags() != null) sb.append("Tags: " + getTags()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof Stack == false) return false; Stack other = (Stack) obj; if (other.getStackId() == null ^ this.getStackId() == null) return false; if (other.getStackId() != null && other.getStackId().equals(this.getStackId()) == false) return false; if (other.getStackName() == null ^ this.getStackName() == null) return false; if (other.getStackName() != null && other.getStackName().equals(this.getStackName()) == false) return false; if (other.getDescription() == null ^ this.getDescription() == null) return false; if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == 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.getCreationTime() == null ^ this.getCreationTime() == null) return false; if (other.getCreationTime() != null && other.getCreationTime().equals(this.getCreationTime()) == false) return false; if (other.getLastUpdatedTime() == null ^ this.getLastUpdatedTime() == null) return false; if (other.getLastUpdatedTime() != null && other.getLastUpdatedTime().equals(this.getLastUpdatedTime()) == false) return false; if (other.getStackStatus() == null ^ this.getStackStatus() == null) return false; if (other.getStackStatus() != null && other.getStackStatus().equals(this.getStackStatus()) == false) return false; if (other.getStackStatusReason() == null ^ this.getStackStatusReason() == null) return false; if (other.getStackStatusReason() != null && other.getStackStatusReason().equals( this.getStackStatusReason()) == false) return false; if (other.getDisableRollback() == null ^ this.getDisableRollback() == null) return false; if (other.getDisableRollback() != null && other.getDisableRollback().equals(this.getDisableRollback()) == 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.getTimeoutInMinutes() == null ^ this.getTimeoutInMinutes() == null) return false; if (other.getTimeoutInMinutes() != null && other.getTimeoutInMinutes().equals( this.getTimeoutInMinutes()) == 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.getOutputs() == null ^ this.getOutputs() == null) return false; if (other.getOutputs() != null && other.getOutputs().equals(this.getOutputs()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getStackId() == null) ? 0 : getStackId().hashCode()); hashCode = prime * hashCode + ((getStackName() == null) ? 0 : getStackName().hashCode()); hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode()); hashCode = prime * hashCode + ((getParameters() == null) ? 0 : getParameters().hashCode()); hashCode = prime * hashCode + ((getCreationTime() == null) ? 0 : getCreationTime() .hashCode()); hashCode = prime * hashCode + ((getLastUpdatedTime() == null) ? 0 : getLastUpdatedTime() .hashCode()); hashCode = prime * hashCode + ((getStackStatus() == null) ? 0 : getStackStatus().hashCode()); hashCode = prime * hashCode + ((getStackStatusReason() == null) ? 0 : getStackStatusReason().hashCode()); hashCode = prime * hashCode + ((getDisableRollback() == null) ? 0 : getDisableRollback() .hashCode()); hashCode = prime * hashCode + ((getNotificationARNs() == null) ? 0 : getNotificationARNs() .hashCode()); hashCode = prime * hashCode + ((getTimeoutInMinutes() == null) ? 0 : getTimeoutInMinutes() .hashCode()); hashCode = prime * hashCode + ((getCapabilities() == null) ? 0 : getCapabilities() .hashCode()); hashCode = prime * hashCode + ((getOutputs() == null) ? 0 : getOutputs().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); return hashCode; } @Override public Stack clone() { try { return (Stack) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy