package io.apiman.gateway.engine.vertx.polling.fetchers.threescale.beans;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
import com.fasterxml.jackson.annotation.JsonAnyGetter;
import com.fasterxml.jackson.annotation.JsonAnySetter;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
/**
* @author Marc Savy {@literal <marc@rhymewithgravy.com>}
*/
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"proxy_config"
})
public class ProxyConfigRoot implements Serializable
{
@JsonProperty("proxy_config")
private ProxyConfig proxyConfig;
@JsonIgnore
private Map<String, Object> additionalProperties = new HashMap<>();
private final static long serialVersionUID = 3256162881292185464L;
@JsonProperty("proxy_config")
public ProxyConfig getProxyConfig() {
return proxyConfig;
}
@JsonProperty("proxy_config")
public void setProxyConfig(ProxyConfig proxyConfig) {
this.proxyConfig = proxyConfig;
}
public ProxyConfigRoot withProxyConfig(ProxyConfig proxyConfig) {
this.proxyConfig = proxyConfig;
return this;
}
@Override
public String toString() {
return ToStringBuilder.reflectionToString(this);
}
@JsonAnyGetter
public Map<String, Object> getAdditionalProperties() {
return this.additionalProperties;
}
@JsonAnySetter
public void setAdditionalProperty(String name, Object value) {
this.additionalProperties.put(name, value);
}
public ProxyConfigRoot withAdditionalProperty(String name, Object value) {
this.additionalProperties.put(name, value);
return this;
}
@Override
public int hashCode() {
return new HashCodeBuilder().append(proxyConfig).append(additionalProperties).toHashCode();
}
@Override
public boolean equals(Object other) {
if (other == this) {
return true;
}
if ((other instanceof ProxyConfigRoot) == false) {
return false;
}
ProxyConfigRoot rhs = ((ProxyConfigRoot) other);
return new EqualsBuilder().append(proxyConfig, rhs.proxyConfig).append(additionalProperties, rhs.additionalProperties).isEquals();
}
}