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

shiver.me.timbers.aws.elasticache.ReplicationGroupNodeGroupConfiguration Maven / Gradle / Ivy

Go to download

This library is a complete mapping of the AWS CloudFormation Resource Specification into Java objects. The objects have been generated directly from the specification so should be a direct one to one mapping.

The newest version!

package shiver.me.timbers.aws.elasticache;

import java.util.LinkedHashSet;
import java.util.Set;
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 com.fasterxml.jackson.databind.annotation.JsonDeserialize;
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;


/**
 * ReplicationGroupNodeGroupConfiguration
 * 

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html * */ @JsonInclude(JsonInclude.Include.NON_EMPTY) @JsonPropertyOrder({ "NodeGroupId", "PrimaryAvailabilityZone", "ReplicaAvailabilityZones", "ReplicaCount", "Slots" }) public class ReplicationGroupNodeGroupConfiguration implements Property { /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-nodegroupid * */ @JsonProperty("NodeGroupId") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-nodegroupid") private CharSequence nodeGroupId; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-primaryavailabilityzone * */ @JsonProperty("PrimaryAvailabilityZone") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-primaryavailabilityzone") private CharSequence primaryAvailabilityZone; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicaavailabilityzones * */ @JsonProperty("ReplicaAvailabilityZones") @JsonDeserialize(as = java.util.LinkedHashSet.class) @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicaavailabilityzones") private Set replicaAvailabilityZones = new LinkedHashSet(); /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicacount * */ @JsonProperty("ReplicaCount") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicacount") private Number replicaCount; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-slots * */ @JsonProperty("Slots") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-slots") private CharSequence slots; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-nodegroupid * */ @JsonIgnore public CharSequence getNodeGroupId() { return nodeGroupId; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-nodegroupid * */ @JsonIgnore public void setNodeGroupId(CharSequence nodeGroupId) { this.nodeGroupId = nodeGroupId; } public ReplicationGroupNodeGroupConfiguration withNodeGroupId(CharSequence nodeGroupId) { this.nodeGroupId = nodeGroupId; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-primaryavailabilityzone * */ @JsonIgnore public CharSequence getPrimaryAvailabilityZone() { return primaryAvailabilityZone; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-primaryavailabilityzone * */ @JsonIgnore public void setPrimaryAvailabilityZone(CharSequence primaryAvailabilityZone) { this.primaryAvailabilityZone = primaryAvailabilityZone; } public ReplicationGroupNodeGroupConfiguration withPrimaryAvailabilityZone(CharSequence primaryAvailabilityZone) { this.primaryAvailabilityZone = primaryAvailabilityZone; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicaavailabilityzones * */ @JsonIgnore public Set getReplicaAvailabilityZones() { return replicaAvailabilityZones; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicaavailabilityzones * */ @JsonIgnore public void setReplicaAvailabilityZones(Set replicaAvailabilityZones) { this.replicaAvailabilityZones = replicaAvailabilityZones; } public ReplicationGroupNodeGroupConfiguration withReplicaAvailabilityZones(Set replicaAvailabilityZones) { this.replicaAvailabilityZones = replicaAvailabilityZones; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicacount * */ @JsonIgnore public Number getReplicaCount() { return replicaCount; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicacount * */ @JsonIgnore public void setReplicaCount(Number replicaCount) { this.replicaCount = replicaCount; } public ReplicationGroupNodeGroupConfiguration withReplicaCount(Number replicaCount) { this.replicaCount = replicaCount; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-slots * */ @JsonIgnore public CharSequence getSlots() { return slots; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-slots * */ @JsonIgnore public void setSlots(CharSequence slots) { this.slots = slots; } public ReplicationGroupNodeGroupConfiguration withSlots(CharSequence slots) { this.slots = slots; return this; } @Override public String toString() { return new ToStringBuilder(this).append("nodeGroupId", nodeGroupId).append("primaryAvailabilityZone", primaryAvailabilityZone).append("replicaAvailabilityZones", replicaAvailabilityZones).append("replicaCount", replicaCount).append("slots", slots).toString(); } @Override public int hashCode() { return new HashCodeBuilder().append(primaryAvailabilityZone).append(replicaCount).append(slots).append(nodeGroupId).append(replicaAvailabilityZones).toHashCode(); } @Override public boolean equals(Object other) { if (other == this) { return true; } if ((other instanceof ReplicationGroupNodeGroupConfiguration) == false) { return false; } ReplicationGroupNodeGroupConfiguration rhs = ((ReplicationGroupNodeGroupConfiguration) other); return new EqualsBuilder().append(primaryAvailabilityZone, rhs.primaryAvailabilityZone).append(replicaCount, rhs.replicaCount).append(slots, rhs.slots).append(nodeGroupId, rhs.nodeGroupId).append(replicaAvailabilityZones, rhs.replicaAvailabilityZones).isEquals(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy