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

io.fabric8.openshift.api.model.BuildStrategyFluent Maven / Gradle / Ivy

package io.fabric8.openshift.api.model;

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

public class BuildStrategyFluent> extends BaseFluent implements Fluent{

     VisitableBuilder customStrategy;     VisitableBuilder dockerStrategy;     VisitableBuilder sourceStrategy;     String type;     Map additionalProperties = new HashMap();

    public CustomBuildStrategy getCustomStrategy(){
    return this.customStrategy!=null?this.customStrategy.build():null;
    }
    public T withCustomStrategy( CustomBuildStrategy customStrategy){
    if (customStrategy!=null){ this.customStrategy= new CustomBuildStrategyBuilder(customStrategy); _visitables.add(this.customStrategy);} return (T) this;
    }
    public CustomStrategyNested withNewCustomStrategy(){
    return new CustomStrategyNested();
    }
    public CustomStrategyNested withNewCustomStrategyLike( CustomBuildStrategy item){
    return new CustomStrategyNested(item);
    }
    public CustomStrategyNested editCustomStrategy(){
    return withNewCustomStrategyLike(getCustomStrategy());
    }
    public DockerBuildStrategy getDockerStrategy(){
    return this.dockerStrategy!=null?this.dockerStrategy.build():null;
    }
    public T withDockerStrategy( DockerBuildStrategy dockerStrategy){
    if (dockerStrategy!=null){ this.dockerStrategy= new DockerBuildStrategyBuilder(dockerStrategy); _visitables.add(this.dockerStrategy);} return (T) this;
    }
    public DockerStrategyNested withNewDockerStrategy(){
    return new DockerStrategyNested();
    }
    public DockerStrategyNested withNewDockerStrategyLike( DockerBuildStrategy item){
    return new DockerStrategyNested(item);
    }
    public DockerStrategyNested editDockerStrategy(){
    return withNewDockerStrategyLike(getDockerStrategy());
    }
    public SourceBuildStrategy getSourceStrategy(){
    return this.sourceStrategy!=null?this.sourceStrategy.build():null;
    }
    public T withSourceStrategy( SourceBuildStrategy sourceStrategy){
    if (sourceStrategy!=null){ this.sourceStrategy= new SourceBuildStrategyBuilder(sourceStrategy); _visitables.add(this.sourceStrategy);} return (T) this;
    }
    public SourceStrategyNested withNewSourceStrategy(){
    return new SourceStrategyNested();
    }
    public SourceStrategyNested withNewSourceStrategyLike( SourceBuildStrategy item){
    return new SourceStrategyNested(item);
    }
    public SourceStrategyNested editSourceStrategy(){
    return withNewSourceStrategyLike(getSourceStrategy());
    }
    public String getType(){
    return this.type;
    }
    public T withType( String type){
    this.type=type; return (T) this;
    }
    public T addToAdditionalProperties( String key,  Object value){
    if(key != null && value != null) {this.additionalProperties.put(key, value);} 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 class CustomStrategyNested extends CustomBuildStrategyFluent> implements Nested{

        private final CustomBuildStrategyBuilder builder;
    
             CustomStrategyNested (){
        this.builder = new CustomBuildStrategyBuilder(this);
        }
             CustomStrategyNested ( CustomBuildStrategy item){
        this.builder = new CustomBuildStrategyBuilder(item);
        }
    
            public N and(){
            return (N) BuildStrategyFluent.this.withCustomStrategy(builder.build());
        }
            public N endCustomStrategy(){
            return and();
        }
    
}
    public class DockerStrategyNested extends DockerBuildStrategyFluent> implements Nested{

        private final DockerBuildStrategyBuilder builder;
    
             DockerStrategyNested (){
        this.builder = new DockerBuildStrategyBuilder(this);
        }
             DockerStrategyNested ( DockerBuildStrategy item){
        this.builder = new DockerBuildStrategyBuilder(item);
        }
    
            public N endDockerStrategy(){
            return and();
        }
            public N and(){
            return (N) BuildStrategyFluent.this.withDockerStrategy(builder.build());
        }
    
}
    public class SourceStrategyNested extends SourceBuildStrategyFluent> implements Nested{

        private final SourceBuildStrategyBuilder builder;
    
             SourceStrategyNested (){
        this.builder = new SourceBuildStrategyBuilder(this);
        }
             SourceStrategyNested ( SourceBuildStrategy item){
        this.builder = new SourceBuildStrategyBuilder(item);
        }
    
            public N endSourceStrategy(){
            return and();
        }
            public N and(){
            return (N) BuildStrategyFluent.this.withSourceStrategy(builder.build());
        }
    
}


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy