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

io.fabric8.kubernetes.api.model.ContainerManifest Maven / Gradle / Ivy


package io.fabric8.kubernetes.api.model;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Generated;
import javax.validation.Valid;
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;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;


/**
 * 
 * 
 */
@JsonInclude(JsonInclude.Include.NON_NULL)
@Generated("org.jsonschema2pojo")
@JsonPropertyOrder({
    "containers",
    "dnsPolicy",
    "hostNetwork",
    "id",
    "restartPolicy",
    "uuid",
    "version",
    "volumes"
})
public class ContainerManifest {

    /**
     * list of containers belonging to the pod; cannot be updated; containers cannot currently be added or removed
     * 
     */
    @JsonProperty("containers")
    @Valid
    private List containers = new ArrayList();
    /**
     * DNS policy for containers within the pod; one of 'ClusterFirst' or 'Default'
     * 
     */
    @JsonProperty("dnsPolicy")
    private String dnsPolicy;
    /**
     * host networking requested for this pod
     * 
     */
    @JsonProperty("hostNetwork")
    private Boolean hostNetwork;
    /**
     * manifest name; must be a DNS_SUBDOMAIN; cannot be updated
     * 
     */
    @JsonProperty("id")
    private String id;
    /**
     * 
     * 
     */
    @JsonProperty("restartPolicy")
    @Valid
    private RestartPolicy restartPolicy;
    /**
     * manifest UUID; cannot be updated
     * 
     */
    @JsonProperty("uuid")
    private String uuid;
    /**
     * manifest version; must be v1beta1
     * 
     */
    @JsonProperty("version")
    private String version;
    /**
     * list of volumes that can be mounted by containers belonging to the pod
     * 
     */
    @JsonProperty("volumes")
    @Valid
    private List volumes = new ArrayList();
    @JsonIgnore
    private Map additionalProperties = new HashMap();

    /**
     * No args constructor for use in serialization
     * 
     */
    public ContainerManifest() {
    }

    /**
     * 
     * @param id
     * @param containers
     * @param hostNetwork
     * @param dnsPolicy
     * @param volumes
     * @param uuid
     * @param restartPolicy
     * @param version
     */
    public ContainerManifest(List containers, String dnsPolicy, Boolean hostNetwork, String id, RestartPolicy restartPolicy, String uuid, String version, List volumes) {
        this.containers = containers;
        this.dnsPolicy = dnsPolicy;
        this.hostNetwork = hostNetwork;
        this.id = id;
        this.restartPolicy = restartPolicy;
        this.uuid = uuid;
        this.version = version;
        this.volumes = volumes;
    }

    /**
     * list of containers belonging to the pod; cannot be updated; containers cannot currently be added or removed
     * 
     * @return
     *     The containers
     */
    @JsonProperty("containers")
    public List getContainers() {
        return containers;
    }

    /**
     * list of containers belonging to the pod; cannot be updated; containers cannot currently be added or removed
     * 
     * @param containers
     *     The containers
     */
    @JsonProperty("containers")
    public void setContainers(List containers) {
        this.containers = containers;
    }

    /**
     * DNS policy for containers within the pod; one of 'ClusterFirst' or 'Default'
     * 
     * @return
     *     The dnsPolicy
     */
    @JsonProperty("dnsPolicy")
    public String getDnsPolicy() {
        return dnsPolicy;
    }

    /**
     * DNS policy for containers within the pod; one of 'ClusterFirst' or 'Default'
     * 
     * @param dnsPolicy
     *     The dnsPolicy
     */
    @JsonProperty("dnsPolicy")
    public void setDnsPolicy(String dnsPolicy) {
        this.dnsPolicy = dnsPolicy;
    }

    /**
     * host networking requested for this pod
     * 
     * @return
     *     The hostNetwork
     */
    @JsonProperty("hostNetwork")
    public Boolean getHostNetwork() {
        return hostNetwork;
    }

    /**
     * host networking requested for this pod
     * 
     * @param hostNetwork
     *     The hostNetwork
     */
    @JsonProperty("hostNetwork")
    public void setHostNetwork(Boolean hostNetwork) {
        this.hostNetwork = hostNetwork;
    }

    /**
     * manifest name; must be a DNS_SUBDOMAIN; cannot be updated
     * 
     * @return
     *     The id
     */
    @JsonProperty("id")
    public String getId() {
        return id;
    }

    /**
     * manifest name; must be a DNS_SUBDOMAIN; cannot be updated
     * 
     * @param id
     *     The id
     */
    @JsonProperty("id")
    public void setId(String id) {
        this.id = id;
    }

    /**
     * 
     * 
     * @return
     *     The restartPolicy
     */
    @JsonProperty("restartPolicy")
    public RestartPolicy getRestartPolicy() {
        return restartPolicy;
    }

    /**
     * 
     * 
     * @param restartPolicy
     *     The restartPolicy
     */
    @JsonProperty("restartPolicy")
    public void setRestartPolicy(RestartPolicy restartPolicy) {
        this.restartPolicy = restartPolicy;
    }

    /**
     * manifest UUID; cannot be updated
     * 
     * @return
     *     The uuid
     */
    @JsonProperty("uuid")
    public String getUuid() {
        return uuid;
    }

    /**
     * manifest UUID; cannot be updated
     * 
     * @param uuid
     *     The uuid
     */
    @JsonProperty("uuid")
    public void setUuid(String uuid) {
        this.uuid = uuid;
    }

    /**
     * manifest version; must be v1beta1
     * 
     * @return
     *     The version
     */
    @JsonProperty("version")
    public String getVersion() {
        return version;
    }

    /**
     * manifest version; must be v1beta1
     * 
     * @param version
     *     The version
     */
    @JsonProperty("version")
    public void setVersion(String version) {
        this.version = version;
    }

    /**
     * list of volumes that can be mounted by containers belonging to the pod
     * 
     * @return
     *     The volumes
     */
    @JsonProperty("volumes")
    public List getVolumes() {
        return volumes;
    }

    /**
     * list of volumes that can be mounted by containers belonging to the pod
     * 
     * @param volumes
     *     The volumes
     */
    @JsonProperty("volumes")
    public void setVolumes(List volumes) {
        this.volumes = volumes;
    }

    @Override
    public String toString() {
        return ToStringBuilder.reflectionToString(this);
    }

    @JsonAnyGetter
    public Map getAdditionalProperties() {
        return this.additionalProperties;
    }

    @JsonAnySetter
    public void setAdditionalProperty(String name, Object value) {
        this.additionalProperties.put(name, value);
    }

    @Override
    public int hashCode() {
        return new HashCodeBuilder().append(containers).append(dnsPolicy).append(hostNetwork).append(id).append(restartPolicy).append(uuid).append(version).append(volumes).append(additionalProperties).toHashCode();
    }

    @Override
    public boolean equals(Object other) {
        if (other == this) {
            return true;
        }
        if ((other instanceof ContainerManifest) == false) {
            return false;
        }
        ContainerManifest rhs = ((ContainerManifest) other);
        return new EqualsBuilder().append(containers, rhs.containers).append(dnsPolicy, rhs.dnsPolicy).append(hostNetwork, rhs.hostNetwork).append(id, rhs.id).append(restartPolicy, rhs.restartPolicy).append(uuid, rhs.uuid).append(version, rhs.version).append(volumes, rhs.volumes).append(additionalProperties, rhs.additionalProperties).isEquals();
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy