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

io.fabric8.kubernetes.api.model.ServiceFluent 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 ServiceFluent> implements Fluent{

    private Service.ApiVersion apiVersion ;
    private String kind ;
    private ObjectMeta metadata ;
    private ServiceSpec spec ;
    private ServiceStatus status ;
    private Map additionalProperties  = new HashMap();

    public Service.ApiVersion getApiVersion(){
    return this.apiVersion;
    }
    public T withApiVersion(Service.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 ServiceSpec getSpec(){
    return this.spec;
    }
    public T withSpec(ServiceSpec spec){
    this.spec=spec; return (T) this;
    }
    public ServiceStatus getStatus(){
    return this.status;
    }
    public T withStatus(ServiceStatus 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 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) ServiceFluent.this.withMetadata(builder.build());
        }
            public N endMetadata(){
            return and();
        }
    
}
    public class SpecNested extends ServiceSpecFluent> implements Nested{

        private final ServiceSpecBuilder builder = new ServiceSpecBuilder(this);
    
            public N and(){
            return (N) ServiceFluent.this.withSpec(builder.build());
        }
            public N endSpec(){
            return and();
        }
    
}


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy