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

io.fabric8.openshift.api.model.installer.ovirt.v1.MachinePoolFluent Maven / Gradle / Ivy

package io.fabric8.openshift.api.model.installer.ovirt.v1;

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.kubernetes.api.builder.BaseFluent;
import java.util.List;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.Long;
import java.util.Collection;
import java.lang.Object;
import java.util.Map;

/**
 * Generated
 */
@SuppressWarnings("unchecked")
public class MachinePoolFluent> extends BaseFluent{
  public MachinePoolFluent() {
  }
  
  public MachinePoolFluent(MachinePool instance) {
    this.copyInstance(instance);
  }
  private List affinityGroupsNames = new ArrayList();
  private String autoPinningPolicy;
  private Boolean clone;
  private CPUBuilder cpu;
  private String format;
  private Integer hugepages;
  private String instanceTypeID;
  private Integer memoryMB;
  private DiskBuilder osDisk;
  private Boolean sparse;
  private String vmType;
  private Map additionalProperties;
  
  protected void copyInstance(MachinePool instance) {
    instance = (instance != null ? instance : new MachinePool());
    if (instance != null) {
          this.withAffinityGroupsNames(instance.getAffinityGroupsNames());
          this.withAutoPinningPolicy(instance.getAutoPinningPolicy());
          this.withClone(instance.getClone());
          this.withCpu(instance.getCpu());
          this.withFormat(instance.getFormat());
          this.withHugepages(instance.getHugepages());
          this.withInstanceTypeID(instance.getInstanceTypeID());
          this.withMemoryMB(instance.getMemoryMB());
          this.withOsDisk(instance.getOsDisk());
          this.withSparse(instance.getSparse());
          this.withVmType(instance.getVmType());
          this.withAdditionalProperties(instance.getAdditionalProperties());
        }
  }
  
  public A addToAffinityGroupsNames(int index,String item) {
    if (this.affinityGroupsNames == null) {this.affinityGroupsNames = new ArrayList();}
    this.affinityGroupsNames.add(index, item);
    return (A)this;
  }
  
  public A setToAffinityGroupsNames(int index,String item) {
    if (this.affinityGroupsNames == null) {this.affinityGroupsNames = new ArrayList();}
    this.affinityGroupsNames.set(index, item); return (A)this;
  }
  
  public A addToAffinityGroupsNames(java.lang.String... items) {
    if (this.affinityGroupsNames == null) {this.affinityGroupsNames = new ArrayList();}
    for (String item : items) {this.affinityGroupsNames.add(item);} return (A)this;
  }
  
  public A addAllToAffinityGroupsNames(Collection items) {
    if (this.affinityGroupsNames == null) {this.affinityGroupsNames = new ArrayList();}
    for (String item : items) {this.affinityGroupsNames.add(item);} return (A)this;
  }
  
  public A removeFromAffinityGroupsNames(java.lang.String... items) {
    if (this.affinityGroupsNames == null) return (A)this;
    for (String item : items) { this.affinityGroupsNames.remove(item);} return (A)this;
  }
  
  public A removeAllFromAffinityGroupsNames(Collection items) {
    if (this.affinityGroupsNames == null) return (A)this;
    for (String item : items) { this.affinityGroupsNames.remove(item);} return (A)this;
  }
  
  public List getAffinityGroupsNames() {
    return this.affinityGroupsNames;
  }
  
  public String getAffinityGroupsName(int index) {
    return this.affinityGroupsNames.get(index);
  }
  
  public String getFirstAffinityGroupsName() {
    return this.affinityGroupsNames.get(0);
  }
  
  public String getLastAffinityGroupsName() {
    return this.affinityGroupsNames.get(affinityGroupsNames.size() - 1);
  }
  
  public String getMatchingAffinityGroupsName(Predicate predicate) {
      for (String item : affinityGroupsNames) {
        if (predicate.test(item)) {
          return item;
        }
      }
      return null;
  }
  
  public boolean hasMatchingAffinityGroupsName(Predicate predicate) {
      for (String item : affinityGroupsNames) {
        if (predicate.test(item)) {
          return true;
        }
      }
      return false;
  }
  
  public A withAffinityGroupsNames(List affinityGroupsNames) {
    if (affinityGroupsNames != null) {
        this.affinityGroupsNames = new ArrayList();
        for (String item : affinityGroupsNames) {
          this.addToAffinityGroupsNames(item);
        }
    } else {
      this.affinityGroupsNames = null;
    }
    return (A) this;
  }
  
  public A withAffinityGroupsNames(java.lang.String... affinityGroupsNames) {
    if (this.affinityGroupsNames != null) {
        this.affinityGroupsNames.clear();
        _visitables.remove("affinityGroupsNames");
    }
    if (affinityGroupsNames != null) {
      for (String item : affinityGroupsNames) {
        this.addToAffinityGroupsNames(item);
      }
    }
    return (A) this;
  }
  
  public boolean hasAffinityGroupsNames() {
    return this.affinityGroupsNames != null && !this.affinityGroupsNames.isEmpty();
  }
  
  public String getAutoPinningPolicy() {
    return this.autoPinningPolicy;
  }
  
  public A withAutoPinningPolicy(String autoPinningPolicy) {
    this.autoPinningPolicy = autoPinningPolicy;
    return (A) this;
  }
  
  public boolean hasAutoPinningPolicy() {
    return this.autoPinningPolicy != null;
  }
  
  public Boolean getClone() {
    return this.clone;
  }
  
  public A withClone(Boolean clone) {
    this.clone = clone;
    return (A) this;
  }
  
  public boolean hasClone() {
    return this.clone != null;
  }
  
  public CPU buildCpu() {
    return this.cpu != null ? this.cpu.build() : null;
  }
  
  public A withCpu(CPU cpu) {
    this._visitables.remove("cpu");
    if (cpu != null) {
        this.cpu = new CPUBuilder(cpu);
        this._visitables.get("cpu").add(this.cpu);
    } else {
        this.cpu = null;
        this._visitables.get("cpu").remove(this.cpu);
    }
    return (A) this;
  }
  
  public boolean hasCpu() {
    return this.cpu != null;
  }
  
  public A withNewCpu(Integer cores,Integer sockets,Integer threads) {
    return (A)withCpu(new CPU(cores, sockets, threads));
  }
  
  public CpuNested withNewCpu() {
    return new CpuNested(null);
  }
  
  public CpuNested withNewCpuLike(CPU item) {
    return new CpuNested(item);
  }
  
  public CpuNested editCpu() {
    return withNewCpuLike(java.util.Optional.ofNullable(buildCpu()).orElse(null));
  }
  
  public CpuNested editOrNewCpu() {
    return withNewCpuLike(java.util.Optional.ofNullable(buildCpu()).orElse(new CPUBuilder().build()));
  }
  
  public CpuNested editOrNewCpuLike(CPU item) {
    return withNewCpuLike(java.util.Optional.ofNullable(buildCpu()).orElse(item));
  }
  
  public String getFormat() {
    return this.format;
  }
  
  public A withFormat(String format) {
    this.format = format;
    return (A) this;
  }
  
  public boolean hasFormat() {
    return this.format != null;
  }
  
  public Integer getHugepages() {
    return this.hugepages;
  }
  
  public A withHugepages(Integer hugepages) {
    this.hugepages = hugepages;
    return (A) this;
  }
  
  public boolean hasHugepages() {
    return this.hugepages != null;
  }
  
  public String getInstanceTypeID() {
    return this.instanceTypeID;
  }
  
  public A withInstanceTypeID(String instanceTypeID) {
    this.instanceTypeID = instanceTypeID;
    return (A) this;
  }
  
  public boolean hasInstanceTypeID() {
    return this.instanceTypeID != null;
  }
  
  public Integer getMemoryMB() {
    return this.memoryMB;
  }
  
  public A withMemoryMB(Integer memoryMB) {
    this.memoryMB = memoryMB;
    return (A) this;
  }
  
  public boolean hasMemoryMB() {
    return this.memoryMB != null;
  }
  
  public Disk buildOsDisk() {
    return this.osDisk != null ? this.osDisk.build() : null;
  }
  
  public A withOsDisk(Disk osDisk) {
    this._visitables.remove("osDisk");
    if (osDisk != null) {
        this.osDisk = new DiskBuilder(osDisk);
        this._visitables.get("osDisk").add(this.osDisk);
    } else {
        this.osDisk = null;
        this._visitables.get("osDisk").remove(this.osDisk);
    }
    return (A) this;
  }
  
  public boolean hasOsDisk() {
    return this.osDisk != null;
  }
  
  public A withNewOsDisk(Long sizeGB) {
    return (A)withOsDisk(new Disk(sizeGB));
  }
  
  public OsDiskNested withNewOsDisk() {
    return new OsDiskNested(null);
  }
  
  public OsDiskNested withNewOsDiskLike(Disk item) {
    return new OsDiskNested(item);
  }
  
  public OsDiskNested editOsDisk() {
    return withNewOsDiskLike(java.util.Optional.ofNullable(buildOsDisk()).orElse(null));
  }
  
  public OsDiskNested editOrNewOsDisk() {
    return withNewOsDiskLike(java.util.Optional.ofNullable(buildOsDisk()).orElse(new DiskBuilder().build()));
  }
  
  public OsDiskNested editOrNewOsDiskLike(Disk item) {
    return withNewOsDiskLike(java.util.Optional.ofNullable(buildOsDisk()).orElse(item));
  }
  
  public Boolean getSparse() {
    return this.sparse;
  }
  
  public A withSparse(Boolean sparse) {
    this.sparse = sparse;
    return (A) this;
  }
  
  public boolean hasSparse() {
    return this.sparse != null;
  }
  
  public String getVmType() {
    return this.vmType;
  }
  
  public A withVmType(String vmType) {
    this.vmType = vmType;
    return (A) this;
  }
  
  public boolean hasVmType() {
    return this.vmType != null;
  }
  
  public A addToAdditionalProperties(String key,Object value) {
    if(this.additionalProperties == null && key != null && value != null) { this.additionalProperties = new LinkedHashMap(); }
    if(key != null && value != null) {this.additionalProperties.put(key, value);} return (A)this;
  }
  
  public A addToAdditionalProperties(Map 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;
    MachinePoolFluent that = (MachinePoolFluent) o;
    if (!java.util.Objects.equals(affinityGroupsNames, that.affinityGroupsNames)) return false;
    if (!java.util.Objects.equals(autoPinningPolicy, that.autoPinningPolicy)) return false;
    if (!java.util.Objects.equals(clone, that.clone)) return false;
    if (!java.util.Objects.equals(cpu, that.cpu)) return false;
    if (!java.util.Objects.equals(format, that.format)) return false;
    if (!java.util.Objects.equals(hugepages, that.hugepages)) return false;
    if (!java.util.Objects.equals(instanceTypeID, that.instanceTypeID)) return false;
    if (!java.util.Objects.equals(memoryMB, that.memoryMB)) return false;
    if (!java.util.Objects.equals(osDisk, that.osDisk)) return false;
    if (!java.util.Objects.equals(sparse, that.sparse)) return false;
    if (!java.util.Objects.equals(vmType, that.vmType)) return false;
    if (!java.util.Objects.equals(additionalProperties, that.additionalProperties)) return false;
    return true;
  }
  
  public int hashCode() {
    return java.util.Objects.hash(affinityGroupsNames,  autoPinningPolicy,  clone,  cpu,  format,  hugepages,  instanceTypeID,  memoryMB,  osDisk,  sparse,  vmType,  additionalProperties,  super.hashCode());
  }
  
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("{");
    if (affinityGroupsNames != null && !affinityGroupsNames.isEmpty()) { sb.append("affinityGroupsNames:"); sb.append(affinityGroupsNames + ","); }
    if (autoPinningPolicy != null) { sb.append("autoPinningPolicy:"); sb.append(autoPinningPolicy + ","); }
    if (clone != null) { sb.append("clone:"); sb.append(clone + ","); }
    if (cpu != null) { sb.append("cpu:"); sb.append(cpu + ","); }
    if (format != null) { sb.append("format:"); sb.append(format + ","); }
    if (hugepages != null) { sb.append("hugepages:"); sb.append(hugepages + ","); }
    if (instanceTypeID != null) { sb.append("instanceTypeID:"); sb.append(instanceTypeID + ","); }
    if (memoryMB != null) { sb.append("memoryMB:"); sb.append(memoryMB + ","); }
    if (osDisk != null) { sb.append("osDisk:"); sb.append(osDisk + ","); }
    if (sparse != null) { sb.append("sparse:"); sb.append(sparse + ","); }
    if (vmType != null) { sb.append("vmType:"); sb.append(vmType + ","); }
    if (additionalProperties != null && !additionalProperties.isEmpty()) { sb.append("additionalProperties:"); sb.append(additionalProperties); }
    sb.append("}");
    return sb.toString();
  }
  
  public A withClone() {
    return withClone(true);
  }
  
  public A withSparse() {
    return withSparse(true);
  }
  public class CpuNested extends CPUFluent> implements Nested{
    CpuNested(CPU item) {
      this.builder = new CPUBuilder(this, item);
    }
    CPUBuilder builder;
    
    public N and() {
      return (N) MachinePoolFluent.this.withCpu(builder.build());
    }
    
    public N endCpu() {
      return and();
    }
    
  
  }
  public class OsDiskNested extends DiskFluent> implements Nested{
    OsDiskNested(Disk item) {
      this.builder = new DiskBuilder(this, item);
    }
    DiskBuilder builder;
    
    public N and() {
      return (N) MachinePoolFluent.this.withOsDisk(builder.build());
    }
    
    public N endOsDisk() {
      return and();
    }
    
  
  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy