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

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

There is a newer version: 4.1.1
Show newest version
package io.fabric8.openshift.api.model;

import io.fabric8.kubernetes.api.builder.BaseFluent;
import io.fabric8.kubernetes.api.builder.VisitableBuilder;
import com.fasterxml.jackson.annotation.JsonProperty;
import javax.validation.Valid;
import java.lang.String;
import java.util.List;
import java.util.ArrayList;
import java.lang.Object;
import io.fabric8.kubernetes.api.builder.Nested;

public class LifecycleHookFluentImpl> extends BaseFluent implements LifecycleHookFluent{

    private VisitableBuilder execNewPod;
    private String failurePolicy;
    private List> tagImages =  new ArrayList>();

    public LifecycleHookFluentImpl(){
    }
    public LifecycleHookFluentImpl(LifecycleHook instance){
            this.withExecNewPod(instance.getExecNewPod()); 
            this.withFailurePolicy(instance.getFailurePolicy()); 
            this.withTagImages(instance.getTagImages()); 
    }

    public ExecNewPodHook getExecNewPod(){
            return this.execNewPod!=null?this.execNewPod.build():null;
    }

    public A withExecNewPod(ExecNewPodHook execNewPod){
            if (execNewPod!=null){ this.execNewPod= new ExecNewPodHookBuilder(execNewPod); _visitables.add(this.execNewPod);} return (A) this;
    }

    public LifecycleHookFluent.ExecNewPodNested withNewExecNewPod(){
            return new ExecNewPodNestedImpl();
    }

    public LifecycleHookFluent.ExecNewPodNested withNewExecNewPodLike(ExecNewPodHook item){
            return new ExecNewPodNestedImpl(item);
    }

    public LifecycleHookFluent.ExecNewPodNested editExecNewPod(){
            return withNewExecNewPodLike(getExecNewPod());
    }

    public String getFailurePolicy(){
            return this.failurePolicy;
    }

    public A withFailurePolicy(String failurePolicy){
            this.failurePolicy=failurePolicy; return (A) this;
    }

    public A addToTagImages(TagImageHook... items){
            for (TagImageHook item : items) {TagImageHookBuilder builder = new TagImageHookBuilder(item);_visitables.add(builder);this.tagImages.add(builder);} return (A)this;
    }

    public A removeFromTagImages(TagImageHook... items){
            for (TagImageHook item : items) {TagImageHookBuilder builder = new TagImageHookBuilder(item);_visitables.remove(builder);this.tagImages.remove(builder);} return (A)this;
    }

    public List getTagImages(){
            return build(tagImages);
    }

    public A withTagImages(List tagImages){
            this.tagImages.clear();
            if (tagImages != null) {for (TagImageHook item : tagImages){this.addToTagImages(item);}} return (A) this;
    }

    public A withTagImages(TagImageHook... tagImages){
            this.tagImages.clear(); if (tagImages != null) {for (TagImageHook item :tagImages){ this.addToTagImages(item);}} return (A) this;
    }

    public LifecycleHookFluent.TagImagesNested addNewTagImage(){
            return new TagImagesNestedImpl();
    }

    public LifecycleHookFluent.TagImagesNested addNewTagImageLike(TagImageHook item){
            return new TagImagesNestedImpl(item);
    }

    public boolean equals(Object o){
            if (this == o) return true;
            if (o == null || getClass() != o.getClass()) return false;
            if (!super.equals(o)) return false;
            LifecycleHookFluentImpl that = (LifecycleHookFluentImpl) o;
            if (execNewPod != null ? !execNewPod.equals(that.execNewPod) :that.execNewPod != null) return false;
            if (failurePolicy != null ? !failurePolicy.equals(that.failurePolicy) :that.failurePolicy != null) return false;
            if (tagImages != null ? !tagImages.equals(that.tagImages) :that.tagImages != null) return false;
            return true;
    }


    public class ExecNewPodNestedImpl extends ExecNewPodHookFluentImpl> implements LifecycleHookFluent.ExecNewPodNested,Nested{

            private final ExecNewPodHookBuilder builder;
    
            ExecNewPodNestedImpl(){
                    this.builder = new ExecNewPodHookBuilder(this);
            }
            ExecNewPodNestedImpl(ExecNewPodHook item){
                    this.builder = new ExecNewPodHookBuilder(this, item);
            }
    
    public N and(){
            return (N) LifecycleHookFluentImpl.this.withExecNewPod(builder.build());
    }
    public N endExecNewPod(){
            return and();
    }

}
    public class TagImagesNestedImpl extends TagImageHookFluentImpl> implements LifecycleHookFluent.TagImagesNested,Nested{

            private final TagImageHookBuilder builder;
    
            TagImagesNestedImpl(){
                    this.builder = new TagImageHookBuilder(this);
            }
            TagImagesNestedImpl(TagImageHook item){
                    this.builder = new TagImageHookBuilder(this, item);
            }
    
    public N and(){
            return (N) LifecycleHookFluentImpl.this.addToTagImages(builder.build());
    }
    public N endTagImage(){
            return and();
    }

}


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy