shiver.me.timbers.aws.dax.Cluster Maven / Gradle / Ivy
Show all versions of smt-cloudformation-objects Show documentation
package shiver.me.timbers.aws.dax;
import java.util.ArrayList;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import shiver.me.timbers.aws.Property;
/**
* Cluster
*
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html
*
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@JsonPropertyOrder({
"SSESpecification",
"Description",
"ReplicationFactor",
"ParameterGroupName",
"AvailabilityZones",
"IAMRoleARN",
"SubnetGroupName",
"PreferredMaintenanceWindow",
"NotificationTopicARN",
"SecurityGroupIds",
"NodeType",
"ClusterName",
"Tags"
})
public class Cluster {
/**
* ClusterSSESpecification
*
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html
*
*/
@JsonProperty("SSESpecification")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html")
private Property sSESpecification;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-description
*
*/
@JsonProperty("Description")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-description")
private CharSequence description;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-replicationfactor
*
*/
@JsonProperty("ReplicationFactor")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-replicationfactor")
private Number replicationFactor;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-parametergroupname
*
*/
@JsonProperty("ParameterGroupName")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-parametergroupname")
private CharSequence parameterGroupName;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-availabilityzones
*
*/
@JsonProperty("AvailabilityZones")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-availabilityzones")
private List availabilityZones = new ArrayList();
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-iamrolearn
*
*/
@JsonProperty("IAMRoleARN")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-iamrolearn")
private CharSequence iAMRoleARN;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-subnetgroupname
*
*/
@JsonProperty("SubnetGroupName")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-subnetgroupname")
private CharSequence subnetGroupName;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-preferredmaintenancewindow
*
*/
@JsonProperty("PreferredMaintenanceWindow")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-preferredmaintenancewindow")
private CharSequence preferredMaintenanceWindow;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-notificationtopicarn
*
*/
@JsonProperty("NotificationTopicARN")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-notificationtopicarn")
private CharSequence notificationTopicARN;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-securitygroupids
*
*/
@JsonProperty("SecurityGroupIds")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-securitygroupids")
private List securityGroupIds = new ArrayList();
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-nodetype
*
*/
@JsonProperty("NodeType")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-nodetype")
private CharSequence nodeType;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-clustername
*
*/
@JsonProperty("ClusterName")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-clustername")
private CharSequence clusterName;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-tags
*
*/
@JsonProperty("Tags")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-tags")
private Object tags;
/**
* ClusterSSESpecification
*
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html
*
*/
@JsonIgnore
public Property getSSESpecification() {
return sSESpecification;
}
/**
* ClusterSSESpecification
*
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dax-cluster-ssespecification.html
*
*/
@JsonIgnore
public void setSSESpecification(Property sSESpecification) {
this.sSESpecification = sSESpecification;
}
public Cluster withSSESpecification(Property sSESpecification) {
this.sSESpecification = sSESpecification;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-description
*
*/
@JsonIgnore
public CharSequence getDescription() {
return description;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-description
*
*/
@JsonIgnore
public void setDescription(CharSequence description) {
this.description = description;
}
public Cluster withDescription(CharSequence description) {
this.description = description;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-replicationfactor
*
*/
@JsonIgnore
public Number getReplicationFactor() {
return replicationFactor;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-replicationfactor
*
*/
@JsonIgnore
public void setReplicationFactor(Number replicationFactor) {
this.replicationFactor = replicationFactor;
}
public Cluster withReplicationFactor(Number replicationFactor) {
this.replicationFactor = replicationFactor;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-parametergroupname
*
*/
@JsonIgnore
public CharSequence getParameterGroupName() {
return parameterGroupName;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-parametergroupname
*
*/
@JsonIgnore
public void setParameterGroupName(CharSequence parameterGroupName) {
this.parameterGroupName = parameterGroupName;
}
public Cluster withParameterGroupName(CharSequence parameterGroupName) {
this.parameterGroupName = parameterGroupName;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-availabilityzones
*
*/
@JsonIgnore
public List getAvailabilityZones() {
return availabilityZones;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-availabilityzones
*
*/
@JsonIgnore
public void setAvailabilityZones(List availabilityZones) {
this.availabilityZones = availabilityZones;
}
public Cluster withAvailabilityZones(List availabilityZones) {
this.availabilityZones = availabilityZones;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-iamrolearn
*
*/
@JsonIgnore
public CharSequence getIAMRoleARN() {
return iAMRoleARN;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-iamrolearn
*
*/
@JsonIgnore
public void setIAMRoleARN(CharSequence iAMRoleARN) {
this.iAMRoleARN = iAMRoleARN;
}
public Cluster withIAMRoleARN(CharSequence iAMRoleARN) {
this.iAMRoleARN = iAMRoleARN;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-subnetgroupname
*
*/
@JsonIgnore
public CharSequence getSubnetGroupName() {
return subnetGroupName;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-subnetgroupname
*
*/
@JsonIgnore
public void setSubnetGroupName(CharSequence subnetGroupName) {
this.subnetGroupName = subnetGroupName;
}
public Cluster withSubnetGroupName(CharSequence subnetGroupName) {
this.subnetGroupName = subnetGroupName;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-preferredmaintenancewindow
*
*/
@JsonIgnore
public CharSequence getPreferredMaintenanceWindow() {
return preferredMaintenanceWindow;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-preferredmaintenancewindow
*
*/
@JsonIgnore
public void setPreferredMaintenanceWindow(CharSequence preferredMaintenanceWindow) {
this.preferredMaintenanceWindow = preferredMaintenanceWindow;
}
public Cluster withPreferredMaintenanceWindow(CharSequence preferredMaintenanceWindow) {
this.preferredMaintenanceWindow = preferredMaintenanceWindow;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-notificationtopicarn
*
*/
@JsonIgnore
public CharSequence getNotificationTopicARN() {
return notificationTopicARN;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-notificationtopicarn
*
*/
@JsonIgnore
public void setNotificationTopicARN(CharSequence notificationTopicARN) {
this.notificationTopicARN = notificationTopicARN;
}
public Cluster withNotificationTopicARN(CharSequence notificationTopicARN) {
this.notificationTopicARN = notificationTopicARN;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-securitygroupids
*
*/
@JsonIgnore
public List getSecurityGroupIds() {
return securityGroupIds;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-securitygroupids
*
*/
@JsonIgnore
public void setSecurityGroupIds(List securityGroupIds) {
this.securityGroupIds = securityGroupIds;
}
public Cluster withSecurityGroupIds(List securityGroupIds) {
this.securityGroupIds = securityGroupIds;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-nodetype
*
*/
@JsonIgnore
public CharSequence getNodeType() {
return nodeType;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-nodetype
*
*/
@JsonIgnore
public void setNodeType(CharSequence nodeType) {
this.nodeType = nodeType;
}
public Cluster withNodeType(CharSequence nodeType) {
this.nodeType = nodeType;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-clustername
*
*/
@JsonIgnore
public CharSequence getClusterName() {
return clusterName;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-clustername
*
*/
@JsonIgnore
public void setClusterName(CharSequence clusterName) {
this.clusterName = clusterName;
}
public Cluster withClusterName(CharSequence clusterName) {
this.clusterName = clusterName;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-tags
*
*/
@JsonIgnore
public Object getTags() {
return tags;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html#cfn-dax-cluster-tags
*
*/
@JsonIgnore
public void setTags(Object tags) {
this.tags = tags;
}
public Cluster withTags(Object tags) {
this.tags = tags;
return this;
}
@Override
public String toString() {
return new ToStringBuilder(this).append("sSESpecification", sSESpecification).append("description", description).append("replicationFactor", replicationFactor).append("parameterGroupName", parameterGroupName).append("availabilityZones", availabilityZones).append("iAMRoleARN", iAMRoleARN).append("subnetGroupName", subnetGroupName).append("preferredMaintenanceWindow", preferredMaintenanceWindow).append("notificationTopicARN", notificationTopicARN).append("securityGroupIds", securityGroupIds).append("nodeType", nodeType).append("clusterName", clusterName).append("tags", tags).toString();
}
@Override
public int hashCode() {
return new HashCodeBuilder().append(parameterGroupName).append(replicationFactor).append(sSESpecification).append(description).append(availabilityZones).append(nodeType).append(tags).append(iAMRoleARN).append(notificationTopicARN).append(securityGroupIds).append(preferredMaintenanceWindow).append(clusterName).append(subnetGroupName).toHashCode();
}
@Override
public boolean equals(Object other) {
if (other == this) {
return true;
}
if ((other instanceof Cluster) == false) {
return false;
}
Cluster rhs = ((Cluster) other);
return new EqualsBuilder().append(parameterGroupName, rhs.parameterGroupName).append(replicationFactor, rhs.replicationFactor).append(sSESpecification, rhs.sSESpecification).append(description, rhs.description).append(availabilityZones, rhs.availabilityZones).append(nodeType, rhs.nodeType).append(tags, rhs.tags).append(iAMRoleARN, rhs.iAMRoleARN).append(notificationTopicARN, rhs.notificationTopicARN).append(securityGroupIds, rhs.securityGroupIds).append(preferredMaintenanceWindow, rhs.preferredMaintenanceWindow).append(clusterName, rhs.clusterName).append(subnetGroupName, rhs.subnetGroupName).isEquals();
}
}