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

io.fabric8.knative.eventing.v1alpha1.EventPolicySpecFluent Maven / Gradle / Ivy

package io.fabric8.knative.eventing.v1alpha1;

import io.fabric8.knative.eventing.v1.SubscriptionsAPIFilter;
import io.fabric8.kubernetes.api.builder.VisitableBuilder;
import java.lang.SuppressWarnings;
import io.fabric8.kubernetes.api.builder.Nested;
import java.util.ArrayList;
import java.lang.String;
import java.util.LinkedHashMap;
import java.util.function.Predicate;
import io.fabric8.knative.eventing.v1.SubscriptionsAPIFilterBuilder;
import io.fabric8.kubernetes.api.builder.BaseFluent;
import java.util.Iterator;
import io.fabric8.knative.eventing.v1.SubscriptionsAPIFilterFluent;
import java.util.List;
import java.util.Collection;
import java.lang.Object;
import java.util.Map;

/**
 * Generated
 */
@SuppressWarnings("unchecked")
public class EventPolicySpecFluent> extends BaseFluent{
  public EventPolicySpecFluent() {
  }
  
  public EventPolicySpecFluent(EventPolicySpec instance) {
    this.copyInstance(instance);
  }
  private ArrayList filters = new ArrayList();
  private ArrayList from = new ArrayList();
  private ArrayList to = new ArrayList();
  private Map additionalProperties;
  
  protected void copyInstance(EventPolicySpec instance) {
    instance = (instance != null ? instance : new EventPolicySpec());
    if (instance != null) {
          this.withFilters(instance.getFilters());
          this.withFrom(instance.getFrom());
          this.withTo(instance.getTo());
          this.withAdditionalProperties(instance.getAdditionalProperties());
        }
  }
  
  public A addToFilters(int index,SubscriptionsAPIFilter item) {
    if (this.filters == null) {this.filters = new ArrayList();}
    SubscriptionsAPIFilterBuilder builder = new SubscriptionsAPIFilterBuilder(item);
    if (index < 0 || index >= filters.size()) { _visitables.get("filters").add(builder); filters.add(builder); } else { _visitables.get("filters").add(index, builder); filters.add(index, builder);}
    return (A)this;
  }
  
  public A setToFilters(int index,SubscriptionsAPIFilter item) {
    if (this.filters == null) {this.filters = new ArrayList();}
    SubscriptionsAPIFilterBuilder builder = new SubscriptionsAPIFilterBuilder(item);
    if (index < 0 || index >= filters.size()) { _visitables.get("filters").add(builder); filters.add(builder); } else { _visitables.get("filters").set(index, builder); filters.set(index, builder);}
    return (A)this;
  }
  
  public A addToFilters(io.fabric8.knative.eventing.v1.SubscriptionsAPIFilter... items) {
    if (this.filters == null) {this.filters = new ArrayList();}
    for (SubscriptionsAPIFilter item : items) {SubscriptionsAPIFilterBuilder builder = new SubscriptionsAPIFilterBuilder(item);_visitables.get("filters").add(builder);this.filters.add(builder);} return (A)this;
  }
  
  public A addAllToFilters(Collection items) {
    if (this.filters == null) {this.filters = new ArrayList();}
    for (SubscriptionsAPIFilter item : items) {SubscriptionsAPIFilterBuilder builder = new SubscriptionsAPIFilterBuilder(item);_visitables.get("filters").add(builder);this.filters.add(builder);} return (A)this;
  }
  
  public A removeFromFilters(io.fabric8.knative.eventing.v1.SubscriptionsAPIFilter... items) {
    if (this.filters == null) return (A)this;
    for (SubscriptionsAPIFilter item : items) {SubscriptionsAPIFilterBuilder builder = new SubscriptionsAPIFilterBuilder(item);_visitables.get("filters").remove(builder); this.filters.remove(builder);} return (A)this;
  }
  
  public A removeAllFromFilters(Collection items) {
    if (this.filters == null) return (A)this;
    for (SubscriptionsAPIFilter item : items) {SubscriptionsAPIFilterBuilder builder = new SubscriptionsAPIFilterBuilder(item);_visitables.get("filters").remove(builder); this.filters.remove(builder);} return (A)this;
  }
  
  public A removeMatchingFromFilters(Predicate predicate) {
    if (filters == null) return (A) this;
    final Iterator each = filters.iterator();
    final List visitables = _visitables.get("filters");
    while (each.hasNext()) {
      SubscriptionsAPIFilterBuilder builder = each.next();
      if (predicate.test(builder)) {
        visitables.remove(builder);
        each.remove();
      }
    }
    return (A)this;
  }
  
  public List buildFilters() {
    return this.filters != null ? build(filters) : null;
  }
  
  public SubscriptionsAPIFilter buildFilter(int index) {
    return this.filters.get(index).build();
  }
  
  public SubscriptionsAPIFilter buildFirstFilter() {
    return this.filters.get(0).build();
  }
  
  public SubscriptionsAPIFilter buildLastFilter() {
    return this.filters.get(filters.size() - 1).build();
  }
  
  public SubscriptionsAPIFilter buildMatchingFilter(Predicate predicate) {
      for (SubscriptionsAPIFilterBuilder item : filters) {
        if (predicate.test(item)) {
          return item.build();
        }
      }
      return null;
  }
  
  public boolean hasMatchingFilter(Predicate predicate) {
      for (SubscriptionsAPIFilterBuilder item : filters) {
        if (predicate.test(item)) {
          return true;
        }
      }
      return false;
  }
  
  public A withFilters(List filters) {
    if (this.filters != null) {
      this._visitables.get("filters").clear();
    }
    if (filters != null) {
        this.filters = new ArrayList();
        for (SubscriptionsAPIFilter item : filters) {
          this.addToFilters(item);
        }
    } else {
      this.filters = null;
    }
    return (A) this;
  }
  
  public A withFilters(io.fabric8.knative.eventing.v1.SubscriptionsAPIFilter... filters) {
    if (this.filters != null) {
        this.filters.clear();
        _visitables.remove("filters");
    }
    if (filters != null) {
      for (SubscriptionsAPIFilter item : filters) {
        this.addToFilters(item);
      }
    }
    return (A) this;
  }
  
  public boolean hasFilters() {
    return this.filters != null && !this.filters.isEmpty();
  }
  
  public FiltersNested addNewFilter() {
    return new FiltersNested(-1, null);
  }
  
  public FiltersNested addNewFilterLike(SubscriptionsAPIFilter item) {
    return new FiltersNested(-1, item);
  }
  
  public FiltersNested setNewFilterLike(int index,SubscriptionsAPIFilter item) {
    return new FiltersNested(index, item);
  }
  
  public FiltersNested editFilter(int index) {
    if (filters.size() <= index) throw new RuntimeException("Can't edit filters. Index exceeds size.");
    return setNewFilterLike(index, buildFilter(index));
  }
  
  public FiltersNested editFirstFilter() {
    if (filters.size() == 0) throw new RuntimeException("Can't edit first filters. The list is empty.");
    return setNewFilterLike(0, buildFilter(0));
  }
  
  public FiltersNested editLastFilter() {
    int index = filters.size() - 1;
    if (index < 0) throw new RuntimeException("Can't edit last filters. The list is empty.");
    return setNewFilterLike(index, buildFilter(index));
  }
  
  public FiltersNested editMatchingFilter(Predicate predicate) {
    int index = -1;
    for (int i=0;i();}
    EventPolicySpecFromBuilder builder = new EventPolicySpecFromBuilder(item);
    if (index < 0 || index >= from.size()) { _visitables.get("from").add(builder); from.add(builder); } else { _visitables.get("from").add(index, builder); from.add(index, builder);}
    return (A)this;
  }
  
  public A setToFrom(int index,EventPolicySpecFrom item) {
    if (this.from == null) {this.from = new ArrayList();}
    EventPolicySpecFromBuilder builder = new EventPolicySpecFromBuilder(item);
    if (index < 0 || index >= from.size()) { _visitables.get("from").add(builder); from.add(builder); } else { _visitables.get("from").set(index, builder); from.set(index, builder);}
    return (A)this;
  }
  
  public A addToFrom(io.fabric8.knative.eventing.v1alpha1.EventPolicySpecFrom... items) {
    if (this.from == null) {this.from = new ArrayList();}
    for (EventPolicySpecFrom item : items) {EventPolicySpecFromBuilder builder = new EventPolicySpecFromBuilder(item);_visitables.get("from").add(builder);this.from.add(builder);} return (A)this;
  }
  
  public A addAllToFrom(Collection items) {
    if (this.from == null) {this.from = new ArrayList();}
    for (EventPolicySpecFrom item : items) {EventPolicySpecFromBuilder builder = new EventPolicySpecFromBuilder(item);_visitables.get("from").add(builder);this.from.add(builder);} return (A)this;
  }
  
  public A removeFromFrom(io.fabric8.knative.eventing.v1alpha1.EventPolicySpecFrom... items) {
    if (this.from == null) return (A)this;
    for (EventPolicySpecFrom item : items) {EventPolicySpecFromBuilder builder = new EventPolicySpecFromBuilder(item);_visitables.get("from").remove(builder); this.from.remove(builder);} return (A)this;
  }
  
  public A removeAllFromFrom(Collection items) {
    if (this.from == null) return (A)this;
    for (EventPolicySpecFrom item : items) {EventPolicySpecFromBuilder builder = new EventPolicySpecFromBuilder(item);_visitables.get("from").remove(builder); this.from.remove(builder);} return (A)this;
  }
  
  public A removeMatchingFromFrom(Predicate predicate) {
    if (from == null) return (A) this;
    final Iterator each = from.iterator();
    final List visitables = _visitables.get("from");
    while (each.hasNext()) {
      EventPolicySpecFromBuilder builder = each.next();
      if (predicate.test(builder)) {
        visitables.remove(builder);
        each.remove();
      }
    }
    return (A)this;
  }
  
  public List buildFrom() {
    return this.from != null ? build(from) : null;
  }
  
  public EventPolicySpecFrom buildFrom(int index) {
    return this.from.get(index).build();
  }
  
  public EventPolicySpecFrom buildFirstFrom() {
    return this.from.get(0).build();
  }
  
  public EventPolicySpecFrom buildLastFrom() {
    return this.from.get(from.size() - 1).build();
  }
  
  public EventPolicySpecFrom buildMatchingFrom(Predicate predicate) {
      for (EventPolicySpecFromBuilder item : from) {
        if (predicate.test(item)) {
          return item.build();
        }
      }
      return null;
  }
  
  public boolean hasMatchingFrom(Predicate predicate) {
      for (EventPolicySpecFromBuilder item : from) {
        if (predicate.test(item)) {
          return true;
        }
      }
      return false;
  }
  
  public A withFrom(List from) {
    if (this.from != null) {
      this._visitables.get("from").clear();
    }
    if (from != null) {
        this.from = new ArrayList();
        for (EventPolicySpecFrom item : from) {
          this.addToFrom(item);
        }
    } else {
      this.from = null;
    }
    return (A) this;
  }
  
  public A withFrom(io.fabric8.knative.eventing.v1alpha1.EventPolicySpecFrom... from) {
    if (this.from != null) {
        this.from.clear();
        _visitables.remove("from");
    }
    if (from != null) {
      for (EventPolicySpecFrom item : from) {
        this.addToFrom(item);
      }
    }
    return (A) this;
  }
  
  public boolean hasFrom() {
    return this.from != null && !this.from.isEmpty();
  }
  
  public FromNested addNewFrom() {
    return new FromNested(-1, null);
  }
  
  public FromNested addNewFromLike(EventPolicySpecFrom item) {
    return new FromNested(-1, item);
  }
  
  public FromNested setNewFromLike(int index,EventPolicySpecFrom item) {
    return new FromNested(index, item);
  }
  
  public FromNested editFrom(int index) {
    if (from.size() <= index) throw new RuntimeException("Can't edit from. Index exceeds size.");
    return setNewFromLike(index, buildFrom(index));
  }
  
  public FromNested editFirstFrom() {
    if (from.size() == 0) throw new RuntimeException("Can't edit first from. The list is empty.");
    return setNewFromLike(0, buildFrom(0));
  }
  
  public FromNested editLastFrom() {
    int index = from.size() - 1;
    if (index < 0) throw new RuntimeException("Can't edit last from. The list is empty.");
    return setNewFromLike(index, buildFrom(index));
  }
  
  public FromNested editMatchingFrom(Predicate predicate) {
    int index = -1;
    for (int i=0;i();}
    EventPolicySpecToBuilder builder = new EventPolicySpecToBuilder(item);
    if (index < 0 || index >= to.size()) { _visitables.get("to").add(builder); to.add(builder); } else { _visitables.get("to").add(index, builder); to.add(index, builder);}
    return (A)this;
  }
  
  public A setToTo(int index,EventPolicySpecTo item) {
    if (this.to == null) {this.to = new ArrayList();}
    EventPolicySpecToBuilder builder = new EventPolicySpecToBuilder(item);
    if (index < 0 || index >= to.size()) { _visitables.get("to").add(builder); to.add(builder); } else { _visitables.get("to").set(index, builder); to.set(index, builder);}
    return (A)this;
  }
  
  public A addToTo(io.fabric8.knative.eventing.v1alpha1.EventPolicySpecTo... items) {
    if (this.to == null) {this.to = new ArrayList();}
    for (EventPolicySpecTo item : items) {EventPolicySpecToBuilder builder = new EventPolicySpecToBuilder(item);_visitables.get("to").add(builder);this.to.add(builder);} return (A)this;
  }
  
  public A addAllToTo(Collection items) {
    if (this.to == null) {this.to = new ArrayList();}
    for (EventPolicySpecTo item : items) {EventPolicySpecToBuilder builder = new EventPolicySpecToBuilder(item);_visitables.get("to").add(builder);this.to.add(builder);} return (A)this;
  }
  
  public A removeFromTo(io.fabric8.knative.eventing.v1alpha1.EventPolicySpecTo... items) {
    if (this.to == null) return (A)this;
    for (EventPolicySpecTo item : items) {EventPolicySpecToBuilder builder = new EventPolicySpecToBuilder(item);_visitables.get("to").remove(builder); this.to.remove(builder);} return (A)this;
  }
  
  public A removeAllFromTo(Collection items) {
    if (this.to == null) return (A)this;
    for (EventPolicySpecTo item : items) {EventPolicySpecToBuilder builder = new EventPolicySpecToBuilder(item);_visitables.get("to").remove(builder); this.to.remove(builder);} return (A)this;
  }
  
  public A removeMatchingFromTo(Predicate predicate) {
    if (to == null) return (A) this;
    final Iterator each = to.iterator();
    final List visitables = _visitables.get("to");
    while (each.hasNext()) {
      EventPolicySpecToBuilder builder = each.next();
      if (predicate.test(builder)) {
        visitables.remove(builder);
        each.remove();
      }
    }
    return (A)this;
  }
  
  public List buildTo() {
    return this.to != null ? build(to) : null;
  }
  
  public EventPolicySpecTo buildTo(int index) {
    return this.to.get(index).build();
  }
  
  public EventPolicySpecTo buildFirstTo() {
    return this.to.get(0).build();
  }
  
  public EventPolicySpecTo buildLastTo() {
    return this.to.get(to.size() - 1).build();
  }
  
  public EventPolicySpecTo buildMatchingTo(Predicate predicate) {
      for (EventPolicySpecToBuilder item : to) {
        if (predicate.test(item)) {
          return item.build();
        }
      }
      return null;
  }
  
  public boolean hasMatchingTo(Predicate predicate) {
      for (EventPolicySpecToBuilder item : to) {
        if (predicate.test(item)) {
          return true;
        }
      }
      return false;
  }
  
  public A withTo(List to) {
    if (this.to != null) {
      this._visitables.get("to").clear();
    }
    if (to != null) {
        this.to = new ArrayList();
        for (EventPolicySpecTo item : to) {
          this.addToTo(item);
        }
    } else {
      this.to = null;
    }
    return (A) this;
  }
  
  public A withTo(io.fabric8.knative.eventing.v1alpha1.EventPolicySpecTo... to) {
    if (this.to != null) {
        this.to.clear();
        _visitables.remove("to");
    }
    if (to != null) {
      for (EventPolicySpecTo item : to) {
        this.addToTo(item);
      }
    }
    return (A) this;
  }
  
  public boolean hasTo() {
    return this.to != null && !this.to.isEmpty();
  }
  
  public ToNested addNewTo() {
    return new ToNested(-1, null);
  }
  
  public ToNested addNewToLike(EventPolicySpecTo item) {
    return new ToNested(-1, item);
  }
  
  public ToNested setNewToLike(int index,EventPolicySpecTo item) {
    return new ToNested(index, item);
  }
  
  public ToNested editTo(int index) {
    if (to.size() <= index) throw new RuntimeException("Can't edit to. Index exceeds size.");
    return setNewToLike(index, buildTo(index));
  }
  
  public ToNested editFirstTo() {
    if (to.size() == 0) throw new RuntimeException("Can't edit first to. The list is empty.");
    return setNewToLike(0, buildTo(0));
  }
  
  public ToNested editLastTo() {
    int index = to.size() - 1;
    if (index < 0) throw new RuntimeException("Can't edit last to. The list is empty.");
    return setNewToLike(index, buildTo(index));
  }
  
  public ToNested editMatchingTo(Predicate predicate) {
    int index = -1;
    for (int i=0;i map) {
    if(this.additionalProperties == null && map != null) { this.additionalProperties = new LinkedHashMap(); }
    if(map != null) { this.additionalProperties.putAll(map);} return (A)this;
  }
  
  public A removeFromAdditionalProperties(String key) {
    if(this.additionalProperties == null) { return (A) this; }
    if(key != null && this.additionalProperties != null) {this.additionalProperties.remove(key);} return (A)this;
  }
  
  public A removeFromAdditionalProperties(Map map) {
    if(this.additionalProperties == null) { return (A) this; }
    if(map != null) { for(Object key : map.keySet()) {if (this.additionalProperties != null){this.additionalProperties.remove(key);}}} return (A)this;
  }
  
  public Map getAdditionalProperties() {
    return this.additionalProperties;
  }
  
  public A withAdditionalProperties(Map additionalProperties) {
    if (additionalProperties == null) {
      this.additionalProperties = null;
    } else {
      this.additionalProperties = new LinkedHashMap(additionalProperties);
    }
    return (A) this;
  }
  
  public boolean hasAdditionalProperties() {
    return this.additionalProperties != null;
  }
  
  public boolean equals(Object o) {
    if (this == o) return true;
    if (o == null || getClass() != o.getClass()) return false;
    if (!super.equals(o)) return false;
    EventPolicySpecFluent that = (EventPolicySpecFluent) o;
    if (!java.util.Objects.equals(filters, that.filters)) return false;
    if (!java.util.Objects.equals(from, that.from)) return false;
    if (!java.util.Objects.equals(to, that.to)) return false;
    if (!java.util.Objects.equals(additionalProperties, that.additionalProperties)) return false;
    return true;
  }
  
  public int hashCode() {
    return java.util.Objects.hash(filters,  from,  to,  additionalProperties,  super.hashCode());
  }
  
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("{");
    if (filters != null && !filters.isEmpty()) { sb.append("filters:"); sb.append(filters + ","); }
    if (from != null && !from.isEmpty()) { sb.append("from:"); sb.append(from + ","); }
    if (to != null && !to.isEmpty()) { sb.append("to:"); sb.append(to + ","); }
    if (additionalProperties != null && !additionalProperties.isEmpty()) { sb.append("additionalProperties:"); sb.append(additionalProperties); }
    sb.append("}");
    return sb.toString();
  }
  public class FiltersNested extends SubscriptionsAPIFilterFluent> implements Nested{
    FiltersNested(int index,SubscriptionsAPIFilter item) {
      this.index = index;
      this.builder = new SubscriptionsAPIFilterBuilder(this, item);
    }
    SubscriptionsAPIFilterBuilder builder;
    int index;
    
    public N and() {
      return (N) EventPolicySpecFluent.this.setToFilters(index,builder.build());
    }
    
    public N endFilter() {
      return and();
    }
    
  
  }
  public class FromNested extends EventPolicySpecFromFluent> implements Nested{
    FromNested(int index,EventPolicySpecFrom item) {
      this.index = index;
      this.builder = new EventPolicySpecFromBuilder(this, item);
    }
    EventPolicySpecFromBuilder builder;
    int index;
    
    public N and() {
      return (N) EventPolicySpecFluent.this.setToFrom(index,builder.build());
    }
    
    public N endFrom() {
      return and();
    }
    
  
  }
  public class ToNested extends EventPolicySpecToFluent> implements Nested{
    ToNested(int index,EventPolicySpecTo item) {
      this.index = index;
      this.builder = new EventPolicySpecToBuilder(this, item);
    }
    EventPolicySpecToBuilder builder;
    int index;
    
    public N and() {
      return (N) EventPolicySpecFluent.this.setToTo(index,builder.build());
    }
    
    public N endTo() {
      return and();
    }
    
  
  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy