
shiver.me.timbers.aws.networkmanager.Link Maven / Gradle / Ivy
package shiver.me.timbers.aws.networkmanager;
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;
import shiver.me.timbers.aws.Tag;
/**
* Link
*
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html
*
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@JsonPropertyOrder({
"GlobalNetworkId",
"SiteId",
"Bandwidth",
"Provider",
"Description",
"Tags",
"Type"
})
public class Link {
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-globalnetworkid
*
*/
@JsonProperty("GlobalNetworkId")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-globalnetworkid")
private CharSequence globalNetworkId;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-siteid
*
*/
@JsonProperty("SiteId")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-siteid")
private CharSequence siteId;
/**
* LinkBandwidth
*
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-link-bandwidth.html
*
*/
@JsonProperty("Bandwidth")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-link-bandwidth.html")
private Property bandwidth;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-provider
*
*/
@JsonProperty("Provider")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-provider")
private CharSequence provider;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-description
*
*/
@JsonProperty("Description")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-description")
private CharSequence description;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-tags
*
*/
@JsonProperty("Tags")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-tags")
private List> tags = new ArrayList>();
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-type
*
*/
@JsonProperty("Type")
@JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-type")
private CharSequence type;
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-globalnetworkid
*
*/
@JsonIgnore
public CharSequence getGlobalNetworkId() {
return globalNetworkId;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-globalnetworkid
*
*/
@JsonIgnore
public void setGlobalNetworkId(CharSequence globalNetworkId) {
this.globalNetworkId = globalNetworkId;
}
public Link withGlobalNetworkId(CharSequence globalNetworkId) {
this.globalNetworkId = globalNetworkId;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-siteid
*
*/
@JsonIgnore
public CharSequence getSiteId() {
return siteId;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-siteid
*
*/
@JsonIgnore
public void setSiteId(CharSequence siteId) {
this.siteId = siteId;
}
public Link withSiteId(CharSequence siteId) {
this.siteId = siteId;
return this;
}
/**
* LinkBandwidth
*
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-link-bandwidth.html
*
*/
@JsonIgnore
public Property getBandwidth() {
return bandwidth;
}
/**
* LinkBandwidth
*
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkmanager-link-bandwidth.html
*
*/
@JsonIgnore
public void setBandwidth(Property bandwidth) {
this.bandwidth = bandwidth;
}
public Link withBandwidth(Property bandwidth) {
this.bandwidth = bandwidth;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-provider
*
*/
@JsonIgnore
public CharSequence getProvider() {
return provider;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-provider
*
*/
@JsonIgnore
public void setProvider(CharSequence provider) {
this.provider = provider;
}
public Link withProvider(CharSequence provider) {
this.provider = provider;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-description
*
*/
@JsonIgnore
public CharSequence getDescription() {
return description;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-description
*
*/
@JsonIgnore
public void setDescription(CharSequence description) {
this.description = description;
}
public Link withDescription(CharSequence description) {
this.description = description;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-tags
*
*/
@JsonIgnore
public List> getTags() {
return tags;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-tags
*
*/
@JsonIgnore
public void setTags(List> tags) {
this.tags = tags;
}
public Link withTags(List> tags) {
this.tags = tags;
return this;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-type
*
*/
@JsonIgnore
public CharSequence getType() {
return type;
}
/**
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html#cfn-networkmanager-link-type
*
*/
@JsonIgnore
public void setType(CharSequence type) {
this.type = type;
}
public Link withType(CharSequence type) {
this.type = type;
return this;
}
@Override
public String toString() {
return new ToStringBuilder(this).append("globalNetworkId", globalNetworkId).append("siteId", siteId).append("bandwidth", bandwidth).append("provider", provider).append("description", description).append("tags", tags).append("type", type).toString();
}
@Override
public int hashCode() {
return new HashCodeBuilder().append(globalNetworkId).append(bandwidth).append(provider).append(siteId).append(description).append(type).append(tags).toHashCode();
}
@Override
public boolean equals(Object other) {
if (other == this) {
return true;
}
if ((other instanceof Link) == false) {
return false;
}
Link rhs = ((Link) other);
return new EqualsBuilder().append(globalNetworkId, rhs.globalNetworkId).append(bandwidth, rhs.bandwidth).append(provider, rhs.provider).append(siteId, rhs.siteId).append(description, rhs.description).append(type, rhs.type).append(tags, rhs.tags).isEquals();
}
}