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

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

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

import io.fabric8.openshift.api.model.installer.alibabacloud.v1.Platform;
import java.lang.SuppressWarnings;
import io.fabric8.kubernetes.api.builder.Nested;
import java.lang.String;
import java.util.LinkedHashMap;
import io.fabric8.kubernetes.api.builder.BaseFluent;
import io.fabric8.openshift.api.model.installer.alibabacloud.v1.PlatformBuilder;
import java.lang.Object;
import java.util.Map;

/**
 * Generated
 */
@SuppressWarnings("unchecked")
public class PlatformFluent> extends BaseFluent{
  public PlatformFluent() {
  }
  
  public PlatformFluent(io.fabric8.openshift.api.model.installer.v1.Platform instance) {
    this.copyInstance(instance);
  }
  private PlatformBuilder alibabacloud;
  private io.fabric8.openshift.api.model.installer.aws.v1.PlatformBuilder aws;
  private io.fabric8.openshift.api.model.installer.azure.v1.PlatformBuilder azure;
  private io.fabric8.openshift.api.model.installer.baremetal.v1.PlatformBuilder baremetal;
  private io.fabric8.openshift.api.model.installer.gcp.v1.PlatformBuilder gcp;
  private io.fabric8.openshift.api.model.installer.ibmcloud.v1.PlatformBuilder ibmcloud;
  private io.fabric8.openshift.api.model.installer.libvirt.v1.PlatformBuilder libvirt;
  private io.fabric8.openshift.api.model.installer.none.v1.PlatformBuilder none;
  private io.fabric8.openshift.api.model.installer.nutanix.v1.PlatformBuilder nutanix;
  private io.fabric8.openshift.api.model.installer.openstack.v1.PlatformBuilder openstack;
  private io.fabric8.openshift.api.model.installer.ovirt.v1.PlatformBuilder ovirt;
  private io.fabric8.openshift.api.model.installer.powervs.v1.PlatformBuilder powervs;
  private io.fabric8.openshift.api.model.installer.vsphere.v1.PlatformBuilder vsphere;
  private Map additionalProperties;
  
  protected void copyInstance(io.fabric8.openshift.api.model.installer.v1.Platform instance) {
    instance = (instance != null ? instance : new io.fabric8.openshift.api.model.installer.v1.Platform());
  
    if (instance != null) {
        this.withAlibabacloud(instance.getAlibabacloud());
        this.withAws(instance.getAws());
        this.withAzure(instance.getAzure());
        this.withBaremetal(instance.getBaremetal());
        this.withGcp(instance.getGcp());
        this.withIbmcloud(instance.getIbmcloud());
        this.withLibvirt(instance.getLibvirt());
        this.withNone(instance.getNone());
        this.withNutanix(instance.getNutanix());
        this.withOpenstack(instance.getOpenstack());
        this.withOvirt(instance.getOvirt());
        this.withPowervs(instance.getPowervs());
        this.withVsphere(instance.getVsphere());
        this.withAlibabacloud(instance.getAlibabacloud());
        this.withAws(instance.getAws());
        this.withAzure(instance.getAzure());
        this.withBaremetal(instance.getBaremetal());
        this.withGcp(instance.getGcp());
        this.withIbmcloud(instance.getIbmcloud());
        this.withLibvirt(instance.getLibvirt());
        this.withNone(instance.getNone());
        this.withNutanix(instance.getNutanix());
        this.withOpenstack(instance.getOpenstack());
        this.withOvirt(instance.getOvirt());
        this.withPowervs(instance.getPowervs());
        this.withVsphere(instance.getVsphere());
        this.withAdditionalProperties(instance.getAdditionalProperties());
      }
  }
  
  public Platform buildAlibabacloud() {
    return this.alibabacloud!=null ?this.alibabacloud.build():null;
  }
  
  public A withAlibabacloud(Platform alibabacloud) {
    _visitables.get("alibabacloud").remove(this.alibabacloud);
    if (alibabacloud!=null){ this.alibabacloud= new PlatformBuilder(alibabacloud); _visitables.get("alibabacloud").add(this.alibabacloud);} else { this.alibabacloud = null; _visitables.get("alibabacloud").remove(this.alibabacloud); } return (A) this;
  }
  
  public boolean hasAlibabacloud() {
    return this.alibabacloud != null;
  }
  
  public AlibabacloudNested withNewAlibabacloud() {
    return new AlibabacloudNested(null);
  }
  
  public AlibabacloudNested withNewAlibabacloudLike(Platform item) {
    return new AlibabacloudNested(item);
  }
  
  public AlibabacloudNested editAlibabacloud() {
    return withNewAlibabacloudLike(java.util.Optional.ofNullable(buildAlibabacloud()).orElse(null));
  }
  
  public AlibabacloudNested editOrNewAlibabacloud() {
    return withNewAlibabacloudLike(java.util.Optional.ofNullable(buildAlibabacloud()).orElse(new PlatformBuilder().build()));
  }
  
  public AlibabacloudNested editOrNewAlibabacloudLike(Platform item) {
    return withNewAlibabacloudLike(java.util.Optional.ofNullable(buildAlibabacloud()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.aws.v1.Platform buildAws() {
    return this.aws!=null ?this.aws.build():null;
  }
  
  public A withAws(io.fabric8.openshift.api.model.installer.aws.v1.Platform aws) {
    _visitables.get("aws").remove(this.aws);
    if (aws!=null){ this.aws= new io.fabric8.openshift.api.model.installer.aws.v1.PlatformBuilder(aws); _visitables.get("aws").add(this.aws);} else { this.aws = null; _visitables.get("aws").remove(this.aws); } return (A) this;
  }
  
  public boolean hasAws() {
    return this.aws != null;
  }
  
  public AwsAwsNested withNewAwsAws() {
    return new AwsAwsNested(null);
  }
  
  public AwsAwsNested withNewAwsLike(io.fabric8.openshift.api.model.installer.aws.v1.Platform item) {
    return new AwsAwsNested(item);
  }
  
  public AwsAwsNested editAwsAws() {
    return withNewAwsLike(java.util.Optional.ofNullable(buildAws()).orElse(null));
  }
  
  public AwsAwsNested editOrNewAws() {
    return withNewAwsLike(java.util.Optional.ofNullable(buildAws()).orElse(new io.fabric8.openshift.api.model.installer.aws.v1.PlatformBuilder().build()));
  }
  
  public AwsAwsNested editOrNewAwsLike(io.fabric8.openshift.api.model.installer.aws.v1.Platform item) {
    return withNewAwsLike(java.util.Optional.ofNullable(buildAws()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.azure.v1.Platform buildAzure() {
    return this.azure!=null ?this.azure.build():null;
  }
  
  public A withAzure(io.fabric8.openshift.api.model.installer.azure.v1.Platform azure) {
    _visitables.get("azure").remove(this.azure);
    if (azure!=null){ this.azure= new io.fabric8.openshift.api.model.installer.azure.v1.PlatformBuilder(azure); _visitables.get("azure").add(this.azure);} else { this.azure = null; _visitables.get("azure").remove(this.azure); } return (A) this;
  }
  
  public boolean hasAzure() {
    return this.azure != null;
  }
  
  public AzureAzureNested withNewAzureAzure() {
    return new AzureAzureNested(null);
  }
  
  public AzureAzureNested withNewAzureLike(io.fabric8.openshift.api.model.installer.azure.v1.Platform item) {
    return new AzureAzureNested(item);
  }
  
  public AzureAzureNested editAzureAzure() {
    return withNewAzureLike(java.util.Optional.ofNullable(buildAzure()).orElse(null));
  }
  
  public AzureAzureNested editOrNewAzure() {
    return withNewAzureLike(java.util.Optional.ofNullable(buildAzure()).orElse(new io.fabric8.openshift.api.model.installer.azure.v1.PlatformBuilder().build()));
  }
  
  public AzureAzureNested editOrNewAzureLike(io.fabric8.openshift.api.model.installer.azure.v1.Platform item) {
    return withNewAzureLike(java.util.Optional.ofNullable(buildAzure()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.baremetal.v1.Platform buildBaremetal() {
    return this.baremetal!=null ?this.baremetal.build():null;
  }
  
  public A withBaremetal(io.fabric8.openshift.api.model.installer.baremetal.v1.Platform baremetal) {
    _visitables.get("baremetal").remove(this.baremetal);
    if (baremetal!=null){ this.baremetal= new io.fabric8.openshift.api.model.installer.baremetal.v1.PlatformBuilder(baremetal); _visitables.get("baremetal").add(this.baremetal);} else { this.baremetal = null; _visitables.get("baremetal").remove(this.baremetal); } return (A) this;
  }
  
  public boolean hasBaremetal() {
    return this.baremetal != null;
  }
  
  public BaremetalBaremetalNested withNewBaremetalBaremetal() {
    return new BaremetalBaremetalNested(null);
  }
  
  public BaremetalBaremetalNested withNewBaremetalLike(io.fabric8.openshift.api.model.installer.baremetal.v1.Platform item) {
    return new BaremetalBaremetalNested(item);
  }
  
  public BaremetalBaremetalNested editBaremetalBaremetal() {
    return withNewBaremetalLike(java.util.Optional.ofNullable(buildBaremetal()).orElse(null));
  }
  
  public BaremetalBaremetalNested editOrNewBaremetal() {
    return withNewBaremetalLike(java.util.Optional.ofNullable(buildBaremetal()).orElse(new io.fabric8.openshift.api.model.installer.baremetal.v1.PlatformBuilder().build()));
  }
  
  public BaremetalBaremetalNested editOrNewBaremetalLike(io.fabric8.openshift.api.model.installer.baremetal.v1.Platform item) {
    return withNewBaremetalLike(java.util.Optional.ofNullable(buildBaremetal()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.gcp.v1.Platform buildGcp() {
    return this.gcp!=null ?this.gcp.build():null;
  }
  
  public A withGcp(io.fabric8.openshift.api.model.installer.gcp.v1.Platform gcp) {
    _visitables.get("gcp").remove(this.gcp);
    if (gcp!=null){ this.gcp= new io.fabric8.openshift.api.model.installer.gcp.v1.PlatformBuilder(gcp); _visitables.get("gcp").add(this.gcp);} else { this.gcp = null; _visitables.get("gcp").remove(this.gcp); } return (A) this;
  }
  
  public boolean hasGcp() {
    return this.gcp != null;
  }
  
  public GcpGcpNested withNewGcpGcp() {
    return new GcpGcpNested(null);
  }
  
  public GcpGcpNested withNewGcpLike(io.fabric8.openshift.api.model.installer.gcp.v1.Platform item) {
    return new GcpGcpNested(item);
  }
  
  public GcpGcpNested editGcpGcp() {
    return withNewGcpLike(java.util.Optional.ofNullable(buildGcp()).orElse(null));
  }
  
  public GcpGcpNested editOrNewGcp() {
    return withNewGcpLike(java.util.Optional.ofNullable(buildGcp()).orElse(new io.fabric8.openshift.api.model.installer.gcp.v1.PlatformBuilder().build()));
  }
  
  public GcpGcpNested editOrNewGcpLike(io.fabric8.openshift.api.model.installer.gcp.v1.Platform item) {
    return withNewGcpLike(java.util.Optional.ofNullable(buildGcp()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.ibmcloud.v1.Platform buildIbmcloud() {
    return this.ibmcloud!=null ?this.ibmcloud.build():null;
  }
  
  public A withIbmcloud(io.fabric8.openshift.api.model.installer.ibmcloud.v1.Platform ibmcloud) {
    _visitables.get("ibmcloud").remove(this.ibmcloud);
    if (ibmcloud!=null){ this.ibmcloud= new io.fabric8.openshift.api.model.installer.ibmcloud.v1.PlatformBuilder(ibmcloud); _visitables.get("ibmcloud").add(this.ibmcloud);} else { this.ibmcloud = null; _visitables.get("ibmcloud").remove(this.ibmcloud); } return (A) this;
  }
  
  public boolean hasIbmcloud() {
    return this.ibmcloud != null;
  }
  
  public IbmcloudIbmcloudNested withNewIbmcloudIbmcloud() {
    return new IbmcloudIbmcloudNested(null);
  }
  
  public IbmcloudIbmcloudNested withNewIbmcloudLike(io.fabric8.openshift.api.model.installer.ibmcloud.v1.Platform item) {
    return new IbmcloudIbmcloudNested(item);
  }
  
  public IbmcloudIbmcloudNested editIbmcloudIbmcloud() {
    return withNewIbmcloudLike(java.util.Optional.ofNullable(buildIbmcloud()).orElse(null));
  }
  
  public IbmcloudIbmcloudNested editOrNewIbmcloud() {
    return withNewIbmcloudLike(java.util.Optional.ofNullable(buildIbmcloud()).orElse(new io.fabric8.openshift.api.model.installer.ibmcloud.v1.PlatformBuilder().build()));
  }
  
  public IbmcloudIbmcloudNested editOrNewIbmcloudLike(io.fabric8.openshift.api.model.installer.ibmcloud.v1.Platform item) {
    return withNewIbmcloudLike(java.util.Optional.ofNullable(buildIbmcloud()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.libvirt.v1.Platform buildLibvirt() {
    return this.libvirt!=null ?this.libvirt.build():null;
  }
  
  public A withLibvirt(io.fabric8.openshift.api.model.installer.libvirt.v1.Platform libvirt) {
    _visitables.get("libvirt").remove(this.libvirt);
    if (libvirt!=null){ this.libvirt= new io.fabric8.openshift.api.model.installer.libvirt.v1.PlatformBuilder(libvirt); _visitables.get("libvirt").add(this.libvirt);} else { this.libvirt = null; _visitables.get("libvirt").remove(this.libvirt); } return (A) this;
  }
  
  public boolean hasLibvirt() {
    return this.libvirt != null;
  }
  
  public LibvirtLibvirtNested withNewLibvirtLibvirt() {
    return new LibvirtLibvirtNested(null);
  }
  
  public LibvirtLibvirtNested withNewLibvirtLike(io.fabric8.openshift.api.model.installer.libvirt.v1.Platform item) {
    return new LibvirtLibvirtNested(item);
  }
  
  public LibvirtLibvirtNested editLibvirtLibvirt() {
    return withNewLibvirtLike(java.util.Optional.ofNullable(buildLibvirt()).orElse(null));
  }
  
  public LibvirtLibvirtNested editOrNewLibvirt() {
    return withNewLibvirtLike(java.util.Optional.ofNullable(buildLibvirt()).orElse(new io.fabric8.openshift.api.model.installer.libvirt.v1.PlatformBuilder().build()));
  }
  
  public LibvirtLibvirtNested editOrNewLibvirtLike(io.fabric8.openshift.api.model.installer.libvirt.v1.Platform item) {
    return withNewLibvirtLike(java.util.Optional.ofNullable(buildLibvirt()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.none.v1.Platform buildNone() {
    return this.none!=null ?this.none.build():null;
  }
  
  public A withNone(io.fabric8.openshift.api.model.installer.none.v1.Platform none) {
    _visitables.get("none").remove(this.none);
    if (none!=null){ this.none= new io.fabric8.openshift.api.model.installer.none.v1.PlatformBuilder(none); _visitables.get("none").add(this.none);} else { this.none = null; _visitables.get("none").remove(this.none); } return (A) this;
  }
  
  public boolean hasNone() {
    return this.none != null;
  }
  
  public NoneNoneNested withNewNoneNone() {
    return new NoneNoneNested(null);
  }
  
  public NoneNoneNested withNewNoneLike(io.fabric8.openshift.api.model.installer.none.v1.Platform item) {
    return new NoneNoneNested(item);
  }
  
  public NoneNoneNested editNoneNone() {
    return withNewNoneLike(java.util.Optional.ofNullable(buildNone()).orElse(null));
  }
  
  public NoneNoneNested editOrNewNone() {
    return withNewNoneLike(java.util.Optional.ofNullable(buildNone()).orElse(new io.fabric8.openshift.api.model.installer.none.v1.PlatformBuilder().build()));
  }
  
  public NoneNoneNested editOrNewNoneLike(io.fabric8.openshift.api.model.installer.none.v1.Platform item) {
    return withNewNoneLike(java.util.Optional.ofNullable(buildNone()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.nutanix.v1.Platform buildNutanix() {
    return this.nutanix!=null ?this.nutanix.build():null;
  }
  
  public A withNutanix(io.fabric8.openshift.api.model.installer.nutanix.v1.Platform nutanix) {
    _visitables.get("nutanix").remove(this.nutanix);
    if (nutanix!=null){ this.nutanix= new io.fabric8.openshift.api.model.installer.nutanix.v1.PlatformBuilder(nutanix); _visitables.get("nutanix").add(this.nutanix);} else { this.nutanix = null; _visitables.get("nutanix").remove(this.nutanix); } return (A) this;
  }
  
  public boolean hasNutanix() {
    return this.nutanix != null;
  }
  
  public NutanixNutanixNested withNewNutanixNutanix() {
    return new NutanixNutanixNested(null);
  }
  
  public NutanixNutanixNested withNewNutanixLike(io.fabric8.openshift.api.model.installer.nutanix.v1.Platform item) {
    return new NutanixNutanixNested(item);
  }
  
  public NutanixNutanixNested editNutanixNutanix() {
    return withNewNutanixLike(java.util.Optional.ofNullable(buildNutanix()).orElse(null));
  }
  
  public NutanixNutanixNested editOrNewNutanix() {
    return withNewNutanixLike(java.util.Optional.ofNullable(buildNutanix()).orElse(new io.fabric8.openshift.api.model.installer.nutanix.v1.PlatformBuilder().build()));
  }
  
  public NutanixNutanixNested editOrNewNutanixLike(io.fabric8.openshift.api.model.installer.nutanix.v1.Platform item) {
    return withNewNutanixLike(java.util.Optional.ofNullable(buildNutanix()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.openstack.v1.Platform buildOpenstack() {
    return this.openstack!=null ?this.openstack.build():null;
  }
  
  public A withOpenstack(io.fabric8.openshift.api.model.installer.openstack.v1.Platform openstack) {
    _visitables.get("openstack").remove(this.openstack);
    if (openstack!=null){ this.openstack= new io.fabric8.openshift.api.model.installer.openstack.v1.PlatformBuilder(openstack); _visitables.get("openstack").add(this.openstack);} else { this.openstack = null; _visitables.get("openstack").remove(this.openstack); } return (A) this;
  }
  
  public boolean hasOpenstack() {
    return this.openstack != null;
  }
  
  public OpenstackOpenstackNested withNewOpenstackOpenstack() {
    return new OpenstackOpenstackNested(null);
  }
  
  public OpenstackOpenstackNested withNewOpenstackLike(io.fabric8.openshift.api.model.installer.openstack.v1.Platform item) {
    return new OpenstackOpenstackNested(item);
  }
  
  public OpenstackOpenstackNested editOpenstackOpenstack() {
    return withNewOpenstackLike(java.util.Optional.ofNullable(buildOpenstack()).orElse(null));
  }
  
  public OpenstackOpenstackNested editOrNewOpenstack() {
    return withNewOpenstackLike(java.util.Optional.ofNullable(buildOpenstack()).orElse(new io.fabric8.openshift.api.model.installer.openstack.v1.PlatformBuilder().build()));
  }
  
  public OpenstackOpenstackNested editOrNewOpenstackLike(io.fabric8.openshift.api.model.installer.openstack.v1.Platform item) {
    return withNewOpenstackLike(java.util.Optional.ofNullable(buildOpenstack()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.ovirt.v1.Platform buildOvirt() {
    return this.ovirt!=null ?this.ovirt.build():null;
  }
  
  public A withOvirt(io.fabric8.openshift.api.model.installer.ovirt.v1.Platform ovirt) {
    _visitables.get("ovirt").remove(this.ovirt);
    if (ovirt!=null){ this.ovirt= new io.fabric8.openshift.api.model.installer.ovirt.v1.PlatformBuilder(ovirt); _visitables.get("ovirt").add(this.ovirt);} else { this.ovirt = null; _visitables.get("ovirt").remove(this.ovirt); } return (A) this;
  }
  
  public boolean hasOvirt() {
    return this.ovirt != null;
  }
  
  public OvirtOvirtNested withNewOvirtOvirt() {
    return new OvirtOvirtNested(null);
  }
  
  public OvirtOvirtNested withNewOvirtLike(io.fabric8.openshift.api.model.installer.ovirt.v1.Platform item) {
    return new OvirtOvirtNested(item);
  }
  
  public OvirtOvirtNested editOvirtOvirt() {
    return withNewOvirtLike(java.util.Optional.ofNullable(buildOvirt()).orElse(null));
  }
  
  public OvirtOvirtNested editOrNewOvirt() {
    return withNewOvirtLike(java.util.Optional.ofNullable(buildOvirt()).orElse(new io.fabric8.openshift.api.model.installer.ovirt.v1.PlatformBuilder().build()));
  }
  
  public OvirtOvirtNested editOrNewOvirtLike(io.fabric8.openshift.api.model.installer.ovirt.v1.Platform item) {
    return withNewOvirtLike(java.util.Optional.ofNullable(buildOvirt()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.powervs.v1.Platform buildPowervs() {
    return this.powervs!=null ?this.powervs.build():null;
  }
  
  public A withPowervs(io.fabric8.openshift.api.model.installer.powervs.v1.Platform powervs) {
    _visitables.get("powervs").remove(this.powervs);
    if (powervs!=null){ this.powervs= new io.fabric8.openshift.api.model.installer.powervs.v1.PlatformBuilder(powervs); _visitables.get("powervs").add(this.powervs);} else { this.powervs = null; _visitables.get("powervs").remove(this.powervs); } return (A) this;
  }
  
  public boolean hasPowervs() {
    return this.powervs != null;
  }
  
  public PowervsPowervsNested withNewPowervsPowervs() {
    return new PowervsPowervsNested(null);
  }
  
  public PowervsPowervsNested withNewPowervsLike(io.fabric8.openshift.api.model.installer.powervs.v1.Platform item) {
    return new PowervsPowervsNested(item);
  }
  
  public PowervsPowervsNested editPowervsPowervs() {
    return withNewPowervsLike(java.util.Optional.ofNullable(buildPowervs()).orElse(null));
  }
  
  public PowervsPowervsNested editOrNewPowervs() {
    return withNewPowervsLike(java.util.Optional.ofNullable(buildPowervs()).orElse(new io.fabric8.openshift.api.model.installer.powervs.v1.PlatformBuilder().build()));
  }
  
  public PowervsPowervsNested editOrNewPowervsLike(io.fabric8.openshift.api.model.installer.powervs.v1.Platform item) {
    return withNewPowervsLike(java.util.Optional.ofNullable(buildPowervs()).orElse(item));
  }
  
  public io.fabric8.openshift.api.model.installer.vsphere.v1.Platform buildVsphere() {
    return this.vsphere!=null ?this.vsphere.build():null;
  }
  
  public A withVsphere(io.fabric8.openshift.api.model.installer.vsphere.v1.Platform vsphere) {
    _visitables.get("vsphere").remove(this.vsphere);
    if (vsphere!=null){ this.vsphere= new io.fabric8.openshift.api.model.installer.vsphere.v1.PlatformBuilder(vsphere); _visitables.get("vsphere").add(this.vsphere);} else { this.vsphere = null; _visitables.get("vsphere").remove(this.vsphere); } return (A) this;
  }
  
  public boolean hasVsphere() {
    return this.vsphere != null;
  }
  
  public VsphereVsphereNested withNewVsphereVsphere() {
    return new VsphereVsphereNested(null);
  }
  
  public VsphereVsphereNested withNewVsphereLike(io.fabric8.openshift.api.model.installer.vsphere.v1.Platform item) {
    return new VsphereVsphereNested(item);
  }
  
  public VsphereVsphereNested editVsphereVsphere() {
    return withNewVsphereLike(java.util.Optional.ofNullable(buildVsphere()).orElse(null));
  }
  
  public VsphereVsphereNested editOrNewVsphere() {
    return withNewVsphereLike(java.util.Optional.ofNullable(buildVsphere()).orElse(new io.fabric8.openshift.api.model.installer.vsphere.v1.PlatformBuilder().build()));
  }
  
  public VsphereVsphereNested editOrNewVsphereLike(io.fabric8.openshift.api.model.installer.vsphere.v1.Platform item) {
    return withNewVsphereLike(java.util.Optional.ofNullable(buildVsphere()).orElse(item));
  }
  
  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;
    PlatformFluent that = (PlatformFluent) o;
    if (!java.util.Objects.equals(alibabacloud, that.alibabacloud)) return false;
  
    if (!java.util.Objects.equals(aws, that.aws)) return false;
  
    if (!java.util.Objects.equals(azure, that.azure)) return false;
  
    if (!java.util.Objects.equals(baremetal, that.baremetal)) return false;
  
    if (!java.util.Objects.equals(gcp, that.gcp)) return false;
  
    if (!java.util.Objects.equals(ibmcloud, that.ibmcloud)) return false;
  
    if (!java.util.Objects.equals(libvirt, that.libvirt)) return false;
  
    if (!java.util.Objects.equals(none, that.none)) return false;
  
    if (!java.util.Objects.equals(nutanix, that.nutanix)) return false;
  
    if (!java.util.Objects.equals(openstack, that.openstack)) return false;
  
    if (!java.util.Objects.equals(ovirt, that.ovirt)) return false;
  
    if (!java.util.Objects.equals(powervs, that.powervs)) return false;
  
    if (!java.util.Objects.equals(vsphere, that.vsphere)) return false;
  
    if (!java.util.Objects.equals(additionalProperties, that.additionalProperties)) return false;
  
    return true;
  }
  
  public int hashCode() {
    return java.util.Objects.hash(alibabacloud,  aws,  azure,  baremetal,  gcp,  ibmcloud,  libvirt,  none,  nutanix,  openstack,  ovirt,  powervs,  vsphere,  additionalProperties,  super.hashCode());
  }
  
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("{");
    if (alibabacloud != null) { sb.append("alibabacloud:"); sb.append(alibabacloud + ","); }
    if (aws != null) { sb.append("aws:"); sb.append(aws + ","); }
    if (azure != null) { sb.append("azure:"); sb.append(azure + ","); }
    if (baremetal != null) { sb.append("baremetal:"); sb.append(baremetal + ","); }
    if (gcp != null) { sb.append("gcp:"); sb.append(gcp + ","); }
    if (ibmcloud != null) { sb.append("ibmcloud:"); sb.append(ibmcloud + ","); }
    if (libvirt != null) { sb.append("libvirt:"); sb.append(libvirt + ","); }
    if (none != null) { sb.append("none:"); sb.append(none + ","); }
    if (nutanix != null) { sb.append("nutanix:"); sb.append(nutanix + ","); }
    if (openstack != null) { sb.append("openstack:"); sb.append(openstack + ","); }
    if (ovirt != null) { sb.append("ovirt:"); sb.append(ovirt + ","); }
    if (powervs != null) { sb.append("powervs:"); sb.append(powervs + ","); }
    if (vsphere != null) { sb.append("vsphere:"); sb.append(vsphere + ","); }
    if (additionalProperties != null && !additionalProperties.isEmpty()) { sb.append("additionalProperties:"); sb.append(additionalProperties); }
    sb.append("}");
    return sb.toString();
  }
  public class AlibabacloudNested extends io.fabric8.openshift.api.model.installer.alibabacloud.v1.PlatformFluent> implements Nested{
    AlibabacloudNested(Platform item) {
      this.builder = new PlatformBuilder(this, item);
    }
    PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withAlibabacloud(builder.build());
    }
    
    public N endAlibabacloud() {
      return and();
    }
    
  
  }
  public class AwsAwsNested extends io.fabric8.openshift.api.model.installer.aws.v1.PlatformFluent> implements Nested{
    AwsAwsNested(io.fabric8.openshift.api.model.installer.aws.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.aws.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.aws.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withAws(builder.build());
    }
    
    public N endAwsAws() {
      return and();
    }
    
  
  }
  public class AzureAzureNested extends io.fabric8.openshift.api.model.installer.azure.v1.PlatformFluent> implements Nested{
    AzureAzureNested(io.fabric8.openshift.api.model.installer.azure.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.azure.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.azure.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withAzure(builder.build());
    }
    
    public N endAzureAzure() {
      return and();
    }
    
  
  }
  public class BaremetalBaremetalNested extends io.fabric8.openshift.api.model.installer.baremetal.v1.PlatformFluent> implements Nested{
    BaremetalBaremetalNested(io.fabric8.openshift.api.model.installer.baremetal.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.baremetal.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.baremetal.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withBaremetal(builder.build());
    }
    
    public N endBaremetalBaremetal() {
      return and();
    }
    
  
  }
  public class GcpGcpNested extends io.fabric8.openshift.api.model.installer.gcp.v1.PlatformFluent> implements Nested{
    GcpGcpNested(io.fabric8.openshift.api.model.installer.gcp.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.gcp.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.gcp.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withGcp(builder.build());
    }
    
    public N endGcpGcp() {
      return and();
    }
    
  
  }
  public class IbmcloudIbmcloudNested extends io.fabric8.openshift.api.model.installer.ibmcloud.v1.PlatformFluent> implements Nested{
    IbmcloudIbmcloudNested(io.fabric8.openshift.api.model.installer.ibmcloud.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.ibmcloud.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.ibmcloud.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withIbmcloud(builder.build());
    }
    
    public N endIbmcloudIbmcloud() {
      return and();
    }
    
  
  }
  public class LibvirtLibvirtNested extends io.fabric8.openshift.api.model.installer.libvirt.v1.PlatformFluent> implements Nested{
    LibvirtLibvirtNested(io.fabric8.openshift.api.model.installer.libvirt.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.libvirt.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.libvirt.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withLibvirt(builder.build());
    }
    
    public N endLibvirtLibvirt() {
      return and();
    }
    
  
  }
  public class NoneNoneNested extends io.fabric8.openshift.api.model.installer.none.v1.PlatformFluent> implements Nested{
    NoneNoneNested(io.fabric8.openshift.api.model.installer.none.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.none.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.none.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withNone(builder.build());
    }
    
    public N endNoneNone() {
      return and();
    }
    
  
  }
  public class NutanixNutanixNested extends io.fabric8.openshift.api.model.installer.nutanix.v1.PlatformFluent> implements Nested{
    NutanixNutanixNested(io.fabric8.openshift.api.model.installer.nutanix.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.nutanix.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.nutanix.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withNutanix(builder.build());
    }
    
    public N endNutanixNutanix() {
      return and();
    }
    
  
  }
  public class OpenstackOpenstackNested extends io.fabric8.openshift.api.model.installer.openstack.v1.PlatformFluent> implements Nested{
    OpenstackOpenstackNested(io.fabric8.openshift.api.model.installer.openstack.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.openstack.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.openstack.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withOpenstack(builder.build());
    }
    
    public N endOpenstackOpenstack() {
      return and();
    }
    
  
  }
  public class OvirtOvirtNested extends io.fabric8.openshift.api.model.installer.ovirt.v1.PlatformFluent> implements Nested{
    OvirtOvirtNested(io.fabric8.openshift.api.model.installer.ovirt.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.ovirt.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.ovirt.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withOvirt(builder.build());
    }
    
    public N endOvirtOvirt() {
      return and();
    }
    
  
  }
  public class PowervsPowervsNested extends io.fabric8.openshift.api.model.installer.powervs.v1.PlatformFluent> implements Nested{
    PowervsPowervsNested(io.fabric8.openshift.api.model.installer.powervs.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.powervs.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.powervs.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withPowervs(builder.build());
    }
    
    public N endPowervsPowervs() {
      return and();
    }
    
  
  }
  public class VsphereVsphereNested extends io.fabric8.openshift.api.model.installer.vsphere.v1.PlatformFluent> implements Nested{
    VsphereVsphereNested(io.fabric8.openshift.api.model.installer.vsphere.v1.Platform item) {
      this.builder = new io.fabric8.openshift.api.model.installer.vsphere.v1.PlatformBuilder(this, item);
    }
    io.fabric8.openshift.api.model.installer.vsphere.v1.PlatformBuilder builder;
    
    public N and() {
      return (N) PlatformFluent.this.withVsphere(builder.build());
    }
    
    public N endVsphereVsphere() {
      return and();
    }
    
  
  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy