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

com.amazonaws.services.redshift.model.OrderableClusterOption Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon Redshift module holds the client classes that are used for communicating with Amazon Redshift Service

There is a newer version: 1.12.780
Show newest version
/*
 * Copyright 2010-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.redshift.model;

import java.io.Serializable;

/**
 * 

* Describes an orderable cluster option. *

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

* The version of the orderable cluster. *

*/ private String clusterVersion; /** *

* The cluster type, for example multi-node. *

*/ private String clusterType; /** *

* The node type for the orderable cluster. *

*/ private String nodeType; /** *

* A list of availability zones for the orderable cluster. *

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

* The version of the orderable cluster. *

* * @param clusterVersion * The version of the orderable cluster. */ public void setClusterVersion(String clusterVersion) { this.clusterVersion = clusterVersion; } /** *

* The version of the orderable cluster. *

* * @return The version of the orderable cluster. */ public String getClusterVersion() { return this.clusterVersion; } /** *

* The version of the orderable cluster. *

* * @param clusterVersion * The version of the orderable cluster. * @return Returns a reference to this object so that method calls can be * chained together. */ public OrderableClusterOption withClusterVersion(String clusterVersion) { setClusterVersion(clusterVersion); return this; } /** *

* The cluster type, for example multi-node. *

* * @param clusterType * The cluster type, for example multi-node. */ public void setClusterType(String clusterType) { this.clusterType = clusterType; } /** *

* The cluster type, for example multi-node. *

* * @return The cluster type, for example multi-node. */ public String getClusterType() { return this.clusterType; } /** *

* The cluster type, for example multi-node. *

* * @param clusterType * The cluster type, for example multi-node. * @return Returns a reference to this object so that method calls can be * chained together. */ public OrderableClusterOption withClusterType(String clusterType) { setClusterType(clusterType); return this; } /** *

* The node type for the orderable cluster. *

* * @param nodeType * The node type for the orderable cluster. */ public void setNodeType(String nodeType) { this.nodeType = nodeType; } /** *

* The node type for the orderable cluster. *

* * @return The node type for the orderable cluster. */ public String getNodeType() { return this.nodeType; } /** *

* The node type for the orderable cluster. *

* * @param nodeType * The node type for the orderable cluster. * @return Returns a reference to this object so that method calls can be * chained together. */ public OrderableClusterOption withNodeType(String nodeType) { setNodeType(nodeType); return this; } /** *

* A list of availability zones for the orderable cluster. *

* * @return A list of availability zones for the orderable cluster. */ public java.util.List getAvailabilityZones() { if (availabilityZones == null) { availabilityZones = new com.amazonaws.internal.SdkInternalList(); } return availabilityZones; } /** *

* A list of availability zones for the orderable cluster. *

* * @param availabilityZones * A list of availability zones for the orderable cluster. */ public void setAvailabilityZones( java.util.Collection availabilityZones) { if (availabilityZones == null) { this.availabilityZones = null; return; } this.availabilityZones = new com.amazonaws.internal.SdkInternalList( availabilityZones); } /** *

* A list of availability zones for the orderable cluster. *

*

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

* * @param availabilityZones * A list of availability zones for the orderable cluster. * @return Returns a reference to this object so that method calls can be * chained together. */ public OrderableClusterOption withAvailabilityZones( AvailabilityZone... availabilityZones) { if (this.availabilityZones == null) { setAvailabilityZones(new com.amazonaws.internal.SdkInternalList( availabilityZones.length)); } for (AvailabilityZone ele : availabilityZones) { this.availabilityZones.add(ele); } return this; } /** *

* A list of availability zones for the orderable cluster. *

* * @param availabilityZones * A list of availability zones for the orderable cluster. * @return Returns a reference to this object so that method calls can be * chained together. */ public OrderableClusterOption withAvailabilityZones( java.util.Collection availabilityZones) { setAvailabilityZones(availabilityZones); 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 (getClusterVersion() != null) sb.append("ClusterVersion: " + getClusterVersion() + ","); if (getClusterType() != null) sb.append("ClusterType: " + getClusterType() + ","); if (getNodeType() != null) sb.append("NodeType: " + getNodeType() + ","); if (getAvailabilityZones() != null) sb.append("AvailabilityZones: " + getAvailabilityZones()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof OrderableClusterOption == false) return false; OrderableClusterOption other = (OrderableClusterOption) obj; if (other.getClusterVersion() == null ^ this.getClusterVersion() == null) return false; if (other.getClusterVersion() != null && other.getClusterVersion().equals(this.getClusterVersion()) == false) return false; if (other.getClusterType() == null ^ this.getClusterType() == null) return false; if (other.getClusterType() != null && other.getClusterType().equals(this.getClusterType()) == false) return false; if (other.getNodeType() == null ^ this.getNodeType() == null) return false; if (other.getNodeType() != null && other.getNodeType().equals(this.getNodeType()) == false) return false; if (other.getAvailabilityZones() == null ^ this.getAvailabilityZones() == null) return false; if (other.getAvailabilityZones() != null && other.getAvailabilityZones().equals( this.getAvailabilityZones()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getClusterVersion() == null) ? 0 : getClusterVersion() .hashCode()); hashCode = prime * hashCode + ((getClusterType() == null) ? 0 : getClusterType().hashCode()); hashCode = prime * hashCode + ((getNodeType() == null) ? 0 : getNodeType().hashCode()); hashCode = prime * hashCode + ((getAvailabilityZones() == null) ? 0 : getAvailabilityZones().hashCode()); return hashCode; } @Override public OrderableClusterOption clone() { try { return (OrderableClusterOption) 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