From 4e101f40a8ccd0d9f65b2947ebd88d25682e8179 Mon Sep 17 00:00:00 2001 From: "ci.datadog-api-spec" Date: Fri, 7 Aug 2026 15:26:12 +0000 Subject: [PATCH] Regenerate client from commit 1e0b6ab of spec repo --- .generator/schemas/v2/openapi.yaml | 242 ++++++++++++ .../status-pages/PatchMaintenanceUpdate.java | 45 +++ .../api/client/v2/api/StatusPagesApi.java | 207 +++++++++++ .../client/v2/model/MaintenanceUpdate.java | 139 +++++++ .../v2/model/MaintenanceUpdateData.java | 243 +++++++++++++ .../MaintenanceUpdateDataAttributes.java | 344 ++++++++++++++++++ ...MaintenanceUpdateDataAttributesStatus.java | 68 ++++ .../MaintenanceUpdateDataRelationships.java | 209 +++++++++++ ...nceUpdateDataRelationshipsMaintenance.java | 154 ++++++++ ...pdateDataRelationshipsMaintenanceData.java | 186 ++++++++++ ...aintenanceUpdateDataRelationshipsUser.java | 152 ++++++++ ...enanceUpdateDataRelationshipsUserData.java | 183 ++++++++++ ...PatchMaintenanceRequestDataAttributes.java | 33 +- .../model/PatchMaintenanceUpdateRequest.java | 140 +++++++ .../PatchMaintenanceUpdateRequestData.java | 214 +++++++++++ ...aintenanceUpdateRequestDataAttributes.java | 139 +++++++ ...PatchMaintenanceUpdateRequestDataType.java | 62 ++++ .../api/client/v2/api/status_pages.feature | 10 + .../com/datadog/api/client/v2/api/undo.json | 6 + 19 files changed, 2775 insertions(+), 1 deletion(-) create mode 100644 examples/v2/status-pages/PatchMaintenanceUpdate.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdate.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateData.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataAttributes.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataAttributesStatus.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationships.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsMaintenance.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsMaintenanceData.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsUser.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsUserData.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequest.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestData.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestDataAttributes.java create mode 100644 src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestDataType.java diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 397d1a8cdca..cee2fcc7079 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -64693,6 +64693,126 @@ components: - type - id type: object + MaintenanceUpdate: + description: Response object for a maintenance update. + properties: + data: + $ref: "#/components/schemas/MaintenanceUpdateData" + type: object + MaintenanceUpdateData: + description: The data object for a maintenance update. + properties: + attributes: + $ref: "#/components/schemas/MaintenanceUpdateDataAttributes" + id: + description: The ID of the maintenance update. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationships" + type: + $ref: "#/components/schemas/PatchMaintenanceUpdateRequestDataType" + required: + - id + - type + type: object + MaintenanceUpdateDataAttributes: + description: Attributes of a maintenance update resource. + properties: + components_affected: + description: Components affected at the time of the update. + items: + $ref: "#/components/schemas/CreateMaintenanceRequestDataAttributesComponentsAffectedItems" + type: array + created_at: + description: The date and time the update was created. + format: date-time + type: string + description: + description: The message body of the update. + type: string + manual_transition: + description: Whether the update was applied manually by a user (true) or automatically by the system (false). + type: boolean + modified_at: + description: The date and time the update was last modified. + format: date-time + type: string + started_at: + description: The date and time the update started. + format: date-time + type: string + status: + $ref: "#/components/schemas/MaintenanceUpdateDataAttributesStatus" + type: object + MaintenanceUpdateDataAttributesStatus: + description: The status of the maintenance update. + enum: + - scheduled + - in_progress + - completed + - canceled + type: string + x-enum-varnames: + - SCHEDULED + - IN_PROGRESS + - COMPLETED + - CANCELED + MaintenanceUpdateDataRelationships: + description: Relationships of a maintenance update resource. + properties: + created_by_user: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationshipsUser" + last_modified_by_user: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationshipsUser" + maintenance: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationshipsMaintenance" + type: object + MaintenanceUpdateDataRelationshipsMaintenance: + description: The parent maintenance of the update. + properties: + data: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationshipsMaintenanceData" + required: + - data + type: object + MaintenanceUpdateDataRelationshipsMaintenanceData: + description: The maintenance linked to a maintenance update. + properties: + id: + description: The ID of the maintenance. + example: "" + format: uuid + type: string + type: + $ref: "#/components/schemas/PatchMaintenanceRequestDataType" + required: + - type + - id + type: object + MaintenanceUpdateDataRelationshipsUser: + description: A user relationship of a maintenance update. + properties: + data: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationshipsUserData" + required: + - data + type: object + MaintenanceUpdateDataRelationshipsUserData: + description: The data object identifying a Datadog user linked to a maintenance update. + properties: + id: + description: The ID of the Datadog user. + example: "" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object MaintenanceWindow: description: A maintenance window that defines a scheduled time period during which case-related notifications and automation rules are suppressed. Each maintenance window applies to cases matching a specified query. properties: @@ -80255,6 +80375,9 @@ components: PatchMaintenanceRequestDataAttributes: description: The supported attributes for updating a maintenance. properties: + canceled_description: + description: The description shown when the maintenance is canceled. + type: string completed_date: description: Timestamp of when the maintenance was completed. format: date-time @@ -80403,6 +80526,50 @@ components: type: string x-enum-varnames: - MAINTENANCE_TEMPLATES + PatchMaintenanceUpdateRequest: + description: Request object for editing a maintenance update. + example: + data: + attributes: + description: We have completed maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000000 + type: maintenance_updates + properties: + data: + $ref: "#/components/schemas/PatchMaintenanceUpdateRequestData" + type: object + PatchMaintenanceUpdateRequestData: + description: The data object for editing a maintenance update. + properties: + attributes: + $ref: "#/components/schemas/PatchMaintenanceUpdateRequestDataAttributes" + id: + description: The ID of the maintenance update to edit. Must match the `update_id` path parameter. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + type: string + type: + $ref: "#/components/schemas/PatchMaintenanceUpdateRequestDataType" + required: + - id + - type + type: object + PatchMaintenanceUpdateRequestDataAttributes: + description: Attributes for editing a maintenance update. + properties: + description: + description: The message body of the update. + example: "" + type: string + type: object + PatchMaintenanceUpdateRequestDataType: + default: maintenance_updates + description: Maintenance updates resource type. + enum: + - maintenance_updates + example: maintenance_updates + type: string + x-enum-varnames: + - MAINTENANCE_UPDATES PatchNotificationRuleParameters: description: Body of the notification rule patch request. properties: @@ -203994,6 +204161,81 @@ paths: operator: AND permissions: - status_pages_incident_write + /api/v2/statuspages/{page_id}/maintenances/{maintenance_id}/updates/{update_id}: + patch: + description: Edits the message of a specific maintenance update. Editing is allowed regardless of the parent maintenance's status, including completed and canceled maintenances. + operationId: PatchMaintenanceUpdate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the maintenance. + in: path + name: maintenance_id + required: true + schema: + format: uuid + type: string + - description: The ID of the maintenance update. + in: path + name: update_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: We have completed maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000000 + type: maintenance_updates + schema: + $ref: "#/components/schemas/PatchMaintenanceUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: [] + created_at: "2026-04-27T13:37:31+00:00" + description: We have completed maintenance on the API to improve performance. + manual_transition: true + modified_at: "2026-04-27T14:37:31+00:00" + started_at: "2026-04-27T13:37:31+00:00" + status: completed + id: 00000000-0000-0000-0000-000000000000 + type: maintenance_updates + schema: + $ref: "#/components/schemas/MaintenanceUpdate" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Edit maintenance update + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write /api/v2/statuspages/{page_id}/publish: post: description: Publishes a status page. For pages of type `public`, makes the status page available on the public internet and requires the `status_pages_public_page_publish` permission. For pages of type `internal`, makes the status page available under the `status-pages/$domain_prefix/view` route within the Datadog organization and requires the `status_pages_internal_page_publish` permission. The `status_pages_settings_write` permission is temporarily honored as we migrate publishing functionality from the update status page endpoint to the publish status page endpoint. diff --git a/examples/v2/status-pages/PatchMaintenanceUpdate.java b/examples/v2/status-pages/PatchMaintenanceUpdate.java new file mode 100644 index 00000000000..7a1f1cea43d --- /dev/null +++ b/examples/v2/status-pages/PatchMaintenanceUpdate.java @@ -0,0 +1,45 @@ +// Edit maintenance update returns "OK" response + +import com.datadog.api.client.ApiClient; +import com.datadog.api.client.ApiException; +import com.datadog.api.client.v2.api.StatusPagesApi; +import com.datadog.api.client.v2.model.MaintenanceUpdate; +import com.datadog.api.client.v2.model.PatchMaintenanceUpdateRequest; +import com.datadog.api.client.v2.model.PatchMaintenanceUpdateRequestData; +import com.datadog.api.client.v2.model.PatchMaintenanceUpdateRequestDataAttributes; +import com.datadog.api.client.v2.model.PatchMaintenanceUpdateRequestDataType; +import java.util.UUID; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = ApiClient.getDefaultApiClient(); + StatusPagesApi apiInstance = new StatusPagesApi(defaultClient); + + PatchMaintenanceUpdateRequest body = + new PatchMaintenanceUpdateRequest() + .data( + new PatchMaintenanceUpdateRequestData() + .attributes( + new PatchMaintenanceUpdateRequestDataAttributes() + .description( + "We have completed maintenance on the API to improve performance.")) + .id("00000000-0000-0000-0000-000000000000") + .type(PatchMaintenanceUpdateRequestDataType.MAINTENANCE_UPDATES)); + + try { + MaintenanceUpdate result = + apiInstance.patchMaintenanceUpdate( + UUID.fromString("9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"), + UUID.fromString("9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"), + UUID.fromString("9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"), + body); + System.out.println(result); + } catch (ApiException e) { + System.err.println("Exception when calling StatusPagesApi#patchMaintenanceUpdate"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} diff --git a/src/main/java/com/datadog/api/client/v2/api/StatusPagesApi.java b/src/main/java/com/datadog/api/client/v2/api/StatusPagesApi.java index 4be2a15ac94..5dbd2a6c2a0 100644 --- a/src/main/java/com/datadog/api/client/v2/api/StatusPagesApi.java +++ b/src/main/java/com/datadog/api/client/v2/api/StatusPagesApi.java @@ -21,12 +21,14 @@ import com.datadog.api.client.v2.model.MaintenanceArray; import com.datadog.api.client.v2.model.MaintenanceTemplate; import com.datadog.api.client.v2.model.MaintenanceTemplateArray; +import com.datadog.api.client.v2.model.MaintenanceUpdate; import com.datadog.api.client.v2.model.PatchComponentRequest; import com.datadog.api.client.v2.model.PatchDegradationRequest; import com.datadog.api.client.v2.model.PatchDegradationTemplateRequest; import com.datadog.api.client.v2.model.PatchDegradationUpdateRequest; import com.datadog.api.client.v2.model.PatchMaintenanceRequest; import com.datadog.api.client.v2.model.PatchMaintenanceTemplateRequest; +import com.datadog.api.client.v2.model.PatchMaintenanceUpdateRequest; import com.datadog.api.client.v2.model.PatchStatusPageRequest; import com.datadog.api.client.v2.model.StatusPage; import com.datadog.api.client.v2.model.StatusPageArray; @@ -5570,6 +5572,211 @@ public CompletableFuture> listStatusPagesWithHttpIn new GenericType() {}); } + /** + * Edit maintenance update. + * + *

See {@link #patchMaintenanceUpdateWithHttpInfo}. + * + * @param pageId The ID of the status page. (required) + * @param maintenanceId The ID of the maintenance. (required) + * @param updateId The ID of the maintenance update. (required) + * @param body (required) + * @return MaintenanceUpdate + * @throws ApiException if fails to make API call + */ + public MaintenanceUpdate patchMaintenanceUpdate( + UUID pageId, UUID maintenanceId, UUID updateId, PatchMaintenanceUpdateRequest body) + throws ApiException { + return patchMaintenanceUpdateWithHttpInfo(pageId, maintenanceId, updateId, body).getData(); + } + + /** + * Edit maintenance update. + * + *

See {@link #patchMaintenanceUpdateWithHttpInfoAsync}. + * + * @param pageId The ID of the status page. (required) + * @param maintenanceId The ID of the maintenance. (required) + * @param updateId The ID of the maintenance update. (required) + * @param body (required) + * @return CompletableFuture<MaintenanceUpdate> + */ + public CompletableFuture patchMaintenanceUpdateAsync( + UUID pageId, UUID maintenanceId, UUID updateId, PatchMaintenanceUpdateRequest body) { + return patchMaintenanceUpdateWithHttpInfoAsync(pageId, maintenanceId, updateId, body) + .thenApply( + response -> { + return response.getData(); + }); + } + + /** + * Edits the message of a specific maintenance update. Editing is allowed regardless of the parent + * maintenance's status, including completed and canceled maintenances. + * + * @param pageId The ID of the status page. (required) + * @param maintenanceId The ID of the maintenance. (required) + * @param updateId The ID of the maintenance update. (required) + * @param body (required) + * @return ApiResponse<MaintenanceUpdate> + * @throws ApiException if fails to make API call + * @http.response.details + * + * + * + * + * + *
Response details
Status Code Description Response Headers
200 OK -
429 Too many requests -
+ */ + public ApiResponse patchMaintenanceUpdateWithHttpInfo( + UUID pageId, UUID maintenanceId, UUID updateId, PatchMaintenanceUpdateRequest body) + throws ApiException { + Object localVarPostBody = body; + + // verify the required parameter 'pageId' is set + if (pageId == null) { + throw new ApiException( + 400, "Missing the required parameter 'pageId' when calling patchMaintenanceUpdate"); + } + + // verify the required parameter 'maintenanceId' is set + if (maintenanceId == null) { + throw new ApiException( + 400, + "Missing the required parameter 'maintenanceId' when calling patchMaintenanceUpdate"); + } + + // verify the required parameter 'updateId' is set + if (updateId == null) { + throw new ApiException( + 400, "Missing the required parameter 'updateId' when calling patchMaintenanceUpdate"); + } + + // verify the required parameter 'body' is set + if (body == null) { + throw new ApiException( + 400, "Missing the required parameter 'body' when calling patchMaintenanceUpdate"); + } + // create path and map variables + String localVarPath = + "/api/v2/statuspages/{page_id}/maintenances/{maintenance_id}/updates/{update_id}" + .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString())) + .replaceAll( + "\\{" + "maintenance_id" + "\\}", apiClient.escapeString(maintenanceId.toString())) + .replaceAll("\\{" + "update_id" + "\\}", apiClient.escapeString(updateId.toString())); + + Map localVarHeaderParams = new HashMap(); + + Invocation.Builder builder = + apiClient.createBuilder( + "v2.StatusPagesApi.patchMaintenanceUpdate", + localVarPath, + new ArrayList(), + localVarHeaderParams, + new HashMap(), + new String[] {"application/json"}, + new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"}); + return apiClient.invokeAPI( + "PATCH", + builder, + localVarHeaderParams, + new String[] {"application/json"}, + localVarPostBody, + new HashMap(), + false, + new GenericType() {}); + } + + /** + * Edit maintenance update. + * + *

See {@link #patchMaintenanceUpdateWithHttpInfo}. + * + * @param pageId The ID of the status page. (required) + * @param maintenanceId The ID of the maintenance. (required) + * @param updateId The ID of the maintenance update. (required) + * @param body (required) + * @return CompletableFuture<ApiResponse<MaintenanceUpdate>> + */ + public CompletableFuture> patchMaintenanceUpdateWithHttpInfoAsync( + UUID pageId, UUID maintenanceId, UUID updateId, PatchMaintenanceUpdateRequest body) { + Object localVarPostBody = body; + + // verify the required parameter 'pageId' is set + if (pageId == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, "Missing the required parameter 'pageId' when calling patchMaintenanceUpdate")); + return result; + } + + // verify the required parameter 'maintenanceId' is set + if (maintenanceId == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, + "Missing the required parameter 'maintenanceId' when calling" + + " patchMaintenanceUpdate")); + return result; + } + + // verify the required parameter 'updateId' is set + if (updateId == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, + "Missing the required parameter 'updateId' when calling patchMaintenanceUpdate")); + return result; + } + + // verify the required parameter 'body' is set + if (body == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, "Missing the required parameter 'body' when calling patchMaintenanceUpdate")); + return result; + } + // create path and map variables + String localVarPath = + "/api/v2/statuspages/{page_id}/maintenances/{maintenance_id}/updates/{update_id}" + .replaceAll("\\{" + "page_id" + "\\}", apiClient.escapeString(pageId.toString())) + .replaceAll( + "\\{" + "maintenance_id" + "\\}", apiClient.escapeString(maintenanceId.toString())) + .replaceAll("\\{" + "update_id" + "\\}", apiClient.escapeString(updateId.toString())); + + Map localVarHeaderParams = new HashMap(); + + Invocation.Builder builder; + try { + builder = + apiClient.createBuilder( + "v2.StatusPagesApi.patchMaintenanceUpdate", + localVarPath, + new ArrayList(), + localVarHeaderParams, + new HashMap(), + new String[] {"application/json"}, + new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"}); + } catch (ApiException ex) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally(ex); + return result; + } + return apiClient.invokeAPIAsync( + "PATCH", + builder, + localVarHeaderParams, + new String[] {"application/json"}, + localVarPostBody, + new HashMap(), + false, + new GenericType() {}); + } + /** * Publish status page. * diff --git a/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdate.java b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdate.java new file mode 100644 index 00000000000..2c1133b8db9 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdate.java @@ -0,0 +1,139 @@ +/* + * 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.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Response object for a maintenance update. */ +@JsonPropertyOrder({MaintenanceUpdate.JSON_PROPERTY_DATA}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class MaintenanceUpdate { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_DATA = "data"; + private MaintenanceUpdateData data; + + public MaintenanceUpdate data(MaintenanceUpdateData data) { + this.data = data; + this.unparsed |= data.unparsed; + return this; + } + + /** + * The data object for a maintenance update. + * + * @return data + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DATA) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public MaintenanceUpdateData getData() { + return data; + } + + public void setData(MaintenanceUpdateData data) { + this.data = data; + if (data != null) { + this.unparsed |= data.unparsed; + } + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return MaintenanceUpdate + */ + @JsonAnySetter + public MaintenanceUpdate putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this MaintenanceUpdate object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MaintenanceUpdate maintenanceUpdate = (MaintenanceUpdate) o; + return Objects.equals(this.data, maintenanceUpdate.data) + && Objects.equals(this.additionalProperties, maintenanceUpdate.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(data, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MaintenanceUpdate {\n"); + sb.append(" data: ").append(toIndentedString(data)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateData.java b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateData.java new file mode 100644 index 00000000000..1b8ba5a47d7 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateData.java @@ -0,0 +1,243 @@ +/* + * 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.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; +import java.util.UUID; + +/** The data object for a maintenance update. */ +@JsonPropertyOrder({ + MaintenanceUpdateData.JSON_PROPERTY_ATTRIBUTES, + MaintenanceUpdateData.JSON_PROPERTY_ID, + MaintenanceUpdateData.JSON_PROPERTY_RELATIONSHIPS, + MaintenanceUpdateData.JSON_PROPERTY_TYPE +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class MaintenanceUpdateData { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_ATTRIBUTES = "attributes"; + private MaintenanceUpdateDataAttributes attributes; + + public static final String JSON_PROPERTY_ID = "id"; + private UUID id; + + public static final String JSON_PROPERTY_RELATIONSHIPS = "relationships"; + private MaintenanceUpdateDataRelationships relationships; + + public static final String JSON_PROPERTY_TYPE = "type"; + private PatchMaintenanceUpdateRequestDataType type = + PatchMaintenanceUpdateRequestDataType.MAINTENANCE_UPDATES; + + public MaintenanceUpdateData() {} + + @JsonCreator + public MaintenanceUpdateData( + @JsonProperty(required = true, value = JSON_PROPERTY_ID) UUID id, + @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) + PatchMaintenanceUpdateRequestDataType type) { + this.id = id; + this.type = type; + this.unparsed |= !type.isValid(); + } + + public MaintenanceUpdateData attributes(MaintenanceUpdateDataAttributes attributes) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + return this; + } + + /** + * Attributes of a maintenance update resource. + * + * @return attributes + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ATTRIBUTES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public MaintenanceUpdateDataAttributes getAttributes() { + return attributes; + } + + public void setAttributes(MaintenanceUpdateDataAttributes attributes) { + this.attributes = attributes; + if (attributes != null) { + this.unparsed |= attributes.unparsed; + } + } + + public MaintenanceUpdateData id(UUID id) { + this.id = id; + return this; + } + + /** + * The ID of the maintenance update. + * + * @return id + */ + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public UUID getId() { + return id; + } + + public void setId(UUID id) { + this.id = id; + } + + public MaintenanceUpdateData relationships(MaintenanceUpdateDataRelationships relationships) { + this.relationships = relationships; + this.unparsed |= relationships.unparsed; + return this; + } + + /** + * Relationships of a maintenance update resource. + * + * @return relationships + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RELATIONSHIPS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public MaintenanceUpdateDataRelationships getRelationships() { + return relationships; + } + + public void setRelationships(MaintenanceUpdateDataRelationships relationships) { + this.relationships = relationships; + if (relationships != null) { + this.unparsed |= relationships.unparsed; + } + } + + public MaintenanceUpdateData type(PatchMaintenanceUpdateRequestDataType type) { + this.type = type; + this.unparsed |= !type.isValid(); + return this; + } + + /** + * Maintenance updates resource type. + * + * @return type + */ + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public PatchMaintenanceUpdateRequestDataType getType() { + return type; + } + + public void setType(PatchMaintenanceUpdateRequestDataType type) { + if (!type.isValid()) { + this.unparsed = true; + } + this.type = type; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return MaintenanceUpdateData + */ + @JsonAnySetter + public MaintenanceUpdateData putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this MaintenanceUpdateData object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MaintenanceUpdateData maintenanceUpdateData = (MaintenanceUpdateData) o; + return Objects.equals(this.attributes, maintenanceUpdateData.attributes) + && Objects.equals(this.id, maintenanceUpdateData.id) + && Objects.equals(this.relationships, maintenanceUpdateData.relationships) + && Objects.equals(this.type, maintenanceUpdateData.type) + && Objects.equals(this.additionalProperties, maintenanceUpdateData.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(attributes, id, relationships, type, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MaintenanceUpdateData {\n"); + sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" relationships: ").append(toIndentedString(relationships)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataAttributes.java b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataAttributes.java new file mode 100644 index 00000000000..7d14f77d4da --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataAttributes.java @@ -0,0 +1,344 @@ +/* + * 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.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.time.OffsetDateTime; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +/** Attributes of a maintenance update resource. */ +@JsonPropertyOrder({ + MaintenanceUpdateDataAttributes.JSON_PROPERTY_COMPONENTS_AFFECTED, + MaintenanceUpdateDataAttributes.JSON_PROPERTY_CREATED_AT, + MaintenanceUpdateDataAttributes.JSON_PROPERTY_DESCRIPTION, + MaintenanceUpdateDataAttributes.JSON_PROPERTY_MANUAL_TRANSITION, + MaintenanceUpdateDataAttributes.JSON_PROPERTY_MODIFIED_AT, + MaintenanceUpdateDataAttributes.JSON_PROPERTY_STARTED_AT, + MaintenanceUpdateDataAttributes.JSON_PROPERTY_STATUS +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class MaintenanceUpdateDataAttributes { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_COMPONENTS_AFFECTED = "components_affected"; + private List componentsAffected = + null; + + public static final String JSON_PROPERTY_CREATED_AT = "created_at"; + private OffsetDateTime createdAt; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + private String description; + + public static final String JSON_PROPERTY_MANUAL_TRANSITION = "manual_transition"; + private Boolean manualTransition; + + public static final String JSON_PROPERTY_MODIFIED_AT = "modified_at"; + private OffsetDateTime modifiedAt; + + public static final String JSON_PROPERTY_STARTED_AT = "started_at"; + private OffsetDateTime startedAt; + + public static final String JSON_PROPERTY_STATUS = "status"; + private MaintenanceUpdateDataAttributesStatus status; + + public MaintenanceUpdateDataAttributes componentsAffected( + List componentsAffected) { + this.componentsAffected = componentsAffected; + if (componentsAffected != null) { + for (CreateMaintenanceRequestDataAttributesComponentsAffectedItems item : + componentsAffected) { + this.unparsed |= item.unparsed; + } + } + return this; + } + + public MaintenanceUpdateDataAttributes addComponentsAffectedItem( + CreateMaintenanceRequestDataAttributesComponentsAffectedItems componentsAffectedItem) { + if (this.componentsAffected == null) { + this.componentsAffected = new ArrayList<>(); + } + this.componentsAffected.add(componentsAffectedItem); + this.unparsed |= componentsAffectedItem.unparsed; + return this; + } + + /** + * Components affected at the time of the update. + * + * @return componentsAffected + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_COMPONENTS_AFFECTED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List + getComponentsAffected() { + return componentsAffected; + } + + public void setComponentsAffected( + List componentsAffected) { + this.componentsAffected = componentsAffected; + if (componentsAffected != null) { + for (CreateMaintenanceRequestDataAttributesComponentsAffectedItems item : + componentsAffected) { + this.unparsed |= item.unparsed; + } + } + } + + public MaintenanceUpdateDataAttributes createdAt(OffsetDateTime createdAt) { + this.createdAt = createdAt; + return this; + } + + /** + * The date and time the update was created. + * + * @return createdAt + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CREATED_AT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public OffsetDateTime getCreatedAt() { + return createdAt; + } + + public void setCreatedAt(OffsetDateTime createdAt) { + this.createdAt = createdAt; + } + + public MaintenanceUpdateDataAttributes description(String description) { + this.description = description; + return this; + } + + /** + * The message body of the update. + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public MaintenanceUpdateDataAttributes manualTransition(Boolean manualTransition) { + this.manualTransition = manualTransition; + return this; + } + + /** + * Whether the update was applied manually by a user (true) or automatically by the system + * (false). + * + * @return manualTransition + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MANUAL_TRANSITION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getManualTransition() { + return manualTransition; + } + + public void setManualTransition(Boolean manualTransition) { + this.manualTransition = manualTransition; + } + + public MaintenanceUpdateDataAttributes modifiedAt(OffsetDateTime modifiedAt) { + this.modifiedAt = modifiedAt; + return this; + } + + /** + * The date and time the update was last modified. + * + * @return modifiedAt + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MODIFIED_AT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public OffsetDateTime getModifiedAt() { + return modifiedAt; + } + + public void setModifiedAt(OffsetDateTime modifiedAt) { + this.modifiedAt = modifiedAt; + } + + public MaintenanceUpdateDataAttributes startedAt(OffsetDateTime startedAt) { + this.startedAt = startedAt; + return this; + } + + /** + * The date and time the update started. + * + * @return startedAt + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_STARTED_AT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public OffsetDateTime getStartedAt() { + return startedAt; + } + + public void setStartedAt(OffsetDateTime startedAt) { + this.startedAt = startedAt; + } + + public MaintenanceUpdateDataAttributes status(MaintenanceUpdateDataAttributesStatus status) { + this.status = status; + this.unparsed |= !status.isValid(); + return this; + } + + /** + * The status of the maintenance update. + * + * @return status + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public MaintenanceUpdateDataAttributesStatus getStatus() { + return status; + } + + public void setStatus(MaintenanceUpdateDataAttributesStatus status) { + if (!status.isValid()) { + this.unparsed = true; + } + this.status = status; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return MaintenanceUpdateDataAttributes + */ + @JsonAnySetter + public MaintenanceUpdateDataAttributes putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this MaintenanceUpdateDataAttributes object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MaintenanceUpdateDataAttributes maintenanceUpdateDataAttributes = + (MaintenanceUpdateDataAttributes) o; + return Objects.equals( + this.componentsAffected, maintenanceUpdateDataAttributes.componentsAffected) + && Objects.equals(this.createdAt, maintenanceUpdateDataAttributes.createdAt) + && Objects.equals(this.description, maintenanceUpdateDataAttributes.description) + && Objects.equals(this.manualTransition, maintenanceUpdateDataAttributes.manualTransition) + && Objects.equals(this.modifiedAt, maintenanceUpdateDataAttributes.modifiedAt) + && Objects.equals(this.startedAt, maintenanceUpdateDataAttributes.startedAt) + && Objects.equals(this.status, maintenanceUpdateDataAttributes.status) + && Objects.equals( + this.additionalProperties, maintenanceUpdateDataAttributes.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash( + componentsAffected, + createdAt, + description, + manualTransition, + modifiedAt, + startedAt, + status, + additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MaintenanceUpdateDataAttributes {\n"); + sb.append(" componentsAffected: ").append(toIndentedString(componentsAffected)).append("\n"); + sb.append(" createdAt: ").append(toIndentedString(createdAt)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" manualTransition: ").append(toIndentedString(manualTransition)).append("\n"); + sb.append(" modifiedAt: ").append(toIndentedString(modifiedAt)).append("\n"); + sb.append(" startedAt: ").append(toIndentedString(startedAt)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataAttributesStatus.java b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataAttributesStatus.java new file mode 100644 index 00000000000..d0b639b26cf --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataAttributesStatus.java @@ -0,0 +1,68 @@ +/* + * 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 status of the maintenance update. */ +@JsonSerialize( + using = + MaintenanceUpdateDataAttributesStatus.MaintenanceUpdateDataAttributesStatusSerializer.class) +public class MaintenanceUpdateDataAttributesStatus extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("scheduled", "in_progress", "completed", "canceled")); + + public static final MaintenanceUpdateDataAttributesStatus SCHEDULED = + new MaintenanceUpdateDataAttributesStatus("scheduled"); + public static final MaintenanceUpdateDataAttributesStatus IN_PROGRESS = + new MaintenanceUpdateDataAttributesStatus("in_progress"); + public static final MaintenanceUpdateDataAttributesStatus COMPLETED = + new MaintenanceUpdateDataAttributesStatus("completed"); + public static final MaintenanceUpdateDataAttributesStatus CANCELED = + new MaintenanceUpdateDataAttributesStatus("canceled"); + + MaintenanceUpdateDataAttributesStatus(String value) { + super(value, allowedValues); + } + + public static class MaintenanceUpdateDataAttributesStatusSerializer + extends StdSerializer { + public MaintenanceUpdateDataAttributesStatusSerializer( + Class t) { + super(t); + } + + public MaintenanceUpdateDataAttributesStatusSerializer() { + this(null); + } + + @Override + public void serialize( + MaintenanceUpdateDataAttributesStatus value, + JsonGenerator jgen, + SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static MaintenanceUpdateDataAttributesStatus fromValue(String value) { + return new MaintenanceUpdateDataAttributesStatus(value); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationships.java b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationships.java new file mode 100644 index 00000000000..a3b2d75610c --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationships.java @@ -0,0 +1,209 @@ +/* + * 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.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Relationships of a maintenance update resource. */ +@JsonPropertyOrder({ + MaintenanceUpdateDataRelationships.JSON_PROPERTY_CREATED_BY_USER, + MaintenanceUpdateDataRelationships.JSON_PROPERTY_LAST_MODIFIED_BY_USER, + MaintenanceUpdateDataRelationships.JSON_PROPERTY_MAINTENANCE +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class MaintenanceUpdateDataRelationships { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_CREATED_BY_USER = "created_by_user"; + private MaintenanceUpdateDataRelationshipsUser createdByUser; + + public static final String JSON_PROPERTY_LAST_MODIFIED_BY_USER = "last_modified_by_user"; + private MaintenanceUpdateDataRelationshipsUser lastModifiedByUser; + + public static final String JSON_PROPERTY_MAINTENANCE = "maintenance"; + private MaintenanceUpdateDataRelationshipsMaintenance maintenance; + + public MaintenanceUpdateDataRelationships createdByUser( + MaintenanceUpdateDataRelationshipsUser createdByUser) { + this.createdByUser = createdByUser; + this.unparsed |= createdByUser.unparsed; + return this; + } + + /** + * A user relationship of a maintenance update. + * + * @return createdByUser + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CREATED_BY_USER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public MaintenanceUpdateDataRelationshipsUser getCreatedByUser() { + return createdByUser; + } + + public void setCreatedByUser(MaintenanceUpdateDataRelationshipsUser createdByUser) { + this.createdByUser = createdByUser; + if (createdByUser != null) { + this.unparsed |= createdByUser.unparsed; + } + } + + public MaintenanceUpdateDataRelationships lastModifiedByUser( + MaintenanceUpdateDataRelationshipsUser lastModifiedByUser) { + this.lastModifiedByUser = lastModifiedByUser; + this.unparsed |= lastModifiedByUser.unparsed; + return this; + } + + /** + * A user relationship of a maintenance update. + * + * @return lastModifiedByUser + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_LAST_MODIFIED_BY_USER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public MaintenanceUpdateDataRelationshipsUser getLastModifiedByUser() { + return lastModifiedByUser; + } + + public void setLastModifiedByUser(MaintenanceUpdateDataRelationshipsUser lastModifiedByUser) { + this.lastModifiedByUser = lastModifiedByUser; + if (lastModifiedByUser != null) { + this.unparsed |= lastModifiedByUser.unparsed; + } + } + + public MaintenanceUpdateDataRelationships maintenance( + MaintenanceUpdateDataRelationshipsMaintenance maintenance) { + this.maintenance = maintenance; + this.unparsed |= maintenance.unparsed; + return this; + } + + /** + * The parent maintenance of the update. + * + * @return maintenance + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MAINTENANCE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public MaintenanceUpdateDataRelationshipsMaintenance getMaintenance() { + return maintenance; + } + + public void setMaintenance(MaintenanceUpdateDataRelationshipsMaintenance maintenance) { + this.maintenance = maintenance; + if (maintenance != null) { + this.unparsed |= maintenance.unparsed; + } + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return MaintenanceUpdateDataRelationships + */ + @JsonAnySetter + public MaintenanceUpdateDataRelationships putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this MaintenanceUpdateDataRelationships object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MaintenanceUpdateDataRelationships maintenanceUpdateDataRelationships = + (MaintenanceUpdateDataRelationships) o; + return Objects.equals(this.createdByUser, maintenanceUpdateDataRelationships.createdByUser) + && Objects.equals( + this.lastModifiedByUser, maintenanceUpdateDataRelationships.lastModifiedByUser) + && Objects.equals(this.maintenance, maintenanceUpdateDataRelationships.maintenance) + && Objects.equals( + this.additionalProperties, maintenanceUpdateDataRelationships.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(createdByUser, lastModifiedByUser, maintenance, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MaintenanceUpdateDataRelationships {\n"); + sb.append(" createdByUser: ").append(toIndentedString(createdByUser)).append("\n"); + sb.append(" lastModifiedByUser: ").append(toIndentedString(lastModifiedByUser)).append("\n"); + sb.append(" maintenance: ").append(toIndentedString(maintenance)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsMaintenance.java b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsMaintenance.java new file mode 100644 index 00000000000..ef774ed5a41 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsMaintenance.java @@ -0,0 +1,154 @@ +/* + * 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.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** The parent maintenance of the update. */ +@JsonPropertyOrder({MaintenanceUpdateDataRelationshipsMaintenance.JSON_PROPERTY_DATA}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class MaintenanceUpdateDataRelationshipsMaintenance { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_DATA = "data"; + private MaintenanceUpdateDataRelationshipsMaintenanceData data; + + public MaintenanceUpdateDataRelationshipsMaintenance() {} + + @JsonCreator + public MaintenanceUpdateDataRelationshipsMaintenance( + @JsonProperty(required = true, value = JSON_PROPERTY_DATA) + MaintenanceUpdateDataRelationshipsMaintenanceData data) { + this.data = data; + this.unparsed |= data.unparsed; + } + + public MaintenanceUpdateDataRelationshipsMaintenance data( + MaintenanceUpdateDataRelationshipsMaintenanceData data) { + this.data = data; + this.unparsed |= data.unparsed; + return this; + } + + /** + * The maintenance linked to a maintenance update. + * + * @return data + */ + @JsonProperty(JSON_PROPERTY_DATA) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public MaintenanceUpdateDataRelationshipsMaintenanceData getData() { + return data; + } + + public void setData(MaintenanceUpdateDataRelationshipsMaintenanceData data) { + this.data = data; + if (data != null) { + this.unparsed |= data.unparsed; + } + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return MaintenanceUpdateDataRelationshipsMaintenance + */ + @JsonAnySetter + public MaintenanceUpdateDataRelationshipsMaintenance putAdditionalProperty( + String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this MaintenanceUpdateDataRelationshipsMaintenance object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MaintenanceUpdateDataRelationshipsMaintenance maintenanceUpdateDataRelationshipsMaintenance = + (MaintenanceUpdateDataRelationshipsMaintenance) o; + return Objects.equals(this.data, maintenanceUpdateDataRelationshipsMaintenance.data) + && Objects.equals( + this.additionalProperties, + maintenanceUpdateDataRelationshipsMaintenance.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(data, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MaintenanceUpdateDataRelationshipsMaintenance {\n"); + sb.append(" data: ").append(toIndentedString(data)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsMaintenanceData.java b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsMaintenanceData.java new file mode 100644 index 00000000000..e592f753670 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsMaintenanceData.java @@ -0,0 +1,186 @@ +/* + * 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.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; +import java.util.UUID; + +/** The maintenance linked to a maintenance update. */ +@JsonPropertyOrder({ + MaintenanceUpdateDataRelationshipsMaintenanceData.JSON_PROPERTY_ID, + MaintenanceUpdateDataRelationshipsMaintenanceData.JSON_PROPERTY_TYPE +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class MaintenanceUpdateDataRelationshipsMaintenanceData { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_ID = "id"; + private UUID id; + + public static final String JSON_PROPERTY_TYPE = "type"; + private PatchMaintenanceRequestDataType type = PatchMaintenanceRequestDataType.MAINTENANCES; + + public MaintenanceUpdateDataRelationshipsMaintenanceData() {} + + @JsonCreator + public MaintenanceUpdateDataRelationshipsMaintenanceData( + @JsonProperty(required = true, value = JSON_PROPERTY_ID) UUID id, + @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) + PatchMaintenanceRequestDataType type) { + this.id = id; + this.type = type; + this.unparsed |= !type.isValid(); + } + + public MaintenanceUpdateDataRelationshipsMaintenanceData id(UUID id) { + this.id = id; + return this; + } + + /** + * The ID of the maintenance. + * + * @return id + */ + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public UUID getId() { + return id; + } + + public void setId(UUID id) { + this.id = id; + } + + public MaintenanceUpdateDataRelationshipsMaintenanceData type( + PatchMaintenanceRequestDataType type) { + this.type = type; + this.unparsed |= !type.isValid(); + return this; + } + + /** + * Maintenances resource type. + * + * @return type + */ + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public PatchMaintenanceRequestDataType getType() { + return type; + } + + public void setType(PatchMaintenanceRequestDataType type) { + if (!type.isValid()) { + this.unparsed = true; + } + this.type = type; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return MaintenanceUpdateDataRelationshipsMaintenanceData + */ + @JsonAnySetter + public MaintenanceUpdateDataRelationshipsMaintenanceData putAdditionalProperty( + String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this MaintenanceUpdateDataRelationshipsMaintenanceData object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MaintenanceUpdateDataRelationshipsMaintenanceData + maintenanceUpdateDataRelationshipsMaintenanceData = + (MaintenanceUpdateDataRelationshipsMaintenanceData) o; + return Objects.equals(this.id, maintenanceUpdateDataRelationshipsMaintenanceData.id) + && Objects.equals(this.type, maintenanceUpdateDataRelationshipsMaintenanceData.type) + && Objects.equals( + this.additionalProperties, + maintenanceUpdateDataRelationshipsMaintenanceData.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(id, type, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MaintenanceUpdateDataRelationshipsMaintenanceData {\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsUser.java b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsUser.java new file mode 100644 index 00000000000..43769cf8b66 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsUser.java @@ -0,0 +1,152 @@ +/* + * 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.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** A user relationship of a maintenance update. */ +@JsonPropertyOrder({MaintenanceUpdateDataRelationshipsUser.JSON_PROPERTY_DATA}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class MaintenanceUpdateDataRelationshipsUser { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_DATA = "data"; + private MaintenanceUpdateDataRelationshipsUserData data; + + public MaintenanceUpdateDataRelationshipsUser() {} + + @JsonCreator + public MaintenanceUpdateDataRelationshipsUser( + @JsonProperty(required = true, value = JSON_PROPERTY_DATA) + MaintenanceUpdateDataRelationshipsUserData data) { + this.data = data; + this.unparsed |= data.unparsed; + } + + public MaintenanceUpdateDataRelationshipsUser data( + MaintenanceUpdateDataRelationshipsUserData data) { + this.data = data; + this.unparsed |= data.unparsed; + return this; + } + + /** + * The data object identifying a Datadog user linked to a maintenance update. + * + * @return data + */ + @JsonProperty(JSON_PROPERTY_DATA) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public MaintenanceUpdateDataRelationshipsUserData getData() { + return data; + } + + public void setData(MaintenanceUpdateDataRelationshipsUserData data) { + this.data = data; + if (data != null) { + this.unparsed |= data.unparsed; + } + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return MaintenanceUpdateDataRelationshipsUser + */ + @JsonAnySetter + public MaintenanceUpdateDataRelationshipsUser putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this MaintenanceUpdateDataRelationshipsUser object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MaintenanceUpdateDataRelationshipsUser maintenanceUpdateDataRelationshipsUser = + (MaintenanceUpdateDataRelationshipsUser) o; + return Objects.equals(this.data, maintenanceUpdateDataRelationshipsUser.data) + && Objects.equals( + this.additionalProperties, maintenanceUpdateDataRelationshipsUser.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(data, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MaintenanceUpdateDataRelationshipsUser {\n"); + sb.append(" data: ").append(toIndentedString(data)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsUserData.java b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsUserData.java new file mode 100644 index 00000000000..7c76b979e69 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/MaintenanceUpdateDataRelationshipsUserData.java @@ -0,0 +1,183 @@ +/* + * 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.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; +import java.util.UUID; + +/** The data object identifying a Datadog user linked to a maintenance update. */ +@JsonPropertyOrder({ + MaintenanceUpdateDataRelationshipsUserData.JSON_PROPERTY_ID, + MaintenanceUpdateDataRelationshipsUserData.JSON_PROPERTY_TYPE +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class MaintenanceUpdateDataRelationshipsUserData { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_ID = "id"; + private UUID id; + + public static final String JSON_PROPERTY_TYPE = "type"; + private StatusPagesUserType type = StatusPagesUserType.USERS; + + public MaintenanceUpdateDataRelationshipsUserData() {} + + @JsonCreator + public MaintenanceUpdateDataRelationshipsUserData( + @JsonProperty(required = true, value = JSON_PROPERTY_ID) UUID id, + @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) StatusPagesUserType type) { + this.id = id; + this.type = type; + this.unparsed |= !type.isValid(); + } + + public MaintenanceUpdateDataRelationshipsUserData id(UUID id) { + this.id = id; + return this; + } + + /** + * The ID of the Datadog user. + * + * @return id + */ + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public UUID getId() { + return id; + } + + public void setId(UUID id) { + this.id = id; + } + + public MaintenanceUpdateDataRelationshipsUserData type(StatusPagesUserType type) { + this.type = type; + this.unparsed |= !type.isValid(); + return this; + } + + /** + * Users resource type. + * + * @return type + */ + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public StatusPagesUserType getType() { + return type; + } + + public void setType(StatusPagesUserType type) { + if (!type.isValid()) { + this.unparsed = true; + } + this.type = type; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return MaintenanceUpdateDataRelationshipsUserData + */ + @JsonAnySetter + public MaintenanceUpdateDataRelationshipsUserData putAdditionalProperty( + String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this MaintenanceUpdateDataRelationshipsUserData object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MaintenanceUpdateDataRelationshipsUserData maintenanceUpdateDataRelationshipsUserData = + (MaintenanceUpdateDataRelationshipsUserData) o; + return Objects.equals(this.id, maintenanceUpdateDataRelationshipsUserData.id) + && Objects.equals(this.type, maintenanceUpdateDataRelationshipsUserData.type) + && Objects.equals( + this.additionalProperties, + maintenanceUpdateDataRelationshipsUserData.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(id, type, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MaintenanceUpdateDataRelationshipsUserData {\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceRequestDataAttributes.java b/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceRequestDataAttributes.java index cded2a4df6f..6c89b26fb07 100644 --- a/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceRequestDataAttributes.java +++ b/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceRequestDataAttributes.java @@ -21,6 +21,7 @@ /** The supported attributes for updating a maintenance. */ @JsonPropertyOrder({ + PatchMaintenanceRequestDataAttributes.JSON_PROPERTY_CANCELED_DESCRIPTION, PatchMaintenanceRequestDataAttributes.JSON_PROPERTY_COMPLETED_DATE, PatchMaintenanceRequestDataAttributes.JSON_PROPERTY_COMPLETED_DESCRIPTION, PatchMaintenanceRequestDataAttributes.JSON_PROPERTY_COMPONENTS_AFFECTED, @@ -34,6 +35,9 @@ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") public class PatchMaintenanceRequestDataAttributes { @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_CANCELED_DESCRIPTION = "canceled_description"; + private String canceledDescription; + public static final String JSON_PROPERTY_COMPLETED_DATE = "completed_date"; private OffsetDateTime completedDate; @@ -59,6 +63,27 @@ public class PatchMaintenanceRequestDataAttributes { public static final String JSON_PROPERTY_TITLE = "title"; private String title; + public PatchMaintenanceRequestDataAttributes canceledDescription(String canceledDescription) { + this.canceledDescription = canceledDescription; + return this; + } + + /** + * The description shown when the maintenance is canceled. + * + * @return canceledDescription + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CANCELED_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCanceledDescription() { + return canceledDescription; + } + + public void setCanceledDescription(String canceledDescription) { + this.canceledDescription = canceledDescription; + } + public PatchMaintenanceRequestDataAttributes completedDate(OffsetDateTime completedDate) { this.completedDate = completedDate; return this; @@ -311,7 +336,9 @@ public boolean equals(Object o) { } PatchMaintenanceRequestDataAttributes patchMaintenanceRequestDataAttributes = (PatchMaintenanceRequestDataAttributes) o; - return Objects.equals(this.completedDate, patchMaintenanceRequestDataAttributes.completedDate) + return Objects.equals( + this.canceledDescription, patchMaintenanceRequestDataAttributes.canceledDescription) + && Objects.equals(this.completedDate, patchMaintenanceRequestDataAttributes.completedDate) && Objects.equals( this.completedDescription, patchMaintenanceRequestDataAttributes.completedDescription) && Objects.equals( @@ -330,6 +357,7 @@ public boolean equals(Object o) { @Override public int hashCode() { return Objects.hash( + canceledDescription, completedDate, completedDescription, componentsAffected, @@ -345,6 +373,9 @@ public int hashCode() { public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class PatchMaintenanceRequestDataAttributes {\n"); + sb.append(" canceledDescription: ") + .append(toIndentedString(canceledDescription)) + .append("\n"); sb.append(" completedDate: ").append(toIndentedString(completedDate)).append("\n"); sb.append(" completedDescription: ") .append(toIndentedString(completedDescription)) diff --git a/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequest.java b/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequest.java new file mode 100644 index 00000000000..ab1530e5a99 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequest.java @@ -0,0 +1,140 @@ +/* + * 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.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Request object for editing a maintenance update. */ +@JsonPropertyOrder({PatchMaintenanceUpdateRequest.JSON_PROPERTY_DATA}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class PatchMaintenanceUpdateRequest { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_DATA = "data"; + private PatchMaintenanceUpdateRequestData data; + + public PatchMaintenanceUpdateRequest data(PatchMaintenanceUpdateRequestData data) { + this.data = data; + this.unparsed |= data.unparsed; + return this; + } + + /** + * The data object for editing a maintenance update. + * + * @return data + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DATA) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public PatchMaintenanceUpdateRequestData getData() { + return data; + } + + public void setData(PatchMaintenanceUpdateRequestData data) { + this.data = data; + if (data != null) { + this.unparsed |= data.unparsed; + } + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return PatchMaintenanceUpdateRequest + */ + @JsonAnySetter + public PatchMaintenanceUpdateRequest putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this PatchMaintenanceUpdateRequest object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PatchMaintenanceUpdateRequest patchMaintenanceUpdateRequest = (PatchMaintenanceUpdateRequest) o; + return Objects.equals(this.data, patchMaintenanceUpdateRequest.data) + && Objects.equals( + this.additionalProperties, patchMaintenanceUpdateRequest.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(data, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class PatchMaintenanceUpdateRequest {\n"); + sb.append(" data: ").append(toIndentedString(data)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestData.java b/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestData.java new file mode 100644 index 00000000000..63930dc8c24 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestData.java @@ -0,0 +1,214 @@ +/* + * 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.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** The data object for editing a maintenance update. */ +@JsonPropertyOrder({ + PatchMaintenanceUpdateRequestData.JSON_PROPERTY_ATTRIBUTES, + PatchMaintenanceUpdateRequestData.JSON_PROPERTY_ID, + PatchMaintenanceUpdateRequestData.JSON_PROPERTY_TYPE +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class PatchMaintenanceUpdateRequestData { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_ATTRIBUTES = "attributes"; + private PatchMaintenanceUpdateRequestDataAttributes attributes; + + public static final String JSON_PROPERTY_ID = "id"; + private String id; + + public static final String JSON_PROPERTY_TYPE = "type"; + private PatchMaintenanceUpdateRequestDataType type = + PatchMaintenanceUpdateRequestDataType.MAINTENANCE_UPDATES; + + public PatchMaintenanceUpdateRequestData() {} + + @JsonCreator + public PatchMaintenanceUpdateRequestData( + @JsonProperty(required = true, value = JSON_PROPERTY_ID) String id, + @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) + PatchMaintenanceUpdateRequestDataType type) { + this.id = id; + this.type = type; + this.unparsed |= !type.isValid(); + } + + public PatchMaintenanceUpdateRequestData attributes( + PatchMaintenanceUpdateRequestDataAttributes attributes) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + return this; + } + + /** + * Attributes for editing a maintenance update. + * + * @return attributes + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ATTRIBUTES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public PatchMaintenanceUpdateRequestDataAttributes getAttributes() { + return attributes; + } + + public void setAttributes(PatchMaintenanceUpdateRequestDataAttributes attributes) { + this.attributes = attributes; + if (attributes != null) { + this.unparsed |= attributes.unparsed; + } + } + + public PatchMaintenanceUpdateRequestData id(String id) { + this.id = id; + return this; + } + + /** + * The ID of the maintenance update to edit. Must match the update_id path parameter. + * + * @return id + */ + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public PatchMaintenanceUpdateRequestData type(PatchMaintenanceUpdateRequestDataType type) { + this.type = type; + this.unparsed |= !type.isValid(); + return this; + } + + /** + * Maintenance updates resource type. + * + * @return type + */ + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public PatchMaintenanceUpdateRequestDataType getType() { + return type; + } + + public void setType(PatchMaintenanceUpdateRequestDataType type) { + if (!type.isValid()) { + this.unparsed = true; + } + this.type = type; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return PatchMaintenanceUpdateRequestData + */ + @JsonAnySetter + public PatchMaintenanceUpdateRequestData putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this PatchMaintenanceUpdateRequestData object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PatchMaintenanceUpdateRequestData patchMaintenanceUpdateRequestData = + (PatchMaintenanceUpdateRequestData) o; + return Objects.equals(this.attributes, patchMaintenanceUpdateRequestData.attributes) + && Objects.equals(this.id, patchMaintenanceUpdateRequestData.id) + && Objects.equals(this.type, patchMaintenanceUpdateRequestData.type) + && Objects.equals( + this.additionalProperties, patchMaintenanceUpdateRequestData.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(attributes, id, type, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class PatchMaintenanceUpdateRequestData {\n"); + sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestDataAttributes.java b/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestDataAttributes.java new file mode 100644 index 00000000000..e01a2763d60 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestDataAttributes.java @@ -0,0 +1,139 @@ +/* + * 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.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Attributes for editing a maintenance update. */ +@JsonPropertyOrder({PatchMaintenanceUpdateRequestDataAttributes.JSON_PROPERTY_DESCRIPTION}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class PatchMaintenanceUpdateRequestDataAttributes { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + private String description; + + public PatchMaintenanceUpdateRequestDataAttributes description(String description) { + this.description = description; + return this; + } + + /** + * The message body of the update. + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return PatchMaintenanceUpdateRequestDataAttributes + */ + @JsonAnySetter + public PatchMaintenanceUpdateRequestDataAttributes putAdditionalProperty( + String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this PatchMaintenanceUpdateRequestDataAttributes object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PatchMaintenanceUpdateRequestDataAttributes patchMaintenanceUpdateRequestDataAttributes = + (PatchMaintenanceUpdateRequestDataAttributes) o; + return Objects.equals(this.description, patchMaintenanceUpdateRequestDataAttributes.description) + && Objects.equals( + this.additionalProperties, + patchMaintenanceUpdateRequestDataAttributes.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(description, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class PatchMaintenanceUpdateRequestDataAttributes {\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestDataType.java b/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestDataType.java new file mode 100644 index 00000000000..cb89af4af66 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/PatchMaintenanceUpdateRequestDataType.java @@ -0,0 +1,62 @@ +/* + * 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; + +/** Maintenance updates resource type. */ +@JsonSerialize( + using = + PatchMaintenanceUpdateRequestDataType.PatchMaintenanceUpdateRequestDataTypeSerializer.class) +public class PatchMaintenanceUpdateRequestDataType extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("maintenance_updates")); + + public static final PatchMaintenanceUpdateRequestDataType MAINTENANCE_UPDATES = + new PatchMaintenanceUpdateRequestDataType("maintenance_updates"); + + PatchMaintenanceUpdateRequestDataType(String value) { + super(value, allowedValues); + } + + public static class PatchMaintenanceUpdateRequestDataTypeSerializer + extends StdSerializer { + public PatchMaintenanceUpdateRequestDataTypeSerializer( + Class t) { + super(t); + } + + public PatchMaintenanceUpdateRequestDataTypeSerializer() { + this(null); + } + + @Override + public void serialize( + PatchMaintenanceUpdateRequestDataType value, + JsonGenerator jgen, + SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static PatchMaintenanceUpdateRequestDataType fromValue(String value) { + return new PatchMaintenanceUpdateRequestDataType(value); + } +} diff --git a/src/test/resources/com/datadog/api/client/v2/api/status_pages.feature b/src/test/resources/com/datadog/api/client/v2/api/status_pages.feature index c7f922bf6ca..95da2ead98a 100644 --- a/src/test/resources/com/datadog/api/client/v2/api/status_pages.feature +++ b/src/test/resources/com/datadog/api/client/v2/api/status_pages.feature @@ -136,6 +136,16 @@ Feature: Status Pages When the request is sent Then the response status is 200 OK + @generated @skip @team:DataDog/incident-app + Scenario: Edit maintenance update returns "OK" response + Given new "PatchMaintenanceUpdate" request + And request contains "page_id" parameter from "REPLACE.ME" + And request contains "maintenance_id" parameter from "REPLACE.ME" + And request contains "update_id" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"description": "We have completed maintenance on the API to improve performance."}, "id": "00000000-0000-0000-0000-000000000000", "type": "maintenance_updates"}} + When the request is sent + Then the response status is 200 OK + @team:DataDog/incident-app Scenario: Get component returns "OK" response Given new "GetComponent" request diff --git a/src/test/resources/com/datadog/api/client/v2/api/undo.json b/src/test/resources/com/datadog/api/client/v2/api/undo.json index 9903d959ffb..a54a17720c5 100644 --- a/src/test/resources/com/datadog/api/client/v2/api/undo.json +++ b/src/test/resources/com/datadog/api/client/v2/api/undo.json @@ -9185,6 +9185,12 @@ "type": "idempotent" } }, + "PatchMaintenanceUpdate": { + "tag": "Status Pages", + "undo": { + "type": "idempotent" + } + }, "PublishStatusPage": { "tag": "Status Pages", "undo": {