![JAR search and dependency download from the Maven repository](/logo.png)
com.azure.resourcemanager.securityinsights.models.ScheduledAlertRuleTemplate Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-resourcemanager-securityinsights Show documentation
Show all versions of azure-resourcemanager-securityinsights Show documentation
This package contains Microsoft Azure SDK for SecurityInsights Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider. Package tag package-preview-2021-09.
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
package com.azure.resourcemanager.securityinsights.models;
import com.azure.core.annotation.Fluent;
import com.azure.core.management.SystemData;
import com.azure.json.JsonReader;
import com.azure.json.JsonToken;
import com.azure.json.JsonWriter;
import com.azure.resourcemanager.securityinsights.fluent.models.AlertRuleTemplateInner;
import com.azure.resourcemanager.securityinsights.fluent.models.ScheduledAlertRuleTemplateProperties;
import java.io.IOException;
import java.time.Duration;
import java.time.OffsetDateTime;
import java.util.List;
import java.util.Map;
/**
* Represents scheduled alert rule template.
*/
@Fluent
public final class ScheduledAlertRuleTemplate extends AlertRuleTemplateInner {
/*
* The kind of the alert rule
*/
private AlertRuleKind kind = AlertRuleKind.SCHEDULED;
/*
* Scheduled alert rule template properties
*/
private ScheduledAlertRuleTemplateProperties innerProperties;
/*
* Azure Resource Manager metadata containing createdBy and modifiedBy information.
*/
private SystemData systemData;
/*
* The type of the resource.
*/
private String type;
/*
* The name of the resource.
*/
private String name;
/*
* Fully qualified resource Id for the resource.
*/
private String id;
/**
* Creates an instance of ScheduledAlertRuleTemplate class.
*/
public ScheduledAlertRuleTemplate() {
}
/**
* Get the kind property: The kind of the alert rule.
*
* @return the kind value.
*/
@Override
public AlertRuleKind kind() {
return this.kind;
}
/**
* Get the innerProperties property: Scheduled alert rule template properties.
*
* @return the innerProperties value.
*/
private ScheduledAlertRuleTemplateProperties innerProperties() {
return this.innerProperties;
}
/**
* Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
*
* @return the systemData value.
*/
@Override
public SystemData systemData() {
return this.systemData;
}
/**
* Get the type property: The type of the resource.
*
* @return the type value.
*/
@Override
public String type() {
return this.type;
}
/**
* Get the name property: The name of the resource.
*
* @return the name value.
*/
@Override
public String name() {
return this.name;
}
/**
* Get the id property: Fully qualified resource Id for the resource.
*
* @return the id value.
*/
@Override
public String id() {
return this.id;
}
/**
* Get the alertRulesCreatedByTemplateCount property: the number of alert rules that were created by this template.
*
* @return the alertRulesCreatedByTemplateCount value.
*/
public Integer alertRulesCreatedByTemplateCount() {
return this.innerProperties() == null ? null : this.innerProperties().alertRulesCreatedByTemplateCount();
}
/**
* Set the alertRulesCreatedByTemplateCount property: the number of alert rules that were created by this template.
*
* @param alertRulesCreatedByTemplateCount the alertRulesCreatedByTemplateCount value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withAlertRulesCreatedByTemplateCount(Integer alertRulesCreatedByTemplateCount) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withAlertRulesCreatedByTemplateCount(alertRulesCreatedByTemplateCount);
return this;
}
/**
* Get the createdDateUtc property: The time that this alert rule template has been added.
*
* @return the createdDateUtc value.
*/
public OffsetDateTime createdDateUtc() {
return this.innerProperties() == null ? null : this.innerProperties().createdDateUtc();
}
/**
* Get the lastUpdatedDateUtc property: The time that this alert rule template was last updated.
*
* @return the lastUpdatedDateUtc value.
*/
public OffsetDateTime lastUpdatedDateUtc() {
return this.innerProperties() == null ? null : this.innerProperties().lastUpdatedDateUtc();
}
/**
* Get the description property: The description of the alert rule template.
*
* @return the description value.
*/
public String description() {
return this.innerProperties() == null ? null : this.innerProperties().description();
}
/**
* Set the description property: The description of the alert rule template.
*
* @param description the description value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withDescription(String description) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withDescription(description);
return this;
}
/**
* Get the displayName property: The display name for alert rule template.
*
* @return the displayName value.
*/
public String displayName() {
return this.innerProperties() == null ? null : this.innerProperties().displayName();
}
/**
* Set the displayName property: The display name for alert rule template.
*
* @param displayName the displayName value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withDisplayName(String displayName) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withDisplayName(displayName);
return this;
}
/**
* Get the requiredDataConnectors property: The required data connectors for this template.
*
* @return the requiredDataConnectors value.
*/
public List requiredDataConnectors() {
return this.innerProperties() == null ? null : this.innerProperties().requiredDataConnectors();
}
/**
* Set the requiredDataConnectors property: The required data connectors for this template.
*
* @param requiredDataConnectors the requiredDataConnectors value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate
withRequiredDataConnectors(List requiredDataConnectors) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withRequiredDataConnectors(requiredDataConnectors);
return this;
}
/**
* Get the status property: The alert rule template status.
*
* @return the status value.
*/
public TemplateStatus status() {
return this.innerProperties() == null ? null : this.innerProperties().status();
}
/**
* Set the status property: The alert rule template status.
*
* @param status the status value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withStatus(TemplateStatus status) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withStatus(status);
return this;
}
/**
* Get the query property: The query that creates alerts for this rule.
*
* @return the query value.
*/
public String query() {
return this.innerProperties() == null ? null : this.innerProperties().query();
}
/**
* Set the query property: The query that creates alerts for this rule.
*
* @param query the query value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withQuery(String query) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withQuery(query);
return this;
}
/**
* Get the queryFrequency property: The frequency (in ISO 8601 duration format) for this alert rule to run.
*
* @return the queryFrequency value.
*/
public Duration queryFrequency() {
return this.innerProperties() == null ? null : this.innerProperties().queryFrequency();
}
/**
* Set the queryFrequency property: The frequency (in ISO 8601 duration format) for this alert rule to run.
*
* @param queryFrequency the queryFrequency value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withQueryFrequency(Duration queryFrequency) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withQueryFrequency(queryFrequency);
return this;
}
/**
* Get the queryPeriod property: The period (in ISO 8601 duration format) that this alert rule looks at.
*
* @return the queryPeriod value.
*/
public Duration queryPeriod() {
return this.innerProperties() == null ? null : this.innerProperties().queryPeriod();
}
/**
* Set the queryPeriod property: The period (in ISO 8601 duration format) that this alert rule looks at.
*
* @param queryPeriod the queryPeriod value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withQueryPeriod(Duration queryPeriod) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withQueryPeriod(queryPeriod);
return this;
}
/**
* Get the severity property: The severity for alerts created by this alert rule.
*
* @return the severity value.
*/
public AlertSeverity severity() {
return this.innerProperties() == null ? null : this.innerProperties().severity();
}
/**
* Set the severity property: The severity for alerts created by this alert rule.
*
* @param severity the severity value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withSeverity(AlertSeverity severity) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withSeverity(severity);
return this;
}
/**
* Get the triggerOperator property: The operation against the threshold that triggers alert rule.
*
* @return the triggerOperator value.
*/
public TriggerOperator triggerOperator() {
return this.innerProperties() == null ? null : this.innerProperties().triggerOperator();
}
/**
* Set the triggerOperator property: The operation against the threshold that triggers alert rule.
*
* @param triggerOperator the triggerOperator value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withTriggerOperator(TriggerOperator triggerOperator) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withTriggerOperator(triggerOperator);
return this;
}
/**
* Get the triggerThreshold property: The threshold triggers this alert rule.
*
* @return the triggerThreshold value.
*/
public Integer triggerThreshold() {
return this.innerProperties() == null ? null : this.innerProperties().triggerThreshold();
}
/**
* Set the triggerThreshold property: The threshold triggers this alert rule.
*
* @param triggerThreshold the triggerThreshold value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withTriggerThreshold(Integer triggerThreshold) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withTriggerThreshold(triggerThreshold);
return this;
}
/**
* Get the tactics property: The tactics of the alert rule template.
*
* @return the tactics value.
*/
public List tactics() {
return this.innerProperties() == null ? null : this.innerProperties().tactics();
}
/**
* Set the tactics property: The tactics of the alert rule template.
*
* @param tactics the tactics value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withTactics(List tactics) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withTactics(tactics);
return this;
}
/**
* Get the techniques property: The techniques of the alert rule.
*
* @return the techniques value.
*/
public List techniques() {
return this.innerProperties() == null ? null : this.innerProperties().techniques();
}
/**
* Set the techniques property: The techniques of the alert rule.
*
* @param techniques the techniques value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withTechniques(List techniques) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withTechniques(techniques);
return this;
}
/**
* Get the version property: The version of this template - in format <a.b.c>, where all are numbers. For
* example <1.0.2>.
*
* @return the version value.
*/
public String version() {
return this.innerProperties() == null ? null : this.innerProperties().version();
}
/**
* Set the version property: The version of this template - in format <a.b.c>, where all are numbers. For
* example <1.0.2>.
*
* @param version the version value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withVersion(String version) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withVersion(version);
return this;
}
/**
* Get the eventGroupingSettings property: The event grouping settings.
*
* @return the eventGroupingSettings value.
*/
public EventGroupingSettings eventGroupingSettings() {
return this.innerProperties() == null ? null : this.innerProperties().eventGroupingSettings();
}
/**
* Set the eventGroupingSettings property: The event grouping settings.
*
* @param eventGroupingSettings the eventGroupingSettings value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withEventGroupingSettings(EventGroupingSettings eventGroupingSettings) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withEventGroupingSettings(eventGroupingSettings);
return this;
}
/**
* Get the customDetails property: Dictionary of string key-value pairs of columns to be attached to the alert.
*
* @return the customDetails value.
*/
public Map customDetails() {
return this.innerProperties() == null ? null : this.innerProperties().customDetails();
}
/**
* Set the customDetails property: Dictionary of string key-value pairs of columns to be attached to the alert.
*
* @param customDetails the customDetails value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withCustomDetails(Map customDetails) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withCustomDetails(customDetails);
return this;
}
/**
* Get the entityMappings property: Array of the entity mappings of the alert rule.
*
* @return the entityMappings value.
*/
public List entityMappings() {
return this.innerProperties() == null ? null : this.innerProperties().entityMappings();
}
/**
* Set the entityMappings property: Array of the entity mappings of the alert rule.
*
* @param entityMappings the entityMappings value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withEntityMappings(List entityMappings) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withEntityMappings(entityMappings);
return this;
}
/**
* Get the alertDetailsOverride property: The alert details override settings.
*
* @return the alertDetailsOverride value.
*/
public AlertDetailsOverride alertDetailsOverride() {
return this.innerProperties() == null ? null : this.innerProperties().alertDetailsOverride();
}
/**
* Set the alertDetailsOverride property: The alert details override settings.
*
* @param alertDetailsOverride the alertDetailsOverride value to set.
* @return the ScheduledAlertRuleTemplate object itself.
*/
public ScheduledAlertRuleTemplate withAlertDetailsOverride(AlertDetailsOverride alertDetailsOverride) {
if (this.innerProperties() == null) {
this.innerProperties = new ScheduledAlertRuleTemplateProperties();
}
this.innerProperties().withAlertDetailsOverride(alertDetailsOverride);
return this;
}
/**
* Validates the instance.
*
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
@Override
public void validate() {
if (innerProperties() != null) {
innerProperties().validate();
}
}
/**
* {@inheritDoc}
*/
@Override
public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
jsonWriter.writeStartObject();
jsonWriter.writeStringField("kind", this.kind == null ? null : this.kind.toString());
jsonWriter.writeJsonField("properties", this.innerProperties);
return jsonWriter.writeEndObject();
}
/**
* Reads an instance of ScheduledAlertRuleTemplate from the JsonReader.
*
* @param jsonReader The JsonReader being read.
* @return An instance of ScheduledAlertRuleTemplate if the JsonReader was pointing to an instance of it, or null if
* it was pointing to JSON null.
* @throws IllegalStateException If the deserialized JSON object was missing any required properties.
* @throws IOException If an error occurs while reading the ScheduledAlertRuleTemplate.
*/
public static ScheduledAlertRuleTemplate fromJson(JsonReader jsonReader) throws IOException {
return jsonReader.readObject(reader -> {
ScheduledAlertRuleTemplate deserializedScheduledAlertRuleTemplate = new ScheduledAlertRuleTemplate();
while (reader.nextToken() != JsonToken.END_OBJECT) {
String fieldName = reader.getFieldName();
reader.nextToken();
if ("id".equals(fieldName)) {
deserializedScheduledAlertRuleTemplate.id = reader.getString();
} else if ("name".equals(fieldName)) {
deserializedScheduledAlertRuleTemplate.name = reader.getString();
} else if ("type".equals(fieldName)) {
deserializedScheduledAlertRuleTemplate.type = reader.getString();
} else if ("systemData".equals(fieldName)) {
deserializedScheduledAlertRuleTemplate.systemData = SystemData.fromJson(reader);
} else if ("kind".equals(fieldName)) {
deserializedScheduledAlertRuleTemplate.kind = AlertRuleKind.fromString(reader.getString());
} else if ("properties".equals(fieldName)) {
deserializedScheduledAlertRuleTemplate.innerProperties
= ScheduledAlertRuleTemplateProperties.fromJson(reader);
} else {
reader.skipChildren();
}
}
return deserializedScheduledAlertRuleTemplate;
});
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy