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

com.nutanix.dp1.dat.dataprotection.v4.config.VolumeGroupRecoveryPoint 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.List;

import static com.nutanix.dp1.dat.deserializers.DatDeserializerUtils.*;


/**
 * A model that represents volume group recovery point properties.
 */


@EqualsAndHashCode(callSuper=true)
@Data
@lombok.extern.slf4j.Slf4j
public class VolumeGroupRecoveryPoint extends com.nutanix.dp1.dat.common.v1.response.ExternalizableAbstractModel implements java.io.Serializable, DatObjectTypeTypedObject {

  

  public VolumeGroupRecoveryPoint() {
    super();
    
  }

  @lombok.Builder(builderMethodName = "VolumeGroupRecoveryPointBuilder")
  public VolumeGroupRecoveryPoint(String tenantId, String extId, java.util.List links, String locationAgnosticId, String volumeGroupExtId, java.util.List volumeGroupCategories) {
    super(tenantId, extId, links);

    this.setLocationAgnosticId(locationAgnosticId);

    this.setVolumeGroupExtId(volumeGroupExtId);

    this.setVolumeGroupCategories(volumeGroupCategories);
  }

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

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


  

    @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}$")
    
    
    
    private String locationAgnosticId = null;
  
    /**
     * Location agnostic identifier of the recovery point. This identifier is used to identify the same instances of a recovery point across different sites.
     */
    public void setLocationAgnosticId(String locationAgnosticId) {
      if (this.locationAgnosticId == null) {
        this.locationAgnosticId = locationAgnosticId;
      }
      else {
        log.warn("Read-only property locationAgnosticId already contains a non-null value and cannot be set again");
      }
    }
  

    
    
    
    private List volumeGroupCategories = null;
  
    /**
     * Category key-value pairs associated with the volume group at the time of recovery point creation. The category key and value are separated by '/'. For example, a category with key 'dept' and value 'hr' will be represented as 'dept/hr'.
     */
    public void setVolumeGroupCategories(List volumeGroupCategories) {
      if (this.volumeGroupCategories == null) {
        this.volumeGroupCategories = volumeGroupCategories;
      }
      else {
        log.warn("Read-only property volumeGroupCategories already contains a non-null value and cannot be set again");
      }
    }
  
  

  
    /**
    * Volume Group external identifier which is captured as part of this recovery point.
    */
    @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("volumeGroupExtId")
    public String volumeGroupExtId = null;
  
  

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy