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;
}