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

com.nutanix.dp1.dat.dataprotection.v4.config.RecoveryPointRestorationSpec Maven / Gradle / Ivy

Go to download

Business Continuity with full spectrum of Disaster Recovery and Backup solution. Spanning across Single PC, Cross AZ, MultiSite. Configuration of Recovery points, Protection policies, Recovery Plans. Execution and monitoring of back up and recovery orchestrations on OnPrem as well as Cloud.

There is a newer version: 4.0.1
Show newest version
/*
 * Generated file ..
 *
 * Product version: 4.0.1-beta-1
 *
 * Part of the Nutanix Dataprotection Versioned APIs
 *
 * (c) 2024 Nutanix Inc.  All rights reserved
 *
 */

package com.nutanix.dp1.dat.dataprotection.v4.config;

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 java.util.stream.Collectors;
import com.nutanix.dp1.dat.deserializers.DatObjectTypeTypedObject;

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.dat.deserializers.DatDeserializerUtils.*;


/**
 * Specification for the restore action on the top-level recovery point. For a recovery point that contains multiple VM or volume group recovery points, users can selectively trigger restore for any specific set of VM or volume group recovery point(s). In case no particular selection is made, all VM and volume group recovery points that are a part of the top-level recovery point will be restored.
 */



@Data
@lombok.extern.slf4j.Slf4j
public class RecoveryPointRestorationSpec implements java.io.Serializable, DatObjectTypeTypedObject {

  

  public RecoveryPointRestorationSpec() {

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

  }

  @lombok.Builder(builderMethodName = "RecoveryPointRestorationSpecBuilder")
  public RecoveryPointRestorationSpec(String clusterExtId, java.util.List vmRecoveryPointRestoreOverrides, java.util.List volumeGroupRecoveryPointRestoreOverrides) {
    this.$objectType = this.initialize$objectType();
    this.$reserved = new java.util.LinkedHashMap<>();
    this.$reserved.put("$fv", this.initialize$fv());
    this.$unknownFields = new java.util.LinkedHashMap<>();

    this.setClusterExtId(clusterExtId);

    this.setVmRecoveryPointRestoreOverrides(vmRecoveryPointRestoreOverrides);

    this.setVolumeGroupRecoveryPointRestoreOverrides(volumeGroupRecoveryPointRestoreOverrides);
  }


  protected String initialize$objectType() {
    return "dataprotection.v4.config.RecoveryPointRestorationSpec";
  }


  protected String initialize$fv() {
    return "v4.r0.b1";
  }

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


  
  

  
    /**
    * Recovery points are restored at the associated location reference by default. However, there is no particular location reference associated with recovery points located on the cloud. In such a case, the client must specify the external identifier of the cluster on which the entity should be restored.
    */
    @javax.validation.constraints.Pattern(regexp="^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$")
    
    @JsonProperty("clusterExtId")
    public String clusterExtId = null;
  
  

  
    /**
    * List of specifications to restore a specific VM recovery point(s) that are a part of the top-level recovery point. A specific VM recovery point can be selected for restore by specifying its external identifier along with override specification (if any).
    */
    @javax.validation.constraints.Size(min = 1, max = 30)
    
    @JsonProperty("vmRecoveryPointRestoreOverrides")
    public List vmRecoveryPointRestoreOverrides = null;
  
  

  
    /**
    * List of specifications to restore a specific volume group recovery point(s) that are a part of the top-level recovery point. A specific volume group recovery point can be selected for restore by specifying its external identifier along with override specification (if any).
    */
    @javax.validation.constraints.Size(min = 1, max = 30)
    
    @JsonProperty("volumeGroupRecoveryPointRestoreOverrides")
    public List volumeGroupRecoveryPointRestoreOverrides = 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 - 2025 Weber Informatics LLC | Privacy Policy