io.github.cdklabs.cdkmonitoringconstructs.AlarmFactoryDefaults Maven / Gradle / Ivy
package io.github.cdklabs.cdkmonitoringconstructs;
/**
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.103.1 (build bef2dea)", date = "2024-09-24T17:32:51.762Z")
@software.amazon.jsii.Jsii(module = io.github.cdklabs.cdkmonitoringconstructs.$Module.class, fqn = "cdk-monitoring-constructs.AlarmFactoryDefaults")
@software.amazon.jsii.Jsii.Proxy(AlarmFactoryDefaults.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public interface AlarmFactoryDefaults extends software.amazon.jsii.JsiiSerializable {
/**
* (experimental) Enables the configured CloudWatch alarm ticketing actions for either all severities, or per severity.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull java.lang.Object getActionsEnabled();
/**
* (experimental) Global prefix for all alarm names.
*
* This should be something unique to avoid potential collisions.
* This is ignored if an alarm's dedupeStringOverride is declared.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@org.jetbrains.annotations.NotNull java.lang.String getAlarmNamePrefix();
/**
* (experimental) Default alarm action used for each alarm, unless it is overridden.
*
* Default: - no action.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable io.github.cdklabs.cdkmonitoringconstructs.IAlarmActionStrategy getAction() {
return null;
}
/**
* (experimental) Custom strategy to name alarms.
*
* Default: - default behaviour (no change)
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable io.github.cdklabs.cdkmonitoringconstructs.IAlarmNamingStrategy getAlarmNamingStrategy() {
return null;
}
/**
* (experimental) Custom strategy to create annotations for alarms.
*
* Default: - default annotations
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable io.github.cdklabs.cdkmonitoringconstructs.IAlarmAnnotationStrategy getAnnotationStrategy() {
return null;
}
/**
* (experimental) Number of breaches required to transition into an ALARM state.
*
* Default: - 3
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.lang.Number getDatapointsToAlarm() {
return null;
}
/**
* (experimental) Custom strategy to process dedupe strings of the alarms.
*
* Default: - default behaviour (no change)
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable io.github.cdklabs.cdkmonitoringconstructs.IAlarmDedupeStringProcessor getDedupeStringProcessor() {
return null;
}
/**
* (experimental) Optional alarm action for each disambiguator.
*
* Default: - Global alarm action if defined.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.util.Map getDisambiguatorAction() {
return null;
}
/**
* (experimental) An optional link included in the generated ticket description body.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.lang.String getDocumentationLink() {
return null;
}
/**
* (experimental) Number of periods to consider when checking the number of breaching datapoints.
*
* Default: - Same as datapointsToAlarm.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.lang.Number getEvaluationPeriods() {
return null;
}
/**
* (experimental) An optional link included in the generated ticket description body.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.lang.String getRunbookLink() {
return null;
}
/**
* (experimental) If this is defined as false and dedupeStringOverride is undefined, the alarm prefix will be part of the dedupe string.
*
* This essentially stops the dedupe of different errors together.
*
* Default: - undefined (true)
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.lang.Boolean getUseDefaultDedupeForError() {
return null;
}
/**
* (experimental) If this is defined as false and dedupeStringOverride is undefined, the alarm prefix will be part of the dedupe string.
*
* This essentially stops the dedupe of different latency issues together.
*
* Default: - undefined (true)
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
default @org.jetbrains.annotations.Nullable java.lang.Boolean getUseDefaultDedupeForLatency() {
return null;
}
/**
* @return a {@link Builder} of {@link AlarmFactoryDefaults}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link AlarmFactoryDefaults}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.Object actionsEnabled;
java.lang.String alarmNamePrefix;
io.github.cdklabs.cdkmonitoringconstructs.IAlarmActionStrategy action;
io.github.cdklabs.cdkmonitoringconstructs.IAlarmNamingStrategy alarmNamingStrategy;
io.github.cdklabs.cdkmonitoringconstructs.IAlarmAnnotationStrategy annotationStrategy;
java.lang.Number datapointsToAlarm;
io.github.cdklabs.cdkmonitoringconstructs.IAlarmDedupeStringProcessor dedupeStringProcessor;
java.util.Map disambiguatorAction;
java.lang.String documentationLink;
java.lang.Number evaluationPeriods;
java.lang.String runbookLink;
java.lang.Boolean useDefaultDedupeForError;
java.lang.Boolean useDefaultDedupeForLatency;
/**
* Sets the value of {@link AlarmFactoryDefaults#getActionsEnabled}
* @param actionsEnabled Enables the configured CloudWatch alarm ticketing actions for either all severities, or per severity. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder actionsEnabled(java.lang.Boolean actionsEnabled) {
this.actionsEnabled = actionsEnabled;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getActionsEnabled}
* @param actionsEnabled Enables the configured CloudWatch alarm ticketing actions for either all severities, or per severity. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder actionsEnabled(java.util.Map actionsEnabled) {
this.actionsEnabled = actionsEnabled;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getAlarmNamePrefix}
* @param alarmNamePrefix Global prefix for all alarm names. This parameter is required.
* This should be something unique to avoid potential collisions.
* This is ignored if an alarm's dedupeStringOverride is declared.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder alarmNamePrefix(java.lang.String alarmNamePrefix) {
this.alarmNamePrefix = alarmNamePrefix;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getAction}
* @param action Default alarm action used for each alarm, unless it is overridden.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder action(io.github.cdklabs.cdkmonitoringconstructs.IAlarmActionStrategy action) {
this.action = action;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getAlarmNamingStrategy}
* @param alarmNamingStrategy Custom strategy to name alarms.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder alarmNamingStrategy(io.github.cdklabs.cdkmonitoringconstructs.IAlarmNamingStrategy alarmNamingStrategy) {
this.alarmNamingStrategy = alarmNamingStrategy;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getAnnotationStrategy}
* @param annotationStrategy Custom strategy to create annotations for alarms.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder annotationStrategy(io.github.cdklabs.cdkmonitoringconstructs.IAlarmAnnotationStrategy annotationStrategy) {
this.annotationStrategy = annotationStrategy;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getDatapointsToAlarm}
* @param datapointsToAlarm Number of breaches required to transition into an ALARM state.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder datapointsToAlarm(java.lang.Number datapointsToAlarm) {
this.datapointsToAlarm = datapointsToAlarm;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getDedupeStringProcessor}
* @param dedupeStringProcessor Custom strategy to process dedupe strings of the alarms.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder dedupeStringProcessor(io.github.cdklabs.cdkmonitoringconstructs.IAlarmDedupeStringProcessor dedupeStringProcessor) {
this.dedupeStringProcessor = dedupeStringProcessor;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getDisambiguatorAction}
* @param disambiguatorAction Optional alarm action for each disambiguator.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@SuppressWarnings("unchecked")
public Builder disambiguatorAction(java.util.Map disambiguatorAction) {
this.disambiguatorAction = (java.util.Map)disambiguatorAction;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getDocumentationLink}
* @param documentationLink An optional link included in the generated ticket description body.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder documentationLink(java.lang.String documentationLink) {
this.documentationLink = documentationLink;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getEvaluationPeriods}
* @param evaluationPeriods Number of periods to consider when checking the number of breaching datapoints.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder evaluationPeriods(java.lang.Number evaluationPeriods) {
this.evaluationPeriods = evaluationPeriods;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getRunbookLink}
* @param runbookLink An optional link included in the generated ticket description body.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder runbookLink(java.lang.String runbookLink) {
this.runbookLink = runbookLink;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getUseDefaultDedupeForError}
* @param useDefaultDedupeForError If this is defined as false and dedupeStringOverride is undefined, the alarm prefix will be part of the dedupe string.
* This essentially stops the dedupe of different errors together.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder useDefaultDedupeForError(java.lang.Boolean useDefaultDedupeForError) {
this.useDefaultDedupeForError = useDefaultDedupeForError;
return this;
}
/**
* Sets the value of {@link AlarmFactoryDefaults#getUseDefaultDedupeForLatency}
* @param useDefaultDedupeForLatency If this is defined as false and dedupeStringOverride is undefined, the alarm prefix will be part of the dedupe string.
* This essentially stops the dedupe of different latency issues together.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder useDefaultDedupeForLatency(java.lang.Boolean useDefaultDedupeForLatency) {
this.useDefaultDedupeForLatency = useDefaultDedupeForLatency;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link AlarmFactoryDefaults}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@Override
public AlarmFactoryDefaults build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link AlarmFactoryDefaults}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements AlarmFactoryDefaults {
private final java.lang.Object actionsEnabled;
private final java.lang.String alarmNamePrefix;
private final io.github.cdklabs.cdkmonitoringconstructs.IAlarmActionStrategy action;
private final io.github.cdklabs.cdkmonitoringconstructs.IAlarmNamingStrategy alarmNamingStrategy;
private final io.github.cdklabs.cdkmonitoringconstructs.IAlarmAnnotationStrategy annotationStrategy;
private final java.lang.Number datapointsToAlarm;
private final io.github.cdklabs.cdkmonitoringconstructs.IAlarmDedupeStringProcessor dedupeStringProcessor;
private final java.util.Map disambiguatorAction;
private final java.lang.String documentationLink;
private final java.lang.Number evaluationPeriods;
private final java.lang.String runbookLink;
private final java.lang.Boolean useDefaultDedupeForError;
private final java.lang.Boolean useDefaultDedupeForLatency;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.actionsEnabled = software.amazon.jsii.Kernel.get(this, "actionsEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.alarmNamePrefix = software.amazon.jsii.Kernel.get(this, "alarmNamePrefix", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.action = software.amazon.jsii.Kernel.get(this, "action", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.cdkmonitoringconstructs.IAlarmActionStrategy.class));
this.alarmNamingStrategy = software.amazon.jsii.Kernel.get(this, "alarmNamingStrategy", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.cdkmonitoringconstructs.IAlarmNamingStrategy.class));
this.annotationStrategy = software.amazon.jsii.Kernel.get(this, "annotationStrategy", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.cdkmonitoringconstructs.IAlarmAnnotationStrategy.class));
this.datapointsToAlarm = software.amazon.jsii.Kernel.get(this, "datapointsToAlarm", software.amazon.jsii.NativeType.forClass(java.lang.Number.class));
this.dedupeStringProcessor = software.amazon.jsii.Kernel.get(this, "dedupeStringProcessor", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.cdkmonitoringconstructs.IAlarmDedupeStringProcessor.class));
this.disambiguatorAction = software.amazon.jsii.Kernel.get(this, "disambiguatorAction", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(io.github.cdklabs.cdkmonitoringconstructs.IAlarmActionStrategy.class)));
this.documentationLink = software.amazon.jsii.Kernel.get(this, "documentationLink", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.evaluationPeriods = software.amazon.jsii.Kernel.get(this, "evaluationPeriods", software.amazon.jsii.NativeType.forClass(java.lang.Number.class));
this.runbookLink = software.amazon.jsii.Kernel.get(this, "runbookLink", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
this.useDefaultDedupeForError = software.amazon.jsii.Kernel.get(this, "useDefaultDedupeForError", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
this.useDefaultDedupeForLatency = software.amazon.jsii.Kernel.get(this, "useDefaultDedupeForLatency", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
@SuppressWarnings("unchecked")
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.actionsEnabled = java.util.Objects.requireNonNull(builder.actionsEnabled, "actionsEnabled is required");
this.alarmNamePrefix = java.util.Objects.requireNonNull(builder.alarmNamePrefix, "alarmNamePrefix is required");
this.action = builder.action;
this.alarmNamingStrategy = builder.alarmNamingStrategy;
this.annotationStrategy = builder.annotationStrategy;
this.datapointsToAlarm = builder.datapointsToAlarm;
this.dedupeStringProcessor = builder.dedupeStringProcessor;
this.disambiguatorAction = (java.util.Map)builder.disambiguatorAction;
this.documentationLink = builder.documentationLink;
this.evaluationPeriods = builder.evaluationPeriods;
this.runbookLink = builder.runbookLink;
this.useDefaultDedupeForError = builder.useDefaultDedupeForError;
this.useDefaultDedupeForLatency = builder.useDefaultDedupeForLatency;
}
@Override
public final java.lang.Object getActionsEnabled() {
return this.actionsEnabled;
}
@Override
public final java.lang.String getAlarmNamePrefix() {
return this.alarmNamePrefix;
}
@Override
public final io.github.cdklabs.cdkmonitoringconstructs.IAlarmActionStrategy getAction() {
return this.action;
}
@Override
public final io.github.cdklabs.cdkmonitoringconstructs.IAlarmNamingStrategy getAlarmNamingStrategy() {
return this.alarmNamingStrategy;
}
@Override
public final io.github.cdklabs.cdkmonitoringconstructs.IAlarmAnnotationStrategy getAnnotationStrategy() {
return this.annotationStrategy;
}
@Override
public final java.lang.Number getDatapointsToAlarm() {
return this.datapointsToAlarm;
}
@Override
public final io.github.cdklabs.cdkmonitoringconstructs.IAlarmDedupeStringProcessor getDedupeStringProcessor() {
return this.dedupeStringProcessor;
}
@Override
public final java.util.Map getDisambiguatorAction() {
return this.disambiguatorAction;
}
@Override
public final java.lang.String getDocumentationLink() {
return this.documentationLink;
}
@Override
public final java.lang.Number getEvaluationPeriods() {
return this.evaluationPeriods;
}
@Override
public final java.lang.String getRunbookLink() {
return this.runbookLink;
}
@Override
public final java.lang.Boolean getUseDefaultDedupeForError() {
return this.useDefaultDedupeForError;
}
@Override
public final java.lang.Boolean getUseDefaultDedupeForLatency() {
return this.useDefaultDedupeForLatency;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
data.set("actionsEnabled", om.valueToTree(this.getActionsEnabled()));
data.set("alarmNamePrefix", om.valueToTree(this.getAlarmNamePrefix()));
if (this.getAction() != null) {
data.set("action", om.valueToTree(this.getAction()));
}
if (this.getAlarmNamingStrategy() != null) {
data.set("alarmNamingStrategy", om.valueToTree(this.getAlarmNamingStrategy()));
}
if (this.getAnnotationStrategy() != null) {
data.set("annotationStrategy", om.valueToTree(this.getAnnotationStrategy()));
}
if (this.getDatapointsToAlarm() != null) {
data.set("datapointsToAlarm", om.valueToTree(this.getDatapointsToAlarm()));
}
if (this.getDedupeStringProcessor() != null) {
data.set("dedupeStringProcessor", om.valueToTree(this.getDedupeStringProcessor()));
}
if (this.getDisambiguatorAction() != null) {
data.set("disambiguatorAction", om.valueToTree(this.getDisambiguatorAction()));
}
if (this.getDocumentationLink() != null) {
data.set("documentationLink", om.valueToTree(this.getDocumentationLink()));
}
if (this.getEvaluationPeriods() != null) {
data.set("evaluationPeriods", om.valueToTree(this.getEvaluationPeriods()));
}
if (this.getRunbookLink() != null) {
data.set("runbookLink", om.valueToTree(this.getRunbookLink()));
}
if (this.getUseDefaultDedupeForError() != null) {
data.set("useDefaultDedupeForError", om.valueToTree(this.getUseDefaultDedupeForError()));
}
if (this.getUseDefaultDedupeForLatency() != null) {
data.set("useDefaultDedupeForLatency", om.valueToTree(this.getUseDefaultDedupeForLatency()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("cdk-monitoring-constructs.AlarmFactoryDefaults"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
AlarmFactoryDefaults.Jsii$Proxy that = (AlarmFactoryDefaults.Jsii$Proxy) o;
if (!actionsEnabled.equals(that.actionsEnabled)) return false;
if (!alarmNamePrefix.equals(that.alarmNamePrefix)) return false;
if (this.action != null ? !this.action.equals(that.action) : that.action != null) return false;
if (this.alarmNamingStrategy != null ? !this.alarmNamingStrategy.equals(that.alarmNamingStrategy) : that.alarmNamingStrategy != null) return false;
if (this.annotationStrategy != null ? !this.annotationStrategy.equals(that.annotationStrategy) : that.annotationStrategy != null) return false;
if (this.datapointsToAlarm != null ? !this.datapointsToAlarm.equals(that.datapointsToAlarm) : that.datapointsToAlarm != null) return false;
if (this.dedupeStringProcessor != null ? !this.dedupeStringProcessor.equals(that.dedupeStringProcessor) : that.dedupeStringProcessor != null) return false;
if (this.disambiguatorAction != null ? !this.disambiguatorAction.equals(that.disambiguatorAction) : that.disambiguatorAction != null) return false;
if (this.documentationLink != null ? !this.documentationLink.equals(that.documentationLink) : that.documentationLink != null) return false;
if (this.evaluationPeriods != null ? !this.evaluationPeriods.equals(that.evaluationPeriods) : that.evaluationPeriods != null) return false;
if (this.runbookLink != null ? !this.runbookLink.equals(that.runbookLink) : that.runbookLink != null) return false;
if (this.useDefaultDedupeForError != null ? !this.useDefaultDedupeForError.equals(that.useDefaultDedupeForError) : that.useDefaultDedupeForError != null) return false;
return this.useDefaultDedupeForLatency != null ? this.useDefaultDedupeForLatency.equals(that.useDefaultDedupeForLatency) : that.useDefaultDedupeForLatency == null;
}
@Override
public final int hashCode() {
int result = this.actionsEnabled.hashCode();
result = 31 * result + (this.alarmNamePrefix.hashCode());
result = 31 * result + (this.action != null ? this.action.hashCode() : 0);
result = 31 * result + (this.alarmNamingStrategy != null ? this.alarmNamingStrategy.hashCode() : 0);
result = 31 * result + (this.annotationStrategy != null ? this.annotationStrategy.hashCode() : 0);
result = 31 * result + (this.datapointsToAlarm != null ? this.datapointsToAlarm.hashCode() : 0);
result = 31 * result + (this.dedupeStringProcessor != null ? this.dedupeStringProcessor.hashCode() : 0);
result = 31 * result + (this.disambiguatorAction != null ? this.disambiguatorAction.hashCode() : 0);
result = 31 * result + (this.documentationLink != null ? this.documentationLink.hashCode() : 0);
result = 31 * result + (this.evaluationPeriods != null ? this.evaluationPeriods.hashCode() : 0);
result = 31 * result + (this.runbookLink != null ? this.runbookLink.hashCode() : 0);
result = 31 * result + (this.useDefaultDedupeForError != null ? this.useDefaultDedupeForError.hashCode() : 0);
result = 31 * result + (this.useDefaultDedupeForLatency != null ? this.useDefaultDedupeForLatency.hashCode() : 0);
return result;
}
}
}