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

me.snowdrop.istio.api.model.v1.networking.SubsetFluentImpl Maven / Gradle / Ivy

package me.snowdrop.istio.api.model.v1.networking;

import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.fabric8.kubernetes.api.builder.Nested;
import java.lang.String;
import java.util.LinkedHashMap;
import java.lang.Deprecated;
import javax.validation.Valid;
import io.fabric8.kubernetes.api.builder.BaseFluent;
import java.lang.Object;
import java.lang.Boolean;
import java.util.Map;

public class SubsetFluentImpl> extends io.fabric8.kubernetes.api.builder.BaseFluent implements SubsetFluent{

    private Map labels;
    private String name;
    private TrafficPolicyBuilder trafficPolicy;

    public SubsetFluentImpl(){
    }
    public SubsetFluentImpl(Subset instance){
            this.withLabels(instance.getLabels()); 
            this.withName(instance.getName()); 
            this.withTrafficPolicy(instance.getTrafficPolicy()); 
    }

    public A addToLabels(String key,String value){
            if(this.labels == null && key != null && value != null) { this.labels = new LinkedHashMap(); }
            if(key != null && value != null) {this.labels.put(key, value);} return (A)this;
    }

    public A addToLabels(Map map){
            if(this.labels == null && map != null) { this.labels = new LinkedHashMap(); }
            if(map != null) { this.labels.putAll(map);} return (A)this;
    }

    public A removeFromLabels(String key){
            if(this.labels == null) { return (A) this; }
            if(key != null && this.labels != null) {this.labels.remove(key);} return (A)this;
    }

    public A removeFromLabels(Map map){
            if(this.labels == null) { return (A) this; }
            if(map != null) { for(Object key : map.keySet()) {if (this.labels != null){this.labels.remove(key);}}} return (A)this;
    }

    public Map getLabels(){
            return this.labels;
    }

    public A withLabels(Map labels){
            if (labels == null) { this.labels =  null;} else {this.labels = new LinkedHashMap(labels);} return (A) this;
    }

    public Boolean hasLabels(){
            return this.labels != null;
    }

    public String getName(){
            return this.name;
    }

    public A withName(String name){
            this.name=name; return (A) this;
    }

    public Boolean hasName(){
            return this.name != null;
    }

    
/**
 * This method has been deprecated, please use method buildTrafficPolicy instead.
 */
@Deprecated public TrafficPolicy getTrafficPolicy(){
            return this.trafficPolicy!=null?this.trafficPolicy.build():null;
    }

    public TrafficPolicy buildTrafficPolicy(){
            return this.trafficPolicy!=null?this.trafficPolicy.build():null;
    }

    public A withTrafficPolicy(TrafficPolicy trafficPolicy){
            _visitables.remove(this.trafficPolicy);
            if (trafficPolicy!=null){ this.trafficPolicy= new TrafficPolicyBuilder(trafficPolicy); _visitables.add(this.trafficPolicy);} return (A) this;
    }

    public Boolean hasTrafficPolicy(){
            return this.trafficPolicy != null;
    }

    public SubsetFluent.TrafficPolicyNested withNewTrafficPolicy(){
            return new TrafficPolicyNestedImpl();
    }

    public SubsetFluent.TrafficPolicyNested withNewTrafficPolicyLike(TrafficPolicy item){
            return new TrafficPolicyNestedImpl(item);
    }

    public SubsetFluent.TrafficPolicyNested editTrafficPolicy(){
            return withNewTrafficPolicyLike(getTrafficPolicy());
    }

    public SubsetFluent.TrafficPolicyNested editOrNewTrafficPolicy(){
            return withNewTrafficPolicyLike(getTrafficPolicy() != null ? getTrafficPolicy(): new TrafficPolicyBuilder().build());
    }

    public SubsetFluent.TrafficPolicyNested editOrNewTrafficPolicyLike(TrafficPolicy item){
            return withNewTrafficPolicyLike(getTrafficPolicy() != null ? getTrafficPolicy(): 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;
            SubsetFluentImpl that = (SubsetFluentImpl) o;
            if (labels != null ? !labels.equals(that.labels) :that.labels != null) return false;
            if (name != null ? !name.equals(that.name) :that.name != null) return false;
            if (trafficPolicy != null ? !trafficPolicy.equals(that.trafficPolicy) :that.trafficPolicy != null) return false;
            return true;
    }


    public class TrafficPolicyNestedImpl extends TrafficPolicyFluentImpl> implements SubsetFluent.TrafficPolicyNested,io.fabric8.kubernetes.api.builder.Nested{

            private final TrafficPolicyBuilder builder;
    
            TrafficPolicyNestedImpl(TrafficPolicy item){
                    this.builder = new TrafficPolicyBuilder(this, item);
            }
            TrafficPolicyNestedImpl(){
                    this.builder = new TrafficPolicyBuilder(this);
            }
    
    public N and(){
            return (N) SubsetFluentImpl.this.withTrafficPolicy(builder.build());
    }
    public N endTrafficPolicy(){
            return and();
    }

}


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy