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

shiver.me.timbers.aws.dlm.LifecyclePolicyFastRestoreRule Maven / Gradle / Ivy


package shiver.me.timbers.aws.dlm;

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;


/**
 * LifecyclePolicyFastRestoreRule
 * 

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html * */ @JsonInclude(JsonInclude.Include.NON_EMPTY) @JsonPropertyOrder({ "IntervalUnit", "AvailabilityZones", "Count", "Interval" }) public class LifecyclePolicyFastRestoreRule implements Property { /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-intervalunit * */ @JsonProperty("IntervalUnit") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-intervalunit") private CharSequence intervalUnit; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-availabilityzones * */ @JsonProperty("AvailabilityZones") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-availabilityzones") private List availabilityZones = new ArrayList(); /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-count * */ @JsonProperty("Count") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-count") private Number count; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-interval * */ @JsonProperty("Interval") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-interval") private Number interval; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-intervalunit * */ @JsonIgnore public CharSequence getIntervalUnit() { return intervalUnit; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-intervalunit * */ @JsonIgnore public void setIntervalUnit(CharSequence intervalUnit) { this.intervalUnit = intervalUnit; } public LifecyclePolicyFastRestoreRule withIntervalUnit(CharSequence intervalUnit) { this.intervalUnit = intervalUnit; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-availabilityzones * */ @JsonIgnore public List getAvailabilityZones() { return availabilityZones; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-availabilityzones * */ @JsonIgnore public void setAvailabilityZones(List availabilityZones) { this.availabilityZones = availabilityZones; } public LifecyclePolicyFastRestoreRule withAvailabilityZones(List availabilityZones) { this.availabilityZones = availabilityZones; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-count * */ @JsonIgnore public Number getCount() { return count; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-count * */ @JsonIgnore public void setCount(Number count) { this.count = count; } public LifecyclePolicyFastRestoreRule withCount(Number count) { this.count = count; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-interval * */ @JsonIgnore public Number getInterval() { return interval; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-interval * */ @JsonIgnore public void setInterval(Number interval) { this.interval = interval; } public LifecyclePolicyFastRestoreRule withInterval(Number interval) { this.interval = interval; return this; } @Override public String toString() { return new ToStringBuilder(this).append("intervalUnit", intervalUnit).append("availabilityZones", availabilityZones).append("count", count).append("interval", interval).toString(); } @Override public int hashCode() { return new HashCodeBuilder().append(count).append(availabilityZones).append(interval).append(intervalUnit).toHashCode(); } @Override public boolean equals(Object other) { if (other == this) { return true; } if ((other instanceof LifecyclePolicyFastRestoreRule) == false) { return false; } LifecyclePolicyFastRestoreRule rhs = ((LifecyclePolicyFastRestoreRule) other); return new EqualsBuilder().append(count, rhs.count).append(availabilityZones, rhs.availabilityZones).append(interval, rhs.interval).append(intervalUnit, rhs.intervalUnit).isEquals(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy