diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 72945c2c0fd..862cf9219e3 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -54350,6 +54350,39 @@ components: - MEDIUM - HIGH - CRITICAL + SecurityMonitoringRuleSort: + description: The sort parameters used for querying security monitoring rules. + enum: + - name + - creation_date + - update_date + - enabled + - type + - highest_severity + - source + - -name + - -creation_date + - -update_date + - -enabled + - -type + - -highest_severity + - -source + type: string + x-enum-varnames: + - NAME + - CREATION_DATE + - UPDATE_DATE + - ENABLED + - TYPE + - HIGHEST_SEVERITY + - SOURCE + - NAME_DESCENDING + - CREATION_DATE_DESCENDING + - UPDATE_DATE_DESCENDING + - ENABLED_DESCENDING + - TYPE_DESCENDING + - HIGHEST_SEVERITY_DESCENDING + - SOURCE_DESCENDING SecurityMonitoringRuleTestPayload: description: Test a rule. oneOf: @@ -95842,6 +95875,13 @@ paths: required: false schema: type: string + - description: Attribute used to sort rules. Prefix with `-` to sort in descending + order. + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleSort' responses: '200': content: diff --git a/src/main/java/com/datadog/api/client/v2/api/SecurityMonitoringApi.java b/src/main/java/com/datadog/api/client/v2/api/SecurityMonitoringApi.java index 810817d80ec..1d8927d8442 100644 --- a/src/main/java/com/datadog/api/client/v2/api/SecurityMonitoringApi.java +++ b/src/main/java/com/datadog/api/client/v2/api/SecurityMonitoringApi.java @@ -69,6 +69,7 @@ import com.datadog.api.client.v2.model.SecurityMonitoringRuleConvertResponse; import com.datadog.api.client.v2.model.SecurityMonitoringRuleCreatePayload; import com.datadog.api.client.v2.model.SecurityMonitoringRuleResponse; +import com.datadog.api.client.v2.model.SecurityMonitoringRuleSort; import com.datadog.api.client.v2.model.SecurityMonitoringRuleTestRequest; import com.datadog.api.client.v2.model.SecurityMonitoringRuleTestResponse; import com.datadog.api.client.v2.model.SecurityMonitoringRuleUpdatePayload; @@ -10549,6 +10550,7 @@ public static class ListSecurityMonitoringRulesOptionalParameters { private Long pageSize; private Long pageNumber; private String query; + private SecurityMonitoringRuleSort sort; /** * Set pageSize. @@ -10584,6 +10586,18 @@ public ListSecurityMonitoringRulesOptionalParameters query(String query) { this.query = query; return this; } + + /** + * Set sort. + * + * @param sort Attribute used to sort rules. Prefix with - to sort in descending + * order. (optional) + * @return ListSecurityMonitoringRulesOptionalParameters + */ + public ListSecurityMonitoringRulesOptionalParameters sort(SecurityMonitoringRuleSort sort) { + this.sort = sort; + return this; + } } /** @@ -10668,6 +10682,7 @@ public ApiResponse listSecurityMonitoringRu Long pageSize = parameters.pageSize; Long pageNumber = parameters.pageNumber; String query = parameters.query; + SecurityMonitoringRuleSort sort = parameters.sort; // create path and map variables String localVarPath = "/api/v2/security_monitoring/rules"; @@ -10677,6 +10692,7 @@ public ApiResponse listSecurityMonitoringRu localVarQueryParams.addAll(apiClient.parameterToPairs("", "page[size]", pageSize)); localVarQueryParams.addAll(apiClient.parameterToPairs("", "page[number]", pageNumber)); localVarQueryParams.addAll(apiClient.parameterToPairs("", "query", query)); + localVarQueryParams.addAll(apiClient.parameterToPairs("", "sort", sort)); Invocation.Builder builder = apiClient.createBuilder( @@ -10713,6 +10729,7 @@ public ApiResponse listSecurityMonitoringRu Long pageSize = parameters.pageSize; Long pageNumber = parameters.pageNumber; String query = parameters.query; + SecurityMonitoringRuleSort sort = parameters.sort; // create path and map variables String localVarPath = "/api/v2/security_monitoring/rules"; @@ -10722,6 +10739,7 @@ public ApiResponse listSecurityMonitoringRu localVarQueryParams.addAll(apiClient.parameterToPairs("", "page[size]", pageSize)); localVarQueryParams.addAll(apiClient.parameterToPairs("", "page[number]", pageNumber)); localVarQueryParams.addAll(apiClient.parameterToPairs("", "query", query)); + localVarQueryParams.addAll(apiClient.parameterToPairs("", "sort", sort)); Invocation.Builder builder; try { diff --git a/src/main/java/com/datadog/api/client/v2/model/SecurityMonitoringRuleSort.java b/src/main/java/com/datadog/api/client/v2/model/SecurityMonitoringRuleSort.java new file mode 100644 index 00000000000..be3847e7dd4 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecurityMonitoringRuleSort.java @@ -0,0 +1,95 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.datadog.api.client.ModelEnum; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import java.io.IOException; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +/** The sort parameters used for querying security monitoring rules. */ +@JsonSerialize(using = SecurityMonitoringRuleSort.SecurityMonitoringRuleSortSerializer.class) +public class SecurityMonitoringRuleSort extends ModelEnum { + + private static final Set allowedValues = + new HashSet( + Arrays.asList( + "name", + "creation_date", + "update_date", + "enabled", + "type", + "highest_severity", + "source", + "-name", + "-creation_date", + "-update_date", + "-enabled", + "-type", + "-highest_severity", + "-source")); + + public static final SecurityMonitoringRuleSort NAME = new SecurityMonitoringRuleSort("name"); + public static final SecurityMonitoringRuleSort CREATION_DATE = + new SecurityMonitoringRuleSort("creation_date"); + public static final SecurityMonitoringRuleSort UPDATE_DATE = + new SecurityMonitoringRuleSort("update_date"); + public static final SecurityMonitoringRuleSort ENABLED = + new SecurityMonitoringRuleSort("enabled"); + public static final SecurityMonitoringRuleSort TYPE = new SecurityMonitoringRuleSort("type"); + public static final SecurityMonitoringRuleSort HIGHEST_SEVERITY = + new SecurityMonitoringRuleSort("highest_severity"); + public static final SecurityMonitoringRuleSort SOURCE = new SecurityMonitoringRuleSort("source"); + public static final SecurityMonitoringRuleSort NAME_DESCENDING = + new SecurityMonitoringRuleSort("-name"); + public static final SecurityMonitoringRuleSort CREATION_DATE_DESCENDING = + new SecurityMonitoringRuleSort("-creation_date"); + public static final SecurityMonitoringRuleSort UPDATE_DATE_DESCENDING = + new SecurityMonitoringRuleSort("-update_date"); + public static final SecurityMonitoringRuleSort ENABLED_DESCENDING = + new SecurityMonitoringRuleSort("-enabled"); + public static final SecurityMonitoringRuleSort TYPE_DESCENDING = + new SecurityMonitoringRuleSort("-type"); + public static final SecurityMonitoringRuleSort HIGHEST_SEVERITY_DESCENDING = + new SecurityMonitoringRuleSort("-highest_severity"); + public static final SecurityMonitoringRuleSort SOURCE_DESCENDING = + new SecurityMonitoringRuleSort("-source"); + + SecurityMonitoringRuleSort(String value) { + super(value, allowedValues); + } + + public static class SecurityMonitoringRuleSortSerializer + extends StdSerializer { + public SecurityMonitoringRuleSortSerializer(Class t) { + super(t); + } + + public SecurityMonitoringRuleSortSerializer() { + this(null); + } + + @Override + public void serialize( + SecurityMonitoringRuleSort value, JsonGenerator jgen, SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static SecurityMonitoringRuleSort fromValue(String value) { + return new SecurityMonitoringRuleSort(value); + } +}