Skip to content

Commit 8ca27b2

Browse files
api-clients-generation-pipeline[bot]ci.datadog-api-spec
andauthored
Add sort parameter to detection rules list endpoint (#3508)
Co-authored-by: ci.datadog-api-spec <packages@datadoghq.com>
1 parent f53f30d commit 8ca27b2

File tree

3 files changed

+153
-0
lines changed

3 files changed

+153
-0
lines changed

.generator/schemas/v2/openapi.yaml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54465,6 +54465,39 @@ components:
5446554465
- MEDIUM
5446654466
- HIGH
5446754467
- CRITICAL
54468+
SecurityMonitoringRuleSort:
54469+
description: The sort parameters used for querying security monitoring rules.
54470+
enum:
54471+
- name
54472+
- creation_date
54473+
- update_date
54474+
- enabled
54475+
- type
54476+
- highest_severity
54477+
- source
54478+
- -name
54479+
- -creation_date
54480+
- -update_date
54481+
- -enabled
54482+
- -type
54483+
- -highest_severity
54484+
- -source
54485+
type: string
54486+
x-enum-varnames:
54487+
- NAME
54488+
- CREATION_DATE
54489+
- UPDATE_DATE
54490+
- ENABLED
54491+
- TYPE
54492+
- HIGHEST_SEVERITY
54493+
- SOURCE
54494+
- NAME_DESCENDING
54495+
- CREATION_DATE_DESCENDING
54496+
- UPDATE_DATE_DESCENDING
54497+
- ENABLED_DESCENDING
54498+
- TYPE_DESCENDING
54499+
- HIGHEST_SEVERITY_DESCENDING
54500+
- SOURCE_DESCENDING
5446854501
SecurityMonitoringRuleTestPayload:
5446954502
description: Test a rule.
5447054503
oneOf:
@@ -95959,6 +95992,13 @@ paths:
9595995992
required: false
9596095993
schema:
9596195994
type: string
95995+
- description: Attribute used to sort rules. Prefix with `-` to sort in descending
95996+
order.
95997+
in: query
95998+
name: sort
95999+
required: false
96000+
schema:
96001+
$ref: '#/components/schemas/SecurityMonitoringRuleSort'
9596296002
responses:
9596396003
'200':
9596496004
content:

src/main/java/com/datadog/api/client/v2/api/SecurityMonitoringApi.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@
6969
import com.datadog.api.client.v2.model.SecurityMonitoringRuleConvertResponse;
7070
import com.datadog.api.client.v2.model.SecurityMonitoringRuleCreatePayload;
7171
import com.datadog.api.client.v2.model.SecurityMonitoringRuleResponse;
72+
import com.datadog.api.client.v2.model.SecurityMonitoringRuleSort;
7273
import com.datadog.api.client.v2.model.SecurityMonitoringRuleTestRequest;
7374
import com.datadog.api.client.v2.model.SecurityMonitoringRuleTestResponse;
7475
import com.datadog.api.client.v2.model.SecurityMonitoringRuleUpdatePayload;
@@ -10549,6 +10550,7 @@ public static class ListSecurityMonitoringRulesOptionalParameters {
1054910550
private Long pageSize;
1055010551
private Long pageNumber;
1055110552
private String query;
10553+
private SecurityMonitoringRuleSort sort;
1055210554

1055310555
/**
1055410556
* Set pageSize.
@@ -10584,6 +10586,18 @@ public ListSecurityMonitoringRulesOptionalParameters query(String query) {
1058410586
this.query = query;
1058510587
return this;
1058610588
}
10589+
10590+
/**
10591+
* Set sort.
10592+
*
10593+
* @param sort Attribute used to sort rules. Prefix with <code>-</code> to sort in descending
10594+
* order. (optional)
10595+
* @return ListSecurityMonitoringRulesOptionalParameters
10596+
*/
10597+
public ListSecurityMonitoringRulesOptionalParameters sort(SecurityMonitoringRuleSort sort) {
10598+
this.sort = sort;
10599+
return this;
10600+
}
1058710601
}
1058810602

1058910603
/**
@@ -10668,6 +10682,7 @@ public ApiResponse<SecurityMonitoringListRulesResponse> listSecurityMonitoringRu
1066810682
Long pageSize = parameters.pageSize;
1066910683
Long pageNumber = parameters.pageNumber;
1067010684
String query = parameters.query;
10685+
SecurityMonitoringRuleSort sort = parameters.sort;
1067110686
// create path and map variables
1067210687
String localVarPath = "/api/v2/security_monitoring/rules";
1067310688

@@ -10677,6 +10692,7 @@ public ApiResponse<SecurityMonitoringListRulesResponse> listSecurityMonitoringRu
1067710692
localVarQueryParams.addAll(apiClient.parameterToPairs("", "page[size]", pageSize));
1067810693
localVarQueryParams.addAll(apiClient.parameterToPairs("", "page[number]", pageNumber));
1067910694
localVarQueryParams.addAll(apiClient.parameterToPairs("", "query", query));
10695+
localVarQueryParams.addAll(apiClient.parameterToPairs("", "sort", sort));
1068010696

1068110697
Invocation.Builder builder =
1068210698
apiClient.createBuilder(
@@ -10713,6 +10729,7 @@ public ApiResponse<SecurityMonitoringListRulesResponse> listSecurityMonitoringRu
1071310729
Long pageSize = parameters.pageSize;
1071410730
Long pageNumber = parameters.pageNumber;
1071510731
String query = parameters.query;
10732+
SecurityMonitoringRuleSort sort = parameters.sort;
1071610733
// create path and map variables
1071710734
String localVarPath = "/api/v2/security_monitoring/rules";
1071810735

@@ -10722,6 +10739,7 @@ public ApiResponse<SecurityMonitoringListRulesResponse> listSecurityMonitoringRu
1072210739
localVarQueryParams.addAll(apiClient.parameterToPairs("", "page[size]", pageSize));
1072310740
localVarQueryParams.addAll(apiClient.parameterToPairs("", "page[number]", pageNumber));
1072410741
localVarQueryParams.addAll(apiClient.parameterToPairs("", "query", query));
10742+
localVarQueryParams.addAll(apiClient.parameterToPairs("", "sort", sort));
1072510743

1072610744
Invocation.Builder builder;
1072710745
try {
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
/*
2+
* Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
3+
* This product includes software developed at Datadog (https://www.datadoghq.com/).
4+
* Copyright 2019-Present Datadog, Inc.
5+
*/
6+
7+
package com.datadog.api.client.v2.model;
8+
9+
import com.datadog.api.client.ModelEnum;
10+
import com.fasterxml.jackson.annotation.JsonCreator;
11+
import com.fasterxml.jackson.core.JsonGenerator;
12+
import com.fasterxml.jackson.core.JsonProcessingException;
13+
import com.fasterxml.jackson.databind.SerializerProvider;
14+
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
15+
import com.fasterxml.jackson.databind.ser.std.StdSerializer;
16+
import java.io.IOException;
17+
import java.util.Arrays;
18+
import java.util.HashSet;
19+
import java.util.Set;
20+
21+
/** The sort parameters used for querying security monitoring rules. */
22+
@JsonSerialize(using = SecurityMonitoringRuleSort.SecurityMonitoringRuleSortSerializer.class)
23+
public class SecurityMonitoringRuleSort extends ModelEnum<String> {
24+
25+
private static final Set<String> allowedValues =
26+
new HashSet<String>(
27+
Arrays.asList(
28+
"name",
29+
"creation_date",
30+
"update_date",
31+
"enabled",
32+
"type",
33+
"highest_severity",
34+
"source",
35+
"-name",
36+
"-creation_date",
37+
"-update_date",
38+
"-enabled",
39+
"-type",
40+
"-highest_severity",
41+
"-source"));
42+
43+
public static final SecurityMonitoringRuleSort NAME = new SecurityMonitoringRuleSort("name");
44+
public static final SecurityMonitoringRuleSort CREATION_DATE =
45+
new SecurityMonitoringRuleSort("creation_date");
46+
public static final SecurityMonitoringRuleSort UPDATE_DATE =
47+
new SecurityMonitoringRuleSort("update_date");
48+
public static final SecurityMonitoringRuleSort ENABLED =
49+
new SecurityMonitoringRuleSort("enabled");
50+
public static final SecurityMonitoringRuleSort TYPE = new SecurityMonitoringRuleSort("type");
51+
public static final SecurityMonitoringRuleSort HIGHEST_SEVERITY =
52+
new SecurityMonitoringRuleSort("highest_severity");
53+
public static final SecurityMonitoringRuleSort SOURCE = new SecurityMonitoringRuleSort("source");
54+
public static final SecurityMonitoringRuleSort NAME_DESCENDING =
55+
new SecurityMonitoringRuleSort("-name");
56+
public static final SecurityMonitoringRuleSort CREATION_DATE_DESCENDING =
57+
new SecurityMonitoringRuleSort("-creation_date");
58+
public static final SecurityMonitoringRuleSort UPDATE_DATE_DESCENDING =
59+
new SecurityMonitoringRuleSort("-update_date");
60+
public static final SecurityMonitoringRuleSort ENABLED_DESCENDING =
61+
new SecurityMonitoringRuleSort("-enabled");
62+
public static final SecurityMonitoringRuleSort TYPE_DESCENDING =
63+
new SecurityMonitoringRuleSort("-type");
64+
public static final SecurityMonitoringRuleSort HIGHEST_SEVERITY_DESCENDING =
65+
new SecurityMonitoringRuleSort("-highest_severity");
66+
public static final SecurityMonitoringRuleSort SOURCE_DESCENDING =
67+
new SecurityMonitoringRuleSort("-source");
68+
69+
SecurityMonitoringRuleSort(String value) {
70+
super(value, allowedValues);
71+
}
72+
73+
public static class SecurityMonitoringRuleSortSerializer
74+
extends StdSerializer<SecurityMonitoringRuleSort> {
75+
public SecurityMonitoringRuleSortSerializer(Class<SecurityMonitoringRuleSort> t) {
76+
super(t);
77+
}
78+
79+
public SecurityMonitoringRuleSortSerializer() {
80+
this(null);
81+
}
82+
83+
@Override
84+
public void serialize(
85+
SecurityMonitoringRuleSort value, JsonGenerator jgen, SerializerProvider provider)
86+
throws IOException, JsonProcessingException {
87+
jgen.writeObject(value.value);
88+
}
89+
}
90+
91+
@JsonCreator
92+
public static SecurityMonitoringRuleSort fromValue(String value) {
93+
return new SecurityMonitoringRuleSort(value);
94+
}
95+
}

0 commit comments

Comments
 (0)