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

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

package io.fabric8.kubernetes.api.model;

import java.util.HashMap;
import java.util.Map;
import io.fabric8.common.Nested;
import io.fabric8.common.Fluent;

public class NodeFluent> implements Fluent{

    private Node.ApiVersion apiVersion ;
    private String kind ;
    private ObjectMeta metadata ;
    private NodeSpec spec ;
    private NodeStatus status ;
    private Map additionalProperties  = new HashMap();

    public Node.ApiVersion getApiVersion(){
    return this.apiVersion;
    }
    public T withApiVersion(Node.ApiVersion apiVersion){
    this.apiVersion=apiVersion; return (T) this;
    }
    public String getKind(){
    return this.kind;
    }
    public T withKind(String kind){
    this.kind=kind; return (T) this;
    }
    public ObjectMeta getMetadata(){
    return this.metadata;
    }
    public T withMetadata(ObjectMeta metadata){
    this.metadata=metadata; return (T) this;
    }
    public NodeSpec getSpec(){
    return this.spec;
    }
    public T withSpec(NodeSpec spec){
    this.spec=spec; return (T) this;
    }
    public NodeStatus getStatus(){
    return this.status;
    }
    public T withStatus(NodeStatus status){
    this.status=status; return (T) this;
    }
    public Map getAdditionalProperties(){
    return this.additionalProperties;
    }
    public T withAdditionalProperties(Map additionalProperties){
    this.additionalProperties.clear();if (additionalProperties != null) {this.additionalProperties.putAll(additionalProperties);} return (T) this;
    }
    public MetadataNested withNewMetadata(){
    return new MetadataNested();
    }
    public SpecNested withNewSpec(){
    return new SpecNested();
    }
    public T withNewSpec(String externalID, String podCIDR, Boolean unschedulable){
    return withSpec(new NodeSpec(externalID, podCIDR, unschedulable));
    }
    public StatusNested withNewStatus(){
    return new StatusNested();
    }
    public T addToAdditionalProperties(String key, Object value){
    if(key != null && value != null) {this.additionalProperties.put(key, value);} return (T)this;
    }

    public class MetadataNested extends ObjectMetaFluent> implements Nested{

        private final ObjectMetaBuilder builder = new ObjectMetaBuilder(this);
    
            public N and(){
            return (N) NodeFluent.this.withMetadata(builder.build());
        }
            public N endMetadata(){
            return and();
        }
    
}
    public class SpecNested extends NodeSpecFluent> implements Nested{

        private final NodeSpecBuilder builder = new NodeSpecBuilder(this);
    
            public N endSpec(){
            return and();
        }
            public N and(){
            return (N) NodeFluent.this.withSpec(builder.build());
        }
    
}
    public class StatusNested extends NodeStatusFluent> implements Nested{

        private final NodeStatusBuilder builder = new NodeStatusBuilder(this);
    
            public N and(){
            return (N) NodeFluent.this.withStatus(builder.build());
        }
            public N endStatus(){
            return and();
        }
    
}


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy