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

com.oracle.bmc.ocvp.model.UpdateSddcDetails Maven / Gradle / Ivy

There is a newer version: 3.49.0
Show newest version
/**
 * Copyright (c) 2016, 2020, Oracle and/or its affiliates.  All rights reserved.
 * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
 */
package com.oracle.bmc.ocvp.model;

/**
 * The SDDC information to be updated.
 * 

**Important:** Only the `displayName`, `freeFormTags`, and `definedTags` attributes * affect the existing SDDC. Changing the other attributes affects the `Sddc` object, but not * the VMware environment currently running on that SDDC. Those other attributes are used * by the Oracle Cloud VMware Solution *only* for new ESXi hosts that you add to this * SDDC in the future with {@link #createEsxiHost(CreateEsxiHostRequest) createEsxiHost}. * *
* Note: Objects should always be created or deserialized using the {@link Builder}. This model distinguishes fields * that are {@code null} because they are unset from fields that are explicitly set to {@code null}. This is done in * the setter methods of the {@link Builder}, which maintain a set of all explicitly set fields called * {@link #__explicitlySet__}. The {@link #hashCode()} and {@link #equals(Object)} methods are implemented to take * {@link #__explicitlySet__} into account. The constructor, on the other hand, does not set {@link #__explicitlySet__} * (since the constructor cannot distinguish explicit {@code null} from unset {@code null}). **/ @javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20200501") @lombok.AllArgsConstructor(onConstructor = @__({@Deprecated})) @lombok.Value @com.fasterxml.jackson.databind.annotation.JsonDeserialize( builder = UpdateSddcDetails.Builder.class ) @com.fasterxml.jackson.annotation.JsonFilter(com.oracle.bmc.http.internal.ExplicitlySetFilter.NAME) @lombok.Builder(builderClassName = "Builder", toBuilder = true) public class UpdateSddcDetails { @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") @lombok.experimental.Accessors(fluent = true) public static class Builder { @com.fasterxml.jackson.annotation.JsonProperty("displayName") private String displayName; public Builder displayName(String displayName) { this.displayName = displayName; this.__explicitlySet__.add("displayName"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("vmwareSoftwareVersion") private String vmwareSoftwareVersion; public Builder vmwareSoftwareVersion(String vmwareSoftwareVersion) { this.vmwareSoftwareVersion = vmwareSoftwareVersion; this.__explicitlySet__.add("vmwareSoftwareVersion"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("sshAuthorizedKeys") private String sshAuthorizedKeys; public Builder sshAuthorizedKeys(String sshAuthorizedKeys) { this.sshAuthorizedKeys = sshAuthorizedKeys; this.__explicitlySet__.add("sshAuthorizedKeys"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("vsphereVlanId") private String vsphereVlanId; public Builder vsphereVlanId(String vsphereVlanId) { this.vsphereVlanId = vsphereVlanId; this.__explicitlySet__.add("vsphereVlanId"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("vmotionVlanId") private String vmotionVlanId; public Builder vmotionVlanId(String vmotionVlanId) { this.vmotionVlanId = vmotionVlanId; this.__explicitlySet__.add("vmotionVlanId"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("vsanVlanId") private String vsanVlanId; public Builder vsanVlanId(String vsanVlanId) { this.vsanVlanId = vsanVlanId; this.__explicitlySet__.add("vsanVlanId"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("nsxVTepVlanId") private String nsxVTepVlanId; public Builder nsxVTepVlanId(String nsxVTepVlanId) { this.nsxVTepVlanId = nsxVTepVlanId; this.__explicitlySet__.add("nsxVTepVlanId"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("nsxEdgeVTepVlanId") private String nsxEdgeVTepVlanId; public Builder nsxEdgeVTepVlanId(String nsxEdgeVTepVlanId) { this.nsxEdgeVTepVlanId = nsxEdgeVTepVlanId; this.__explicitlySet__.add("nsxEdgeVTepVlanId"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("nsxEdgeUplink1VlanId") private String nsxEdgeUplink1VlanId; public Builder nsxEdgeUplink1VlanId(String nsxEdgeUplink1VlanId) { this.nsxEdgeUplink1VlanId = nsxEdgeUplink1VlanId; this.__explicitlySet__.add("nsxEdgeUplink1VlanId"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("nsxEdgeUplink2VlanId") private String nsxEdgeUplink2VlanId; public Builder nsxEdgeUplink2VlanId(String nsxEdgeUplink2VlanId) { this.nsxEdgeUplink2VlanId = nsxEdgeUplink2VlanId; this.__explicitlySet__.add("nsxEdgeUplink2VlanId"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") private java.util.Map freeformTags; public Builder freeformTags(java.util.Map freeformTags) { this.freeformTags = freeformTags; this.__explicitlySet__.add("freeformTags"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("definedTags") private java.util.Map> definedTags; public Builder definedTags( java.util.Map> definedTags) { this.definedTags = definedTags; this.__explicitlySet__.add("definedTags"); return this; } @com.fasterxml.jackson.annotation.JsonIgnore private final java.util.Set __explicitlySet__ = new java.util.HashSet(); public UpdateSddcDetails build() { UpdateSddcDetails __instance__ = new UpdateSddcDetails( displayName, vmwareSoftwareVersion, sshAuthorizedKeys, vsphereVlanId, vmotionVlanId, vsanVlanId, nsxVTepVlanId, nsxEdgeVTepVlanId, nsxEdgeUplink1VlanId, nsxEdgeUplink2VlanId, freeformTags, definedTags); __instance__.__explicitlySet__.addAll(__explicitlySet__); return __instance__; } @com.fasterxml.jackson.annotation.JsonIgnore public Builder copy(UpdateSddcDetails o) { Builder copiedBuilder = displayName(o.getDisplayName()) .vmwareSoftwareVersion(o.getVmwareSoftwareVersion()) .sshAuthorizedKeys(o.getSshAuthorizedKeys()) .vsphereVlanId(o.getVsphereVlanId()) .vmotionVlanId(o.getVmotionVlanId()) .vsanVlanId(o.getVsanVlanId()) .nsxVTepVlanId(o.getNsxVTepVlanId()) .nsxEdgeVTepVlanId(o.getNsxEdgeVTepVlanId()) .nsxEdgeUplink1VlanId(o.getNsxEdgeUplink1VlanId()) .nsxEdgeUplink2VlanId(o.getNsxEdgeUplink2VlanId()) .freeformTags(o.getFreeformTags()) .definedTags(o.getDefinedTags()); copiedBuilder.__explicitlySet__.retainAll(o.__explicitlySet__); return copiedBuilder; } } /** * Create a new builder. */ public static Builder builder() { return new Builder(); } /** * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the SDDC. * **/ @com.fasterxml.jackson.annotation.JsonProperty("displayName") String displayName; /** * The version of bundled VMware software that the Oracle Cloud VMware Solution will * install on any new ESXi hosts that you add to this SDDC in the future. *

* For the list of versions supported by the Oracle Cloud VMware Solution, see * {@link #* ListSupportedVmwareSoftwareVersions(* ListSupportedVmwareSoftwareVersionsRequest) * ListSupportedVmwareSoftwareVersions}). * **/ @com.fasterxml.jackson.annotation.JsonProperty("vmwareSoftwareVersion") String vmwareSoftwareVersion; /** * One or more public SSH keys to be included in the `~/.ssh/authorized_keys` file for * the default user on each ESXi host, only when adding new ESXi hosts to this SDDC. * Use a newline character to separate multiple keys. * The SSH keys must be in the format required for the `authorized_keys` file. * **/ @com.fasterxml.jackson.annotation.JsonProperty("sshAuthorizedKeys") String sshAuthorizedKeys; /** * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VLAN to use for * the vSphere component of the VMware environment when adding new ESXi hosts to the SDDC. * **/ @com.fasterxml.jackson.annotation.JsonProperty("vsphereVlanId") String vsphereVlanId; /** * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VLAN to use for * the vMotion component of the VMware environment when adding new ESXi hosts to the SDDC. * **/ @com.fasterxml.jackson.annotation.JsonProperty("vmotionVlanId") String vmotionVlanId; /** * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VLAN to use for * the vSAN component of the VMware environment when adding new ESXi hosts to the SDDC. * **/ @com.fasterxml.jackson.annotation.JsonProperty("vsanVlanId") String vsanVlanId; /** * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VLAN to use for * the NSX VTEP component of the VMware environment when adding new ESXi hosts to the SDDC. * **/ @com.fasterxml.jackson.annotation.JsonProperty("nsxVTepVlanId") String nsxVTepVlanId; /** * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VLAN to use for * the NSX Edge VTEP component of the VMware environment when adding new ESXi hosts to the SDDC. * **/ @com.fasterxml.jackson.annotation.JsonProperty("nsxEdgeVTepVlanId") String nsxEdgeVTepVlanId; /** * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VLAN to use for * the NSX Edge Uplink 1 component of the VMware environment when adding new ESXi hosts to the SDDC. * **/ @com.fasterxml.jackson.annotation.JsonProperty("nsxEdgeUplink1VlanId") String nsxEdgeUplink1VlanId; /** * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VLAN to use for * the NSX Edge Uplink 2 component of the VMware environment when adding new ESXi hosts to the SDDC. * **/ @com.fasterxml.jackson.annotation.JsonProperty("nsxEdgeUplink2VlanId") String nsxEdgeUplink2VlanId; /** * Free-form tags for this resource. Each tag is a simple key-value pair with no * predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm). *

* Example: `{\"Department\": \"Finance\"}` * **/ @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") java.util.Map freeformTags; /** * Defined tags for this resource. Each key is predefined and scoped to a * namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm). *

* Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` * **/ @com.fasterxml.jackson.annotation.JsonProperty("definedTags") java.util.Map> definedTags; @com.fasterxml.jackson.annotation.JsonIgnore private final java.util.Set __explicitlySet__ = new java.util.HashSet(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy