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

annotations.io.fabric8.knative.serving.v1.ConfigurationSpecFluentImpl Maven / Gradle / Ivy

package io.fabric8.knative.serving.v1;

import io.fabric8.kubernetes.api.builder.Nested;
import java.lang.Deprecated;
import io.fabric8.kubernetes.api.builder.BaseFluent;
import java.lang.Object;
import java.lang.Boolean;

public class ConfigurationSpecFluentImpl> extends io.fabric8.kubernetes.api.builder.BaseFluent implements io.fabric8.knative.serving.v1.ConfigurationSpecFluent {

    private io.fabric8.knative.serving.v1.RevisionTemplateSpecBuilder template;

    public ConfigurationSpecFluentImpl() {
    }

    public ConfigurationSpecFluentImpl(io.fabric8.knative.serving.v1.ConfigurationSpec instance) {
        this.withTemplate(instance.getTemplate()); 
    }

    
    @java.lang.Deprecated
        
    /**
     * This method has been deprecated, please use method buildTemplate instead.
     * @return The buildable object.
     */
        public io.fabric8.knative.serving.v1.RevisionTemplateSpec getTemplate() {
        return this.template!=null?this.template.build():null;
    }

    public io.fabric8.knative.serving.v1.RevisionTemplateSpec buildTemplate() {
        return this.template!=null?this.template.build():null;
    }

    public A withTemplate(io.fabric8.knative.serving.v1.RevisionTemplateSpec template) {
        _visitables.get("template").remove(this.template);
        if (template!=null){ this.template= new io.fabric8.knative.serving.v1.RevisionTemplateSpecBuilder(template); _visitables.get("template").add(this.template);} return (A) this;
    }

    public java.lang.Boolean hasTemplate() {
        return this.template != null;
    }

    public io.fabric8.knative.serving.v1.ConfigurationSpecFluent.TemplateNested withNewTemplate() {
        return new io.fabric8.knative.serving.v1.ConfigurationSpecFluentImpl.TemplateNestedImpl();
    }

    public io.fabric8.knative.serving.v1.ConfigurationSpecFluent.TemplateNested withNewTemplateLike(io.fabric8.knative.serving.v1.RevisionTemplateSpec item) {
        return new io.fabric8.knative.serving.v1.ConfigurationSpecFluentImpl.TemplateNestedImpl(item);
    }

    public io.fabric8.knative.serving.v1.ConfigurationSpecFluent.TemplateNested editTemplate() {
        return withNewTemplateLike(getTemplate());
    }

    public io.fabric8.knative.serving.v1.ConfigurationSpecFluent.TemplateNested editOrNewTemplate() {
        return withNewTemplateLike(getTemplate() != null ? getTemplate(): new io.fabric8.knative.serving.v1.RevisionTemplateSpecBuilder().build());
    }

    public io.fabric8.knative.serving.v1.ConfigurationSpecFluent.TemplateNested editOrNewTemplateLike(io.fabric8.knative.serving.v1.RevisionTemplateSpec item) {
        return withNewTemplateLike(getTemplate() != null ? getTemplate(): item);
    }

    public boolean equals(java.lang.Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        ConfigurationSpecFluentImpl that = (ConfigurationSpecFluentImpl) o;
        if (template != null ? !template.equals(that.template) :that.template != null) return false;
        return true;
    }

    public int hashCode() {
        return java.util.Objects.hash(template,  super.hashCode());
    }

    public class TemplateNestedImpl extends io.fabric8.knative.serving.v1.RevisionTemplateSpecFluentImpl> implements io.fabric8.knative.serving.v1.ConfigurationSpecFluent.TemplateNested,io.fabric8.kubernetes.api.builder.Nested {
        private final io.fabric8.knative.serving.v1.RevisionTemplateSpecBuilder builder;

            TemplateNestedImpl(io.fabric8.knative.serving.v1.RevisionTemplateSpec item) {
                this.builder = new io.fabric8.knative.serving.v1.RevisionTemplateSpecBuilder(this, item);
                        
            }

            TemplateNestedImpl() {
                this.builder = new io.fabric8.knative.serving.v1.RevisionTemplateSpecBuilder(this);
                        
            }

            public N and() {
                return (N) ConfigurationSpecFluentImpl.this.withTemplate(builder.build());
            }

            public N endTemplate() {
                return and();
            }
    }


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy