From 6f7a317dcd06262dba167f3ef8dce8c9b4185141 Mon Sep 17 00:00:00 2001 From: "ci.datadog-api-spec" Date: Fri, 1 May 2026 14:49:46 +0000 Subject: [PATCH] Regenerate client from commit 0e6d1c2 of spec repo --- .generator/schemas/v2/openapi.yaml | 17 +++++ .../v2/logs-archives/CreateLogsArchive.java | 2 + .../v2/logs-archives/UpdateLogsArchive.java | 2 + .../v2/model/LogsArchiveAttributes.java | 36 +++++++++- ...ogsArchiveAttributesCompressionMethod.java | 65 +++++++++++++++++++ .../LogsArchiveCreateRequestAttributes.java | 37 ++++++++++- .../api/client/v2/api/logs_archives.feature | 10 +-- 7 files changed, 162 insertions(+), 7 deletions(-) create mode 100644 src/main/java/com/datadog/api/client/v2/model/LogsArchiveAttributesCompressionMethod.java diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 382c9233aa5..e1e1f1984db 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -41379,6 +41379,8 @@ components: LogsArchiveAttributes: description: The attributes associated with the archive. properties: + compression_method: + $ref: "#/components/schemas/LogsArchiveAttributesCompressionMethod" destination: $ref: "#/components/schemas/LogsArchiveDestination" include_tags: @@ -41416,6 +41418,17 @@ components: - query - destination type: object + LogsArchiveAttributesCompressionMethod: + default: GZIP + description: The type of compression for the archive. + enum: + - GZIP + - ZSTD + example: GZIP + type: string + x-enum-varnames: + - GZIP + - ZSTD LogsArchiveCreateRequest: description: The logs archive. properties: @@ -41425,6 +41438,8 @@ components: LogsArchiveCreateRequestAttributes: description: The attributes associated with the archive. properties: + compression_method: + $ref: "#/components/schemas/LogsArchiveAttributesCompressionMethod" destination: $ref: "#/components/schemas/LogsArchiveCreateRequestDestination" include_tags: @@ -106036,6 +106051,7 @@ paths: value: data: attributes: + compression_method: GZIP destination: container: container-name storage_account: account-name @@ -106175,6 +106191,7 @@ paths: value: data: attributes: + compression_method: GZIP destination: container: container-name storage_account: account-name diff --git a/examples/v2/logs-archives/CreateLogsArchive.java b/examples/v2/logs-archives/CreateLogsArchive.java index 64bd6342222..0da27b9690c 100644 --- a/examples/v2/logs-archives/CreateLogsArchive.java +++ b/examples/v2/logs-archives/CreateLogsArchive.java @@ -4,6 +4,7 @@ import com.datadog.api.client.ApiException; import com.datadog.api.client.v2.api.LogsArchivesApi; import com.datadog.api.client.v2.model.LogsArchive; +import com.datadog.api.client.v2.model.LogsArchiveAttributesCompressionMethod; import com.datadog.api.client.v2.model.LogsArchiveCreateRequest; import com.datadog.api.client.v2.model.LogsArchiveCreateRequestAttributes; import com.datadog.api.client.v2.model.LogsArchiveCreateRequestDefinition; @@ -24,6 +25,7 @@ public static void main(String[] args) { new LogsArchiveCreateRequestDefinition() .attributes( new LogsArchiveCreateRequestAttributes() + .compressionMethod(LogsArchiveAttributesCompressionMethod.GZIP) .destination( new LogsArchiveCreateRequestDestination( new LogsArchiveDestinationAzure() diff --git a/examples/v2/logs-archives/UpdateLogsArchive.java b/examples/v2/logs-archives/UpdateLogsArchive.java index 1ca22cb1fdb..9e00f697e00 100644 --- a/examples/v2/logs-archives/UpdateLogsArchive.java +++ b/examples/v2/logs-archives/UpdateLogsArchive.java @@ -4,6 +4,7 @@ import com.datadog.api.client.ApiException; import com.datadog.api.client.v2.api.LogsArchivesApi; import com.datadog.api.client.v2.model.LogsArchive; +import com.datadog.api.client.v2.model.LogsArchiveAttributesCompressionMethod; import com.datadog.api.client.v2.model.LogsArchiveCreateRequest; import com.datadog.api.client.v2.model.LogsArchiveCreateRequestAttributes; import com.datadog.api.client.v2.model.LogsArchiveCreateRequestDefinition; @@ -24,6 +25,7 @@ public static void main(String[] args) { new LogsArchiveCreateRequestDefinition() .attributes( new LogsArchiveCreateRequestAttributes() + .compressionMethod(LogsArchiveAttributesCompressionMethod.GZIP) .destination( new LogsArchiveCreateRequestDestination( new LogsArchiveDestinationAzure() diff --git a/src/main/java/com/datadog/api/client/v2/model/LogsArchiveAttributes.java b/src/main/java/com/datadog/api/client/v2/model/LogsArchiveAttributes.java index ec9a08af720..f17c5ecef85 100644 --- a/src/main/java/com/datadog/api/client/v2/model/LogsArchiveAttributes.java +++ b/src/main/java/com/datadog/api/client/v2/model/LogsArchiveAttributes.java @@ -22,6 +22,7 @@ /** The attributes associated with the archive. */ @JsonPropertyOrder({ + LogsArchiveAttributes.JSON_PROPERTY_COMPRESSION_METHOD, LogsArchiveAttributes.JSON_PROPERTY_DESTINATION, LogsArchiveAttributes.JSON_PROPERTY_INCLUDE_TAGS, LogsArchiveAttributes.JSON_PROPERTY_NAME, @@ -34,6 +35,10 @@ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") public class LogsArchiveAttributes { @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_COMPRESSION_METHOD = "compression_method"; + private LogsArchiveAttributesCompressionMethod compressionMethod = + LogsArchiveAttributesCompressionMethod.GZIP; + public static final String JSON_PROPERTY_DESTINATION = "destination"; private LogsArchiveDestination destination; @@ -72,6 +77,32 @@ public LogsArchiveAttributes( this.query = query; } + public LogsArchiveAttributes compressionMethod( + LogsArchiveAttributesCompressionMethod compressionMethod) { + this.compressionMethod = compressionMethod; + this.unparsed |= !compressionMethod.isValid(); + return this; + } + + /** + * The type of compression for the archive. + * + * @return compressionMethod + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_COMPRESSION_METHOD) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public LogsArchiveAttributesCompressionMethod getCompressionMethod() { + return compressionMethod; + } + + public void setCompressionMethod(LogsArchiveAttributesCompressionMethod compressionMethod) { + if (!compressionMethod.isValid()) { + this.unparsed = true; + } + this.compressionMethod = compressionMethod; + } + public LogsArchiveAttributes destination(LogsArchiveDestination destination) { this.destination = destination; if (destination != null) { @@ -300,7 +331,8 @@ public boolean equals(Object o) { return false; } LogsArchiveAttributes logsArchiveAttributes = (LogsArchiveAttributes) o; - return Objects.equals(this.destination, logsArchiveAttributes.destination) + return Objects.equals(this.compressionMethod, logsArchiveAttributes.compressionMethod) + && Objects.equals(this.destination, logsArchiveAttributes.destination) && Objects.equals(this.includeTags, logsArchiveAttributes.includeTags) && Objects.equals(this.name, logsArchiveAttributes.name) && Objects.equals(this.query, logsArchiveAttributes.query) @@ -314,6 +346,7 @@ public boolean equals(Object o) { @Override public int hashCode() { return Objects.hash( + compressionMethod, destination, includeTags, name, @@ -328,6 +361,7 @@ public int hashCode() { public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class LogsArchiveAttributes {\n"); + sb.append(" compressionMethod: ").append(toIndentedString(compressionMethod)).append("\n"); sb.append(" destination: ").append(toIndentedString(destination)).append("\n"); sb.append(" includeTags: ").append(toIndentedString(includeTags)).append("\n"); sb.append(" name: ").append(toIndentedString(name)).append("\n"); diff --git a/src/main/java/com/datadog/api/client/v2/model/LogsArchiveAttributesCompressionMethod.java b/src/main/java/com/datadog/api/client/v2/model/LogsArchiveAttributesCompressionMethod.java new file mode 100644 index 00000000000..5e9a8b5791c --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/LogsArchiveAttributesCompressionMethod.java @@ -0,0 +1,65 @@ +/* + * 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 type of compression for the archive. */ +@JsonSerialize( + using = + LogsArchiveAttributesCompressionMethod.LogsArchiveAttributesCompressionMethodSerializer + .class) +public class LogsArchiveAttributesCompressionMethod extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("GZIP", "ZSTD")); + + public static final LogsArchiveAttributesCompressionMethod GZIP = + new LogsArchiveAttributesCompressionMethod("GZIP"); + public static final LogsArchiveAttributesCompressionMethod ZSTD = + new LogsArchiveAttributesCompressionMethod("ZSTD"); + + LogsArchiveAttributesCompressionMethod(String value) { + super(value, allowedValues); + } + + public static class LogsArchiveAttributesCompressionMethodSerializer + extends StdSerializer { + public LogsArchiveAttributesCompressionMethodSerializer( + Class t) { + super(t); + } + + public LogsArchiveAttributesCompressionMethodSerializer() { + this(null); + } + + @Override + public void serialize( + LogsArchiveAttributesCompressionMethod value, + JsonGenerator jgen, + SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static LogsArchiveAttributesCompressionMethod fromValue(String value) { + return new LogsArchiveAttributesCompressionMethod(value); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/LogsArchiveCreateRequestAttributes.java b/src/main/java/com/datadog/api/client/v2/model/LogsArchiveCreateRequestAttributes.java index 2fc33eb714e..852225135df 100644 --- a/src/main/java/com/datadog/api/client/v2/model/LogsArchiveCreateRequestAttributes.java +++ b/src/main/java/com/datadog/api/client/v2/model/LogsArchiveCreateRequestAttributes.java @@ -22,6 +22,7 @@ /** The attributes associated with the archive. */ @JsonPropertyOrder({ + LogsArchiveCreateRequestAttributes.JSON_PROPERTY_COMPRESSION_METHOD, LogsArchiveCreateRequestAttributes.JSON_PROPERTY_DESTINATION, LogsArchiveCreateRequestAttributes.JSON_PROPERTY_INCLUDE_TAGS, LogsArchiveCreateRequestAttributes.JSON_PROPERTY_NAME, @@ -33,6 +34,10 @@ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") public class LogsArchiveCreateRequestAttributes { @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_COMPRESSION_METHOD = "compression_method"; + private LogsArchiveAttributesCompressionMethod compressionMethod = + LogsArchiveAttributesCompressionMethod.GZIP; + public static final String JSON_PROPERTY_DESTINATION = "destination"; private LogsArchiveCreateRequestDestination destination; @@ -66,6 +71,32 @@ public LogsArchiveCreateRequestAttributes( this.query = query; } + public LogsArchiveCreateRequestAttributes compressionMethod( + LogsArchiveAttributesCompressionMethod compressionMethod) { + this.compressionMethod = compressionMethod; + this.unparsed |= !compressionMethod.isValid(); + return this; + } + + /** + * The type of compression for the archive. + * + * @return compressionMethod + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_COMPRESSION_METHOD) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public LogsArchiveAttributesCompressionMethod getCompressionMethod() { + return compressionMethod; + } + + public void setCompressionMethod(LogsArchiveAttributesCompressionMethod compressionMethod) { + if (!compressionMethod.isValid()) { + this.unparsed = true; + } + this.compressionMethod = compressionMethod; + } + public LogsArchiveCreateRequestAttributes destination( LogsArchiveCreateRequestDestination destination) { this.destination = destination; @@ -269,7 +300,9 @@ public boolean equals(Object o) { } LogsArchiveCreateRequestAttributes logsArchiveCreateRequestAttributes = (LogsArchiveCreateRequestAttributes) o; - return Objects.equals(this.destination, logsArchiveCreateRequestAttributes.destination) + return Objects.equals( + this.compressionMethod, logsArchiveCreateRequestAttributes.compressionMethod) + && Objects.equals(this.destination, logsArchiveCreateRequestAttributes.destination) && Objects.equals(this.includeTags, logsArchiveCreateRequestAttributes.includeTags) && Objects.equals(this.name, logsArchiveCreateRequestAttributes.name) && Objects.equals(this.query, logsArchiveCreateRequestAttributes.query) @@ -284,6 +317,7 @@ public boolean equals(Object o) { @Override public int hashCode() { return Objects.hash( + compressionMethod, destination, includeTags, name, @@ -297,6 +331,7 @@ public int hashCode() { public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class LogsArchiveCreateRequestAttributes {\n"); + sb.append(" compressionMethod: ").append(toIndentedString(compressionMethod)).append("\n"); sb.append(" destination: ").append(toIndentedString(destination)).append("\n"); sb.append(" includeTags: ").append(toIndentedString(includeTags)).append("\n"); sb.append(" name: ").append(toIndentedString(name)).append("\n"); diff --git a/src/test/resources/com/datadog/api/client/v2/api/logs_archives.feature b/src/test/resources/com/datadog/api/client/v2/api/logs_archives.feature index a6de8c72d4b..4b58769df54 100644 --- a/src/test/resources/com/datadog/api/client/v2/api/logs_archives.feature +++ b/src/test/resources/com/datadog/api/client/v2/api/logs_archives.feature @@ -12,14 +12,14 @@ Feature: Logs Archives @generated @skip @team:DataDog/logs-backend @team:DataDog/logs-forwarding Scenario: Create an archive returns "Bad Request" response Given new "CreateLogsArchive" request - And body with value {"data": {"attributes": {"destination": {"container": "container-name", "integration": {"client_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", "tenant_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"}, "storage_account": "account-name", "type": "azure"}, "include_tags": false, "name": "Nginx Archive", "query": "source:nginx", "rehydration_max_scan_size_in_gb": 100, "rehydration_tags": ["team:intake", "team:app"]}, "type": "archives"}} + And body with value {"data": {"attributes": {"compression_method": "GZIP", "destination": {"container": "container-name", "integration": {"client_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", "tenant_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"}, "storage_account": "account-name", "type": "azure"}, "include_tags": false, "name": "Nginx Archive", "query": "source:nginx", "rehydration_max_scan_size_in_gb": 100, "rehydration_tags": ["team:intake", "team:app"]}, "type": "archives"}} When the request is sent Then the response status is 400 Bad Request @generated @skip @team:DataDog/logs-backend @team:DataDog/logs-forwarding Scenario: Create an archive returns "OK" response Given new "CreateLogsArchive" request - And body with value {"data": {"attributes": {"destination": {"container": "container-name", "integration": {"client_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", "tenant_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"}, "storage_account": "account-name", "type": "azure"}, "include_tags": false, "name": "Nginx Archive", "query": "source:nginx", "rehydration_max_scan_size_in_gb": 100, "rehydration_tags": ["team:intake", "team:app"]}, "type": "archives"}} + And body with value {"data": {"attributes": {"compression_method": "GZIP", "destination": {"container": "container-name", "integration": {"client_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", "tenant_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"}, "storage_account": "account-name", "type": "azure"}, "include_tags": false, "name": "Nginx Archive", "query": "source:nginx", "rehydration_max_scan_size_in_gb": 100, "rehydration_tags": ["team:intake", "team:app"]}, "type": "archives"}} When the request is sent Then the response status is 200 OK @@ -150,7 +150,7 @@ Feature: Logs Archives Scenario: Update an archive returns "Bad Request" response Given new "UpdateLogsArchive" request And request contains "archive_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"destination": {"container": "container-name", "integration": {"client_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", "tenant_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"}, "storage_account": "account-name", "type": "azure"}, "include_tags": false, "name": "Nginx Archive", "query": "source:nginx", "rehydration_max_scan_size_in_gb": 100, "rehydration_tags": ["team:intake", "team:app"]}, "type": "archives"}} + And body with value {"data": {"attributes": {"compression_method": "GZIP", "destination": {"container": "container-name", "integration": {"client_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", "tenant_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"}, "storage_account": "account-name", "type": "azure"}, "include_tags": false, "name": "Nginx Archive", "query": "source:nginx", "rehydration_max_scan_size_in_gb": 100, "rehydration_tags": ["team:intake", "team:app"]}, "type": "archives"}} When the request is sent Then the response status is 400 Bad Request @@ -158,7 +158,7 @@ Feature: Logs Archives Scenario: Update an archive returns "Not found" response Given new "UpdateLogsArchive" request And request contains "archive_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"destination": {"container": "container-name", "integration": {"client_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", "tenant_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"}, "storage_account": "account-name", "type": "azure"}, "include_tags": false, "name": "Nginx Archive", "query": "source:nginx", "rehydration_max_scan_size_in_gb": 100, "rehydration_tags": ["team:intake", "team:app"]}, "type": "archives"}} + And body with value {"data": {"attributes": {"compression_method": "GZIP", "destination": {"container": "container-name", "integration": {"client_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", "tenant_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"}, "storage_account": "account-name", "type": "azure"}, "include_tags": false, "name": "Nginx Archive", "query": "source:nginx", "rehydration_max_scan_size_in_gb": 100, "rehydration_tags": ["team:intake", "team:app"]}, "type": "archives"}} When the request is sent Then the response status is 404 Not found @@ -166,7 +166,7 @@ Feature: Logs Archives Scenario: Update an archive returns "OK" response Given new "UpdateLogsArchive" request And request contains "archive_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"destination": {"container": "container-name", "integration": {"client_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", "tenant_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"}, "storage_account": "account-name", "type": "azure"}, "include_tags": false, "name": "Nginx Archive", "query": "source:nginx", "rehydration_max_scan_size_in_gb": 100, "rehydration_tags": ["team:intake", "team:app"]}, "type": "archives"}} + And body with value {"data": {"attributes": {"compression_method": "GZIP", "destination": {"container": "container-name", "integration": {"client_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa", "tenant_id": "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa"}, "storage_account": "account-name", "type": "azure"}, "include_tags": false, "name": "Nginx Archive", "query": "source:nginx", "rehydration_max_scan_size_in_gb": 100, "rehydration_tags": ["team:intake", "team:app"]}, "type": "archives"}} When the request is sent Then the response status is 200 OK