com.nutanix.dp1.vmm.dataprotection.v4.common.RecoveryPointProperties 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.dataprotection.v4.common;
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.time.OffsetDateTime;
import java.util.ArrayList;
import java.util.List;
import static com.nutanix.dp1.vmm.deserializers.VmmDeserializerUtils.*;
/**
* A model that represents common properties of a Recovery point resources
*/
@EqualsAndHashCode(callSuper=true)
@Data
@lombok.extern.slf4j.Slf4j
public class RecoveryPointProperties extends com.nutanix.dp1.vmm.common.v1.response.ExternalizableAbstractModel implements java.io.Serializable, VmmObjectTypeTypedObject {
public RecoveryPointProperties() {
super();
}
@lombok.Builder(builderMethodName = "RecoveryPointPropertiesBuilder")
public RecoveryPointProperties(String tenantId, String extId, java.util.List links, String locationAgnosticId, String name, java.time.OffsetDateTime creationTime, java.time.OffsetDateTime expirationTime, com.nutanix.dp1.vmm.dataprotection.v4.common.RecoveryPointStatus status, com.nutanix.dp1.vmm.dataprotection.v4.common.RecoveryPointType recoveryPointType, String consistencyGroupExtId, String consistencyGroupName, java.util.List vendorSpecificProperties) {
super(tenantId, extId, links);
this.setLocationAgnosticId(locationAgnosticId);
this.setName(name);
this.setCreationTime(creationTime);
this.setExpirationTime(expirationTime);
this.setStatus(status);
this.setRecoveryPointType(recoveryPointType);
this.setConsistencyGroupExtId(consistencyGroupExtId);
this.setConsistencyGroupName(consistencyGroupName);
this.setVendorSpecificProperties(vendorSpecificProperties);
}
@Override
protected String initialize$objectType() {
return "dataprotection.v4.common.RecoveryPointProperties";
}
@Override
protected String initialize$fqObjectType() {
return "dataprotection.v4.r0.a2.common.RecoveryPointProperties";
}
/**
* Location agnostic identifier of the 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("locationAgnosticId")
public String locationAgnosticId = null;
/**
* The name of the Recovery point.
*/
@JsonProperty("name")
public String name = null;
/**
* The UTC date and time in ISO-8601 format when the Recovery point is created.
*/
@JsonProperty("creationTime")
public OffsetDateTime creationTime = null;
/**
* The UTC date and time in ISO-8601 format when the current Recovery point expires and will be garbage collected.
*/
@JsonProperty("expirationTime")
public OffsetDateTime expirationTime = null;
/**
*
*/
@JsonProperty("status")
public com.nutanix.dp1.vmm.dataprotection.v4.common.RecoveryPointStatus status = null;
/**
*
*/
@JsonProperty("recoveryPointType")
public com.nutanix.dp1.vmm.dataprotection.v4.common.RecoveryPointType recoveryPointType = null;
/**
* The external identifier that can be used to retrieve the consistency group using its URL.
*/
@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("consistencyGroupExtId")
public String consistencyGroupExtId = null;
/**
* Name of the Consistency group.
*/
@JsonProperty("consistencyGroupName")
public String consistencyGroupName = null;
/**
* List of additional metadata provided by the client at the time of Recovery point creation.
*/
@JsonProperty("vendorSpecificProperties")
public List vendorSpecificProperties = null;
}