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

com.nutanix.dp1.dat.dataprotection.v4.content.VmRecoveryPointChangedRegionsComputeSpec Maven / Gradle / Ivy

/*
 * Generated file ..
 *
 * Product version: 4.0.1
 *
 * Part of the Nutanix Data Protection APIs
 *
 * (c) 2024 Nutanix Inc.  All rights reserved
 *
 */

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

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 static com.nutanix.dp1.dat.deserializers.DatDeserializerUtils.*;


/**
 * Compute changed region parameters. These parameters allow you to specify a start offset, length, block size, and a reference disk recovery point. All parameters are optional. However, if you need to set a reference disk recovery point, you must specify all three parameters: recovery point ID, VM recovery point ID, and disk recovery point ID.
 */
@EqualsAndHashCode(callSuper=true)
@Data
@lombok.extern.slf4j.Slf4j
public class VmRecoveryPointChangedRegionsComputeSpec extends com.nutanix.dp1.dat.dataprotection.v4.content.VmDiskRecoveryPointClusterDiscoverSpec implements java.io.Serializable, DatObjectTypeTypedObject {

  

  public VmRecoveryPointChangedRegionsComputeSpec() {
    super();

  }

  @lombok.Builder(builderMethodName = "VmRecoveryPointChangedRegionsComputeSpecBuilder")
  public VmRecoveryPointChangedRegionsComputeSpec(String referenceRecoveryPointExtId, String referenceDiskRecoveryPointExtId, String referenceVmRecoveryPointExtId, Long offset, Long length, Long blockSizeByte) {
    super(referenceRecoveryPointExtId, referenceDiskRecoveryPointExtId, referenceVmRecoveryPointExtId);
    this.setOffset(offset);
    this.setLength(length);
    this.setBlockSizeByte(blockSizeByte);
  }

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

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


  
  
  
    /**
    * The start offset value to compute the changed region. If the value is not provided, the difference is executed from the offset of 0. Note: the start offset might automatically align to a system-defined block boundary.
    */
    
    
    @JsonProperty("offset")
    public Long offset = null;
  
  
  
    /**
    * The length to compute the changed region. If the value is not provided, the difference is performed from the start offset to the end of the disk. Note: the end offset might automatically align to a system-defined block boundary.
    */
    
    
    @JsonProperty("length")
    public Long length = null;
  
  
  
    /**
    * When blockSizeByte is set, all returned ranges will start and end at blockSize addresses, and the changed blocks will match the block size. Supported values of blockSizeByte are [32768, 65536, 131072, 262144]. Example: if blockSizeByte is set to 32768 (i.e 32KB), all ranges will start at multiple of 32KB and end at multiple of 32KB value. Default blockSizeByte is set to 32KB
    */
    @javax.validation.constraints.Max(value = 262144L)
    @javax.validation.constraints.Min(value = 32768L)
    
    
    @JsonProperty("blockSizeByte")
    public Long blockSizeByte = null;
  
  

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy