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

com.nutanix.dp1.pri.prism.v4.serviceability.EmailConfigurationRule 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.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

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


/**
 * Status of remote tunnel that is used to send alert emails.
 */



@Data
@lombok.extern.slf4j.Slf4j
public class EmailConfigurationRule implements java.io.Serializable, PriObjectTypeTypedObject {

  

  public EmailConfigurationRule() {

    this.$objectType = this.initialize$objectType();
    this.$reserved = new java.util.LinkedHashMap<>();
    this.$reserved.put("$fqObjectType", this.initialize$fqObjectType());
    this.$unknownFields = new java.util.LinkedHashMap<>();

  }

  @lombok.Builder(builderMethodName = "EmailConfigurationRuleBuilder")
  public EmailConfigurationRule(java.util.List clusterUuids, java.util.List impactTypes, Boolean hasGlobalEmailContactList, java.util.List matchPhrases, java.util.List recipients, java.util.List severities, Boolean isEnabled) {
    this.$objectType = this.initialize$objectType();
    this.$reserved = new java.util.LinkedHashMap<>();
    this.$reserved.put("$fqObjectType", this.initialize$fqObjectType());
    this.$unknownFields = new java.util.LinkedHashMap<>();

    this.setClusterUuids(clusterUuids);

    this.setImpactTypes(impactTypes);

    this.setHasGlobalEmailContactList(hasGlobalEmailContactList);

    this.setMatchPhrases(matchPhrases);

    this.setRecipients(recipients);

    this.setSeverities(severities);

    this.setIsEnabled(isEnabled);
  }


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


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

  @JsonAnySetter
  private void setUndeserializedFields(String name, String value) {
    $unknownFields.put(name, value);
  }


  
  

  
    /**
    * Cluster UUIDs to which this rule applies to.
    */
    @javax.validation.constraints.Size(min = 0, max = 50)
    
    @JsonProperty("clusterUuids")
    public List clusterUuids = null;
  
  

  
    /**
    * 
    */
    @javax.validation.constraints.Size(min = 0, max = 8)
    
    @JsonProperty("impactTypes")
    public List impactTypes = null;
  
  

  
    /**
    * 
    */
    
    @JsonProperty("hasGlobalEmailContactList")
    public Boolean hasGlobalEmailContactList = false;
  
  

  
    /**
    * List of phrases to match the alert with.
    */
    @javax.validation.constraints.Size(min = 0, max = 100)
    
    @JsonProperty("matchPhrases")
    public List matchPhrases = null;
  
  

  
    /**
    * List of recipients who will receive emails.
    */
    @javax.validation.constraints.Size(min = 0, max = 100)
    
    @JsonProperty("recipients")
    public List recipients = null;
  
  

  
    /**
    * 
    */
    @javax.validation.constraints.Size(min = 0, max = 3)
    
    @JsonProperty("severities")
    public List severities = null;
  
  

  
    /**
    * Indicates if the configuration rule is enabled or not.
    */
    
    @JsonProperty("isEnabled")
    public Boolean isEnabled = true;
  
  

  
    
    
    @Getter
    @JsonView({StandardView.class})
    
    protected final Map $reserved;
  
  

  
    
    
    @Getter
    @JsonView({StandardView.class})
    
    protected final String $objectType;
  
  

  
    
    
    @Getter
    @JsonView({StandardView.class})
    
    protected final Map $unknownFields;
  
  

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy