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

com.nutanix.dp1.pri.prism.v4.serviceability.SystemDefinedPolicy Maven / Gradle / Ivy

/*
 * Generated file ..
 *
 * Product version: 4.0.3-alpha-2
 *
 * Part of the Nutanix Prism Versioned APIs
 *
 * (c) 2023 Nutanix Inc.  All rights reserved
 *
 */

package com.nutanix.dp1.pri.prism.v4.serviceability;

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.pri.deserializers.PriObjectTypeTypedObject;

import javax.validation.constraints.*;

import java.time.OffsetDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import static com.nutanix.dp1.pri.deserializers.PriDeserializerUtils.*;





@EqualsAndHashCode(callSuper=true)
@Data
@lombok.extern.slf4j.Slf4j
public class SystemDefinedPolicy extends com.nutanix.dp1.pri.common.v1.config.TenantAwareModel implements java.io.Serializable, PriObjectTypeTypedObject {

  

  public SystemDefinedPolicy() {
    super();
    
  }

  @lombok.Builder(builderMethodName = "SystemDefinedPolicyBuilder")
  public SystemDefinedPolicy(String tenantId, String extId, String alertTypeId, java.util.List affectedEntityTypes, com.nutanix.dp1.pri.prism.v4.serviceability.AutoResolve autoResolve, java.util.List classifications, java.util.List impactTypes, java.util.List kbArticles, String message, String modifiedByUsername, java.time.OffsetDateTime modifiedTime, java.util.List causeAndResolutions, java.util.List severityThresholdInfos, String title, String smartTitle, Boolean isTenantSpecific, java.util.List alertConfigExceptionGroups, Long exceptionCount) {
    super(tenantId);

    this.setExtId(extId);

    this.setAlertTypeId(alertTypeId);

    this.setAffectedEntityTypes(affectedEntityTypes);

    this.setAutoResolve(autoResolve);

    this.setClassifications(classifications);

    this.setImpactTypes(impactTypes);

    this.setKbArticles(kbArticles);

    this.setMessage(message);

    this.setModifiedByUsername(modifiedByUsername);

    this.setModifiedTime(modifiedTime);

    this.setCauseAndResolutions(causeAndResolutions);

    this.setSeverityThresholdInfos(severityThresholdInfos);

    this.setTitle(title);

    this.setSmartTitle(smartTitle);

    this.setIsTenantSpecific(isTenantSpecific);

    this.setAlertConfigExceptionGroups(alertConfigExceptionGroups);

    this.setExceptionCount(exceptionCount);
  }

  @Override 
  protected String initialize$objectType() {
    return "prism.v4.serviceability.SystemDefinedPolicy";
  }

  @Override 
  protected String initialize$fqObjectType() {
    return "prism.v4.r0.a2.serviceability.SystemDefinedPolicy";
  }


  

    
    
    
    private String extId = null;
  
    /**
     * UID of the system defined alert policy.
     */
    public void setExtId(String extId) {
      if (this.extId == null) {
        this.extId = extId;
      }
      else {
        log.warn("Read-only property extId already contains a non-null value and cannot be set again");
      }
    }
  

    
    
    
    private String alertTypeId = null;
  
    /**
     * System defined alert policy ID.
     */
    public void setAlertTypeId(String alertTypeId) {
      if (this.alertTypeId == null) {
        this.alertTypeId = alertTypeId;
      }
      else {
        log.warn("Read-only property alertTypeId already contains a non-null value and cannot be set again");
      }
    }
  

    @javax.validation.constraints.Size(min = 0, max = 50)
    
    
    
    private List affectedEntityTypes = null;
  
    /**
     * Affected entity types.
     */
    public void setAffectedEntityTypes(List affectedEntityTypes) {
      if (this.affectedEntityTypes == null) {
        this.affectedEntityTypes = affectedEntityTypes;
      }
      else {
        log.warn("Read-only property affectedEntityTypes already contains a non-null value and cannot be set again");
      }
    }
  

    @javax.validation.constraints.Size(min = 0, max = 15)
    
    
    
    private List classifications = null;
  
    /**
     * Various categories into which this alert type can be classified into. For example, Hardware, Storage, License and so on.
     */
    public void setClassifications(List classifications) {
      if (this.classifications == null) {
        this.classifications = classifications;
      }
      else {
        log.warn("Read-only property classifications already contains a non-null value and cannot be set again");
      }
    }
  

    @javax.validation.constraints.Size(min = 0, max = 8)
    
    
    
    private List impactTypes = null;
  
    /**
     * Impact types to which this rule applies to.
     */
    public void setImpactTypes(List impactTypes) {
      if (this.impactTypes == null) {
        this.impactTypes = impactTypes;
      }
      else {
        log.warn("Read-only property impactTypes already contains a non-null value and cannot be set again");
      }
    }
  

    @javax.validation.constraints.Size(min = 0, max = 10)
    
    
    
    private List kbArticles = null;
  
    /**
     * List of KB article numbers.
     */
    public void setKbArticles(List kbArticles) {
      if (this.kbArticles == null) {
        this.kbArticles = kbArticles;
      }
      else {
        log.warn("Read-only property kbArticles already contains a non-null value and cannot be set again");
      }
    }
  

    
    
    
    private String message = null;
  
    /**
     * Message for a system defined alert policy.
     */
    public void setMessage(String message) {
      if (this.message == null) {
        this.message = message;
      }
      else {
        log.warn("Read-only property message already contains a non-null value and cannot be set again");
      }
    }
  

    
    
    
    private String modifiedByUsername = null;
  
    /**
     * Name of the user who last modified the system defined alert policy.
     */
    public void setModifiedByUsername(String modifiedByUsername) {
      if (this.modifiedByUsername == null) {
        this.modifiedByUsername = modifiedByUsername;
      }
      else {
        log.warn("Read-only property modifiedByUsername already contains a non-null value and cannot be set again");
      }
    }
  

    
    
    
    private OffsetDateTime modifiedTime = null;
  
    /**
     * Time in ISO 8601 format for when the system defined alert policy was last modified.
     */
    public void setModifiedTime(OffsetDateTime modifiedTime) {
      if (this.modifiedTime == null) {
        this.modifiedTime = modifiedTime;
      }
      else {
        log.warn("Read-only property modifiedTime already contains a non-null value and cannot be set again");
      }
    }
  

    @javax.validation.constraints.Size(min = 0, max = 15)
    
    
    
    private List causeAndResolutions = null;
  
    /**
     * Possible causes, resolutions and additional details to troubleshoot this alert.
     */
    public void setCauseAndResolutions(List causeAndResolutions) {
      if (this.causeAndResolutions == null) {
        this.causeAndResolutions = causeAndResolutions;
      }
      else {
        log.warn("Read-only property causeAndResolutions already contains a non-null value and cannot be set again");
      }
    }
  

    
    
    
    private String title = null;
  
    /**
     * Title of a system defined alert policy.
     */
    public void setTitle(String title) {
      if (this.title == null) {
        this.title = title;
      }
      else {
        log.warn("Read-only property title already contains a non-null value and cannot be set again");
      }
    }
  

    
    
    
    private String smartTitle = null;
  
    /**
     * Title for the alert policy which can include dynamic parameters like IP address, VM name and so on.
     */
    public void setSmartTitle(String smartTitle) {
      if (this.smartTitle == null) {
        this.smartTitle = smartTitle;
      }
      else {
        log.warn("Read-only property smartTitle already contains a non-null value and cannot be set again");
      }
    }
  

    
    
    
    private Boolean isTenantSpecific = null;
  
    /**
     * Indicates whether this system defined alert policy is specific to the tenant or not.
     */
    public void setIsTenantSpecific(Boolean isTenantSpecific) {
      if (this.isTenantSpecific == null) {
        this.isTenantSpecific = isTenantSpecific;
      }
      else {
        log.warn("Read-only property isTenantSpecific already contains a non-null value and cannot be set again");
      }
    }
  

    
    
    
    private Long exceptionCount = null;
  
    /**
     * Numbers of clusters having exceptions with respect to alert config.
     */
    public void setExceptionCount(Long exceptionCount) {
      if (this.exceptionCount == null) {
        this.exceptionCount = exceptionCount;
      }
      else {
        log.warn("Read-only property exceptionCount already contains a non-null value and cannot be set again");
      }
    }
  
  

  
    /**
    * 
    */
    
    @JsonProperty("autoResolve")
    public com.nutanix.dp1.pri.prism.v4.serviceability.AutoResolve autoResolve = null;
  
  

  
    /**
    * Enable/Disable for each severity information.
    */
    @javax.validation.constraints.Size(min = 0, max = 3)
    
    @JsonProperty("severityThresholdInfos")
    public List severityThresholdInfos = null;
  
  

  
    /**
    * List of clusters that have their alert configurable parameters different from that of in Prism Central.
    */
    @javax.validation.constraints.Size(min = 0, max = 100)
    
    @JsonProperty("alertConfigExceptionGroups")
    public List alertConfigExceptionGroups = null;
  
  

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy