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

com.nutanix.dp1.mic.microseg.v4.config.ServiceGroup Maven / Gradle / Ivy

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 ServiceGroup extends com.nutanix.dp1.mic.common.v1.response.ExternalizableAbstractModel implements java.io.Serializable, MicObjectTypeTypedObject {

  

  public ServiceGroup() {
    super();
    
  }

  @lombok.Builder(builderMethodName = "ServiceGroupBuilder")
  public ServiceGroup(String tenantId, String extId, java.util.List links, String name, String description, Boolean isSystemDefined, java.util.List tcpServices, java.util.List udpServices, java.util.List icmpServices, java.util.List policyReferences, String createdBy) {
    super(tenantId, extId, links);

    this.setName(name);

    this.setDescription(description);

    this.setIsSystemDefined(isSystemDefined);

    this.setTcpServices(tcpServices);

    this.setUdpServices(udpServices);

    this.setIcmpServices(icmpServices);

    this.setPolicyReferences(policyReferences);

    this.setCreatedBy(createdBy);
  }

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

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


  

    
    
    
    private Boolean isSystemDefined = null;
  
    /**
     * Service Group is system defined or not.
     */
    public void setIsSystemDefined(Boolean isSystemDefined) {
      if (this.isSystemDefined == null) {
        this.isSystemDefined = isSystemDefined;
      }
      else {
        log.warn("Read-only property isSystemDefined already contains a non-null value and cannot be set again");
      }
    }
  

    @javax.validation.constraints.Size(min = 1, max = 1000)
    
    
    
    private List policyReferences = null;
  
    /**
     * Reference to policy associated with Service 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 a Service Group.
    */
    @javax.validation.constraints.Size(max = 64)
    
    @JsonProperty("name")
    public String name = null;
  
  

  
    /**
    * A user defined annotation for a Service Group.
    */
    @javax.validation.constraints.Size(max = 1000)
    
    @JsonProperty("description")
    public String description = null;
  
  

  
    /**
    * List of TCP ports in the service.
    */
    @javax.validation.constraints.Size(min = 1, max = 250)
    
    @JsonProperty("tcpServices")
    public List tcpServices = null;
  
  

  
    /**
    * List of UDP ports in the service.
    */
    @javax.validation.constraints.Size(min = 1, max = 250)
    
    @JsonProperty("udpServices")
    public List udpServices = null;
  
  

  
    /**
    * Icmp Type Code List.
    */
    @javax.validation.constraints.Size(min = 1, max = 250)
    
    @JsonProperty("icmpServices")
    public List icmpServices = null;
  
  

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy