com.nutanix.dp1.pri.prism.v4.serviceability.HttpProxy Maven / Gradle / Ivy
/*
* Generated file ..
*
* Product version: 4.0.3-alpha-2
*
* Part of the Nutanix Prism Versioned APIs
*
* (c) 2023 Nutanix Inc. All rights reserved
*
*/
package com.nutanix.dp1.pri.prism.v4.serviceability;
import com.fasterxml.jackson.annotation.JsonAnySetter;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import lombok.AccessLevel;
import com.nutanix.devplatform.models.PrettyModeViews.*;
import com.fasterxml.jackson.annotation.JsonView;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.nutanix.dp1.pri.deserializers.PriObjectTypeTypedObject;
import javax.validation.constraints.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static com.nutanix.dp1.pri.deserializers.PriDeserializerUtils.*;
/**
* Http proxy used to establish remote tunnel.
*/
@Data
@lombok.extern.slf4j.Slf4j
public class HttpProxy implements java.io.Serializable, PriObjectTypeTypedObject {
public HttpProxy() {
this.$objectType = this.initialize$objectType();
this.$reserved = new java.util.LinkedHashMap<>();
this.$reserved.put("$fqObjectType", this.initialize$fqObjectType());
this.$unknownFields = new java.util.LinkedHashMap<>();
}
@lombok.Builder(builderMethodName = "HttpProxyBuilder")
public HttpProxy(String name, com.nutanix.dp1.pri.common.v1.config.IPAddressOrFQDN addressValue, Integer port, String username, String password, java.util.List proxyTypes) {
this.$objectType = this.initialize$objectType();
this.$reserved = new java.util.LinkedHashMap<>();
this.$reserved.put("$fqObjectType", this.initialize$fqObjectType());
this.$unknownFields = new java.util.LinkedHashMap<>();
this.setName(name);
this.setAddressValue(addressValue);
this.setPort(port);
this.setUsername(username);
this.setPassword(password);
this.setProxyTypes(proxyTypes);
}
protected String initialize$objectType() {
return "prism.v4.serviceability.HttpProxy";
}
protected String initialize$fqObjectType() {
return "prism.v4.r0.a2.serviceability.HttpProxy";
}
@JsonAnySetter
private void setUndeserializedFields(String name, String value) {
$unknownFields.put(name, value);
}
/**
* Proxy name.
*/
@JsonProperty("name")
public String name = null;
/**
*
*/
@JsonProperty("addressValue")
public com.nutanix.dp1.pri.common.v1.config.IPAddressOrFQDN addressValue = null;
/**
* Port on which proxy is binding.
*/
@javax.validation.constraints.Max(value = 65536)
@javax.validation.constraints.Min(value = 0)
@JsonProperty("port")
public Integer port = null;
/**
* Username for proxy authentication.
*/
@JsonProperty("username")
public String username = null;
/**
* Password for proxy authentication.
*/
@JsonProperty("password")
public String password = null;
/**
* Proxy types to send applicable traffic.
*/
@JsonProperty("proxyTypes")
public List proxyTypes = null;
@Getter
@JsonView({StandardView.class})
protected final Map $reserved;
@Getter
@JsonView({StandardView.class})
protected final String $objectType;
@Getter
@JsonView({StandardView.class})
protected final Map $unknownFields;
}