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

shiver.me.timbers.aws.elasticloadbalancing.LoadBalancer Maven / Gradle / Ivy


package shiver.me.timbers.aws.elasticloadbalancing;

import java.util.ArrayList;
import java.util.LinkedHashSet;
import java.util.List;
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;
import shiver.me.timbers.aws.Tag;


/**
 * LoadBalancer
 * 

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html * */ @JsonInclude(JsonInclude.Include.NON_EMPTY) @JsonPropertyOrder({ "AccessLoggingPolicy", "AppCookieStickinessPolicy", "AvailabilityZones", "ConnectionDrainingPolicy", "ConnectionSettings", "CrossZone", "HealthCheck", "Instances", "LBCookieStickinessPolicy", "Listeners", "LoadBalancerName", "Policies", "Scheme", "SecurityGroups", "Subnets", "Tags" }) public class LoadBalancer { /** * LoadBalancerAccessLoggingPolicy *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html * */ @JsonProperty("AccessLoggingPolicy") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html") private Property accessLoggingPolicy; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-appcookiestickinesspolicy * */ @JsonProperty("AppCookieStickinessPolicy") @JsonDeserialize(as = java.util.LinkedHashSet.class) @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-appcookiestickinesspolicy") private Set> appCookieStickinessPolicy = new LinkedHashSet>(); /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-availabilityzones * */ @JsonProperty("AvailabilityZones") @JsonDeserialize(as = java.util.LinkedHashSet.class) @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-availabilityzones") private Set availabilityZones = new LinkedHashSet(); /** * LoadBalancerConnectionDrainingPolicy *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html * */ @JsonProperty("ConnectionDrainingPolicy") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html") private Property connectionDrainingPolicy; /** * LoadBalancerConnectionSettings *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html * */ @JsonProperty("ConnectionSettings") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html") private Property connectionSettings; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-crosszone * */ @JsonProperty("CrossZone") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-crosszone") private CharSequence crossZone; /** * LoadBalancerHealthCheck *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html * */ @JsonProperty("HealthCheck") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html") private Property healthCheck; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-instances * */ @JsonProperty("Instances") @JsonDeserialize(as = java.util.LinkedHashSet.class) @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-instances") private Set instances = new LinkedHashSet(); /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-lbcookiestickinesspolicy * */ @JsonProperty("LBCookieStickinessPolicy") @JsonDeserialize(as = java.util.LinkedHashSet.class) @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-lbcookiestickinesspolicy") private Set> lBCookieStickinessPolicy = new LinkedHashSet>(); /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-listeners * */ @JsonProperty("Listeners") @JsonDeserialize(as = java.util.LinkedHashSet.class) @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-listeners") private Set> listeners = new LinkedHashSet>(); /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-elbname * */ @JsonProperty("LoadBalancerName") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-elbname") private CharSequence loadBalancerName; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-policies * */ @JsonProperty("Policies") @JsonDeserialize(as = java.util.LinkedHashSet.class) @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-policies") private Set> policies = new LinkedHashSet>(); /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-scheme * */ @JsonProperty("Scheme") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-scheme") private CharSequence scheme; /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-securitygroups * */ @JsonProperty("SecurityGroups") @JsonDeserialize(as = java.util.LinkedHashSet.class) @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-securitygroups") private Set securityGroups = new LinkedHashSet(); /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-subnets * */ @JsonProperty("Subnets") @JsonDeserialize(as = java.util.LinkedHashSet.class) @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-subnets") private Set subnets = new LinkedHashSet(); /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-elasticloadbalancing-loadbalancer-tags * */ @JsonProperty("Tags") @JsonPropertyDescription("http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-elasticloadbalancing-loadbalancer-tags") private List> tags = new ArrayList>(); /** * LoadBalancerAccessLoggingPolicy *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html * */ @JsonIgnore public Property getAccessLoggingPolicy() { return accessLoggingPolicy; } /** * LoadBalancerAccessLoggingPolicy *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html * */ @JsonIgnore public void setAccessLoggingPolicy(Property accessLoggingPolicy) { this.accessLoggingPolicy = accessLoggingPolicy; } public LoadBalancer withAccessLoggingPolicy(Property accessLoggingPolicy) { this.accessLoggingPolicy = accessLoggingPolicy; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-appcookiestickinesspolicy * */ @JsonIgnore public Set> getAppCookieStickinessPolicy() { return appCookieStickinessPolicy; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-appcookiestickinesspolicy * */ @JsonIgnore public void setAppCookieStickinessPolicy(Set> appCookieStickinessPolicy) { this.appCookieStickinessPolicy = appCookieStickinessPolicy; } public LoadBalancer withAppCookieStickinessPolicy(Set> appCookieStickinessPolicy) { this.appCookieStickinessPolicy = appCookieStickinessPolicy; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-availabilityzones * */ @JsonIgnore public Set getAvailabilityZones() { return availabilityZones; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-availabilityzones * */ @JsonIgnore public void setAvailabilityZones(Set availabilityZones) { this.availabilityZones = availabilityZones; } public LoadBalancer withAvailabilityZones(Set availabilityZones) { this.availabilityZones = availabilityZones; return this; } /** * LoadBalancerConnectionDrainingPolicy *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html * */ @JsonIgnore public Property getConnectionDrainingPolicy() { return connectionDrainingPolicy; } /** * LoadBalancerConnectionDrainingPolicy *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html * */ @JsonIgnore public void setConnectionDrainingPolicy(Property connectionDrainingPolicy) { this.connectionDrainingPolicy = connectionDrainingPolicy; } public LoadBalancer withConnectionDrainingPolicy(Property connectionDrainingPolicy) { this.connectionDrainingPolicy = connectionDrainingPolicy; return this; } /** * LoadBalancerConnectionSettings *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html * */ @JsonIgnore public Property getConnectionSettings() { return connectionSettings; } /** * LoadBalancerConnectionSettings *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html * */ @JsonIgnore public void setConnectionSettings(Property connectionSettings) { this.connectionSettings = connectionSettings; } public LoadBalancer withConnectionSettings(Property connectionSettings) { this.connectionSettings = connectionSettings; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-crosszone * */ @JsonIgnore public CharSequence getCrossZone() { return crossZone; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-crosszone * */ @JsonIgnore public void setCrossZone(CharSequence crossZone) { this.crossZone = crossZone; } public LoadBalancer withCrossZone(CharSequence crossZone) { this.crossZone = crossZone; return this; } /** * LoadBalancerHealthCheck *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html * */ @JsonIgnore public Property getHealthCheck() { return healthCheck; } /** * LoadBalancerHealthCheck *

* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html * */ @JsonIgnore public void setHealthCheck(Property healthCheck) { this.healthCheck = healthCheck; } public LoadBalancer withHealthCheck(Property healthCheck) { this.healthCheck = healthCheck; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-instances * */ @JsonIgnore public Set getInstances() { return instances; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-instances * */ @JsonIgnore public void setInstances(Set instances) { this.instances = instances; } public LoadBalancer withInstances(Set instances) { this.instances = instances; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-lbcookiestickinesspolicy * */ @JsonIgnore public Set> getLBCookieStickinessPolicy() { return lBCookieStickinessPolicy; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-lbcookiestickinesspolicy * */ @JsonIgnore public void setLBCookieStickinessPolicy(Set> lBCookieStickinessPolicy) { this.lBCookieStickinessPolicy = lBCookieStickinessPolicy; } public LoadBalancer withLBCookieStickinessPolicy(Set> lBCookieStickinessPolicy) { this.lBCookieStickinessPolicy = lBCookieStickinessPolicy; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-listeners * */ @JsonIgnore public Set> getListeners() { return listeners; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-listeners * */ @JsonIgnore public void setListeners(Set> listeners) { this.listeners = listeners; } public LoadBalancer withListeners(Set> listeners) { this.listeners = listeners; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-elbname * */ @JsonIgnore public CharSequence getLoadBalancerName() { return loadBalancerName; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-elbname * */ @JsonIgnore public void setLoadBalancerName(CharSequence loadBalancerName) { this.loadBalancerName = loadBalancerName; } public LoadBalancer withLoadBalancerName(CharSequence loadBalancerName) { this.loadBalancerName = loadBalancerName; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-policies * */ @JsonIgnore public Set> getPolicies() { return policies; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-policies * */ @JsonIgnore public void setPolicies(Set> policies) { this.policies = policies; } public LoadBalancer withPolicies(Set> policies) { this.policies = policies; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-scheme * */ @JsonIgnore public CharSequence getScheme() { return scheme; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-scheme * */ @JsonIgnore public void setScheme(CharSequence scheme) { this.scheme = scheme; } public LoadBalancer withScheme(CharSequence scheme) { this.scheme = scheme; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-securitygroups * */ @JsonIgnore public Set getSecurityGroups() { return securityGroups; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-securitygroups * */ @JsonIgnore public void setSecurityGroups(Set securityGroups) { this.securityGroups = securityGroups; } public LoadBalancer withSecurityGroups(Set securityGroups) { this.securityGroups = securityGroups; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-subnets * */ @JsonIgnore public Set getSubnets() { return subnets; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-subnets * */ @JsonIgnore public void setSubnets(Set subnets) { this.subnets = subnets; } public LoadBalancer withSubnets(Set subnets) { this.subnets = subnets; return this; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-elasticloadbalancing-loadbalancer-tags * */ @JsonIgnore public List> getTags() { return tags; } /** * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-elasticloadbalancing-loadbalancer-tags * */ @JsonIgnore public void setTags(List> tags) { this.tags = tags; } public LoadBalancer withTags(List> tags) { this.tags = tags; return this; } @Override public String toString() { return new ToStringBuilder(this).append("accessLoggingPolicy", accessLoggingPolicy).append("appCookieStickinessPolicy", appCookieStickinessPolicy).append("availabilityZones", availabilityZones).append("connectionDrainingPolicy", connectionDrainingPolicy).append("connectionSettings", connectionSettings).append("crossZone", crossZone).append("healthCheck", healthCheck).append("instances", instances).append("lBCookieStickinessPolicy", lBCookieStickinessPolicy).append("listeners", listeners).append("loadBalancerName", loadBalancerName).append("policies", policies).append("scheme", scheme).append("securityGroups", securityGroups).append("subnets", subnets).append("tags", tags).toString(); } @Override public int hashCode() { return new HashCodeBuilder().append(accessLoggingPolicy).append(crossZone).append(lBCookieStickinessPolicy).append(listeners).append(scheme).append(instances).append(policies).append(availabilityZones).append(tags).append(connectionDrainingPolicy).append(loadBalancerName).append(healthCheck).append(connectionSettings).append(securityGroups).append(subnets).append(appCookieStickinessPolicy).toHashCode(); } @Override public boolean equals(Object other) { if (other == this) { return true; } if ((other instanceof LoadBalancer) == false) { return false; } LoadBalancer rhs = ((LoadBalancer) other); return new EqualsBuilder().append(accessLoggingPolicy, rhs.accessLoggingPolicy).append(crossZone, rhs.crossZone).append(lBCookieStickinessPolicy, rhs.lBCookieStickinessPolicy).append(listeners, rhs.listeners).append(scheme, rhs.scheme).append(instances, rhs.instances).append(policies, rhs.policies).append(availabilityZones, rhs.availabilityZones).append(tags, rhs.tags).append(connectionDrainingPolicy, rhs.connectionDrainingPolicy).append(loadBalancerName, rhs.loadBalancerName).append(healthCheck, rhs.healthCheck).append(connectionSettings, rhs.connectionSettings).append(securityGroups, rhs.securityGroups).append(subnets, rhs.subnets).append(appCookieStickinessPolicy, rhs.appCookieStickinessPolicy).isEquals(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy