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

com.nutanix.dp1.vmm.vmm.v4.templates.VmConfigOverride Maven / Gradle / Ivy

/*
 * Generated file ..
 *
 * Product version: 4.0.3-alpha-1
 *
 * Part of the Nutanix Vmm Versioned APIs
 *
 * (c) 2023 Nutanix Inc.  All rights reserved
 *
 */

package com.nutanix.dp1.vmm.vmm.v4.templates;

import com.fasterxml.jackson.annotation.JsonAnySetter;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import lombok.AccessLevel;
import com.nutanix.devplatform.models.PrettyModeViews.*;
import com.fasterxml.jackson.annotation.JsonView;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.nutanix.dp1.vmm.deserializers.VmmObjectTypeTypedObject;

import javax.validation.constraints.*;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import static com.nutanix.dp1.vmm.deserializers.VmmDeserializerUtils.*;


/**
 * Overrides specification for VM create from a Template.
 */



@Data
@lombok.extern.slf4j.Slf4j
public class VmConfigOverride implements java.io.Serializable, VmmObjectTypeTypedObject {

  

  public VmConfigOverride() {

    this.$objectType = this.initialize$objectType();
    this.$reserved = new java.util.LinkedHashMap<>();
    this.$reserved.put("$fqObjectType", this.initialize$fqObjectType());
    this.$unknownFields = new java.util.LinkedHashMap<>();

  }

  @lombok.Builder(builderMethodName = "VmConfigOverrideBuilder")
  public VmConfigOverride(String name, Integer numSockets, Integer numCoresPerSocket, Integer numThreadsPerCore, Long memorySizeBytes, java.util.List nics, com.nutanix.dp1.vmm.vmm.v4.ahv.config.GuestCustomizationParams guestCustomization) {
    this.$objectType = this.initialize$objectType();
    this.$reserved = new java.util.LinkedHashMap<>();
    this.$reserved.put("$fqObjectType", this.initialize$fqObjectType());
    this.$unknownFields = new java.util.LinkedHashMap<>();

    this.setName(name);

    this.setNumSockets(numSockets);

    this.setNumCoresPerSocket(numCoresPerSocket);

    this.setNumThreadsPerCore(numThreadsPerCore);

    this.setMemorySizeBytes(memorySizeBytes);

    this.setNics(nics);

    this.setGuestCustomization(guestCustomization);
  }


  protected String initialize$objectType() {
    return "vmm.v4.templates.VmConfigOverride";
  }


  protected String initialize$fqObjectType() {
    return "vmm.v4.r0.a1.templates.VmConfigOverride";
  }

  @JsonAnySetter
  private void setUndeserializedFields(String name, String value) {
    $unknownFields.put(name, value);
  }


  
  

  
    /**
    * VM name.
    */
    @javax.validation.constraints.Size(min = 1, max = 256)
    
    @JsonProperty("name")
    public String name = null;
  
  

  
    /**
    * Number of vCPU sockets.
    */
    @javax.validation.constraints.Min(value = 1)
    
    @JsonProperty("numSockets")
    public Integer numSockets = null;
  
  

  
    /**
    * Number of cores per socket.
    */
    @javax.validation.constraints.Min(value = 1)
    
    @JsonProperty("numCoresPerSocket")
    public Integer numCoresPerSocket = null;
  
  

  
    /**
    * Number of threads per core.
    */
    @javax.validation.constraints.Min(value = 1)
    
    @JsonProperty("numThreadsPerCore")
    public Integer numThreadsPerCore = null;
  
  

  
    /**
    * Memory size in bytes.
    */
    @javax.validation.constraints.Min(value = 1L)
    
    @JsonProperty("memorySizeBytes")
    public Long memorySizeBytes = null;
  
  

  
    /**
    * NICs attached to the VM.
    */
    
    @JsonProperty("nics")
    public List nics = null;
  
  

  
    /**
    * 
    */
    
    @JsonProperty("guestCustomization")
    public com.nutanix.dp1.vmm.vmm.v4.ahv.config.GuestCustomizationParams guestCustomization = null;
  
  

  
    
    
    @Getter
    @JsonView({StandardView.class})
    
    protected final Map $reserved;
  
  

  
    
    
    @Getter
    @JsonView({StandardView.class})
    
    protected final String $objectType;
  
  

  
    
    
    @Getter
    @JsonView({StandardView.class})
    
    protected final Map $unknownFields;
  
  

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy