com.nutanix.dp1.mic.common.v1.response.ExternalizableAbstractModel Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of microseg-java-client Show documentation
Show all versions of microseg-java-client Show documentation
Manage Network Security Policy configuration of Nutanix clusters.
The newest version!
/*
* Generated file ..
*
* Product version: 4.0.1-beta-1
*
* Part of the Nutanix Microseg Versioned APIs
*
* (c) 2024 Nutanix Inc. All rights reserved
*
*/
package com.nutanix.dp1.mic.common.v1.response;
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.mic.deserializers.MicObjectTypeTypedObject;
import javax.validation.constraints.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import static com.nutanix.dp1.mic.deserializers.MicDeserializerUtils.*;
/**
* A model that represents an object instance that is accessible through an API endpoint. Instances of this type get an extId field that contains the globally unique identifier for that instance. Externally accessible instances are always tenant aware and, therefore, extend the TenantAwareModel
*
*/
@EqualsAndHashCode(callSuper=true)
@Data
@lombok.extern.slf4j.Slf4j
public class ExternalizableAbstractModel extends com.nutanix.dp1.mic.common.v1.config.TenantAwareModel implements java.io.Serializable, MicObjectTypeTypedObject {
public ExternalizableAbstractModel() {
super();
}
@lombok.Builder(builderMethodName = "ExternalizableAbstractModelBuilder")
public ExternalizableAbstractModel(String tenantId, String extId, java.util.List links) {
super(tenantId);
this.setExtId(extId);
this.setLinks(links);
}
@Override
protected String initialize$objectType() {
return "common.v1.response.ExternalizableAbstractModel";
}
@Override
protected String initialize$fv() {
return "v1.r0.b1";
}
private List links = null;
/**
* A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
*/
public void setLinks(List links) {
if (this.links == null) {
this.links = links;
}
else {
log.warn("Read-only property links already contains a non-null value and cannot be set again");
}
}
/**
* A globally unique identifier of an instance that is suitable for external consumption.
*/
@javax.validation.constraints.Null
@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}$")
@javax.validation.constraints.NotNull
@JsonProperty("extId")
public String extId = null;
}