com.nutanix.dp1.mic.microseg.v4.config.AddressGroup 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.microseg.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.mic.deserializers.MicObjectTypeTypedObject;
import javax.validation.constraints.*;
import java.util.ArrayList;
import java.util.List;
import static com.nutanix.dp1.mic.deserializers.MicDeserializerUtils.*;
@EqualsAndHashCode(callSuper=true)
@Data
@lombok.extern.slf4j.Slf4j
public class AddressGroup extends com.nutanix.dp1.mic.common.v1.response.ExternalizableAbstractModel implements java.io.Serializable, MicObjectTypeTypedObject {
public AddressGroup() {
super();
}
@lombok.Builder(builderMethodName = "AddressGroupBuilder")
public AddressGroup(String tenantId, String extId, java.util.List links, String name, String description, java.util.List ipv4Addresses, java.util.List ipRanges, java.util.List policyReferences, String createdBy) {
super(tenantId, extId, links);
this.setName(name);
this.setDescription(description);
this.setIpv4Addresses(ipv4Addresses);
this.setIpRanges(ipRanges);
this.setPolicyReferences(policyReferences);
this.setCreatedBy(createdBy);
}
@Override
protected String initialize$objectType() {
return "microseg.v4.config.AddressGroup";
}
@Override
protected String initialize$fv() {
return "v4.r0.b1";
}
@javax.validation.constraints.Size(min = 1, max = 1000)
private List policyReferences = null;
/**
* Reference to policy associated with Address Group.
*/
public void setPolicyReferences(List policyReferences) {
if (this.policyReferences == null) {
this.policyReferences = policyReferences;
}
else {
log.warn("Read-only property policyReferences already contains a non-null value and cannot be set again");
}
}
@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 createdBy = null;
/**
*
*/
public void setCreatedBy(String createdBy) {
if (this.createdBy == null) {
this.createdBy = createdBy;
}
else {
log.warn("Read-only property createdBy already contains a non-null value and cannot be set again");
}
}
/**
* A short identifier for an Address Group.
*/
@javax.validation.constraints.Size(max = 64)
@JsonProperty("name")
public String name = null;
/**
* A user defined annotation for an Address Group.
*/
@javax.validation.constraints.Size(max = 1000)
@JsonProperty("description")
public String description = null;
/**
* List of CIDR blocks in the Address Group.
*/
@javax.validation.constraints.Size(min = 1, max = 250)
@JsonProperty("ipv4Addresses")
public List ipv4Addresses = null;
/**
* List of IP range containing start and end IP.
*/
@javax.validation.constraints.Size(min = 1, max = 250)
@JsonProperty("ipRanges")
public List ipRanges = null;
}