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

me.snowdrop.istio.api.policy.v1beta1.HeaderOperationTemplateFluentImpl Maven / Gradle / Ivy

package me.snowdrop.istio.api.policy.v1beta1;

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

public class HeaderOperationTemplateFluentImpl> extends io.fabric8.kubernetes.api.builder.BaseFluent implements HeaderOperationTemplateFluent{

    private String name;
    private me.snowdrop.istio.api.policy.v1beta1.Operation operation;
    private List values;

    public HeaderOperationTemplateFluentImpl(){
    }
    public HeaderOperationTemplateFluentImpl(HeaderOperationTemplate instance){
            this.withName(instance.getName()); 
            this.withOperation(instance.getOperation()); 
            this.withValues(instance.getValues()); 
    }

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

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

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

    public me.snowdrop.istio.api.policy.v1beta1.Operation getOperation(){
            return this.operation;
    }

    public A withOperation(me.snowdrop.istio.api.policy.v1beta1.Operation operation){
            this.operation=operation; return (A) this;
    }

    public Boolean hasOperation(){
            return this.operation != null;
    }

    public A addToValues(int index,String item){
            if (this.values == null) {this.values = new ArrayList();}
            this.values.add(index, item);
            return (A)this;
    }

    public A setToValues(int index,String item){
            if (this.values == null) {this.values = new ArrayList();}
            this.values.set(index, item); return (A)this;
    }

    public A addToValues(String... items){
            if (this.values == null) {this.values = new ArrayList();}
            for (String item : items) {this.values.add(item);} return (A)this;
    }

    public A addAllToValues(Collection items){
            if (this.values == null) {this.values = new ArrayList();}
            for (String item : items) {this.values.add(item);} return (A)this;
    }

    public A removeFromValues(String... items){
            for (String item : items) {if (this.values!= null){ this.values.remove(item);}} return (A)this;
    }

    public A removeAllFromValues(Collection items){
            for (String item : items) {if (this.values!= null){ this.values.remove(item);}} return (A)this;
    }

    public List getValues(){
            return this.values;
    }

    public String getValue(int index){
            return this.values.get(index);
    }

    public String getFirstValue(){
            return this.values.get(0);
    }

    public String getLastValue(){
            return this.values.get(values.size() - 1);
    }

    public String getMatchingValue(io.fabric8.kubernetes.api.builder.Predicate predicate){
            for (String item: values) { if(predicate.apply(item)){return item;} } return null;
    }

    public A withValues(List values){
            if (this.values != null) { _visitables.removeAll(this.values);}
            if (values != null) {this.values = new ArrayList(); for (String item : values){this.addToValues(item);}} else { this.values = null;} return (A) this;
    }

    public A withValues(String... values){
            if (this.values != null) {this.values.clear();}
            if (values != null) {for (String item :values){ this.addToValues(item);}} return (A) this;
    }

    public Boolean hasValues(){
            return values != null && !values.isEmpty();
    }

    public boolean equals(Object o){
            if (this == o) return true;
            if (o == null || getClass() != o.getClass()) return false;
            if (!super.equals(o)) return false;
            HeaderOperationTemplateFluentImpl that = (HeaderOperationTemplateFluentImpl) o;
            if (name != null ? !name.equals(that.name) :that.name != null) return false;
            if (operation != null ? !operation.equals(that.operation) :that.operation != null) return false;
            if (values != null ? !values.equals(that.values) :that.values != null) return false;
            return true;
    }




}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy