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.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 affinityGroupsNames != null && !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) {
    _visitables.get("cpu").remove(this.cpu);
    if (cpu!=null){ this.cpu= new CPUBuilder(cpu); _visitables.get("cpu").add(this.cpu);} else { this.cpu = null; _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) {
    _visitables.get("osDisk").remove(this.osDisk);
    if (osDisk!=null){ this.osDisk= new DiskBuilder(osDisk); _visitables.get("osDisk").add(this.osDisk);} else { this.osDisk = null; _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