diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml
index 8e540e2cff5..4ecfbd0c504 100644
--- a/.generator/schemas/v2/openapi.yaml
+++ b/.generator/schemas/v2/openapi.yaml
@@ -21328,13 +21328,6 @@ components:
- description: "If this is a string, it must be a valid JavaScript expression that evaluates to a boolean."
example: "${true}"
type: string
- ComponentRecommendation:
- description: Resource recommendation for a single Spark component (driver or executor). Contains estimation data used to patch Spark job specs.
- properties:
- estimation:
- $ref: "#/components/schemas/Estimation"
- required: [estimation]
- type: object
ComponentType:
description: The UI component type.
enum:
@@ -24057,23 +24050,6 @@ components:
type: string
x-enum-varnames:
- CI_APP_COVERAGE_SUMMARY
- Cpu:
- description: CPU usage statistics derived from historical Spark job metrics. Provides multiple estimates so users can choose between conservative and cost-saving risk profiles.
- properties:
- max:
- description: Maximum CPU usage observed for the job, expressed in millicores. This represents the upper bound of usage.
- format: int64
- type: integer
- p75:
- description: 75th percentile of CPU usage (millicores). Represents a cost-saving configuration while covering most workloads.
- format: int64
- type: integer
- p95:
- description: 95th percentile of CPU usage (millicores). Balances performance and cost, providing a safer margin than p75.
- format: int64
- type: integer
- type: object
- x-model-simple-name: SpaCpu
CreateActionConnectionRequest:
description: Request used to create an action connection.
properties:
@@ -40501,28 +40477,6 @@ components:
type: string
x-enum-varnames:
- ESCALATION_POLICY_STEPS
- Estimation:
- description: Recommended resource values for a Spark driver or executor, derived from recent real usage metrics. Used by SPA to propose more efficient pod sizing.
- properties:
- cpu:
- $ref: "#/components/schemas/Cpu"
- ephemeral_storage:
- description: Recommended ephemeral storage allocation (in MiB). Derived from job temporary storage patterns.
- format: int64
- type: integer
- heap:
- description: Recommended JVM heap size (in MiB).
- format: int64
- type: integer
- memory:
- description: Recommended total memory allocation (in MiB). Includes both heap and overhead.
- format: int64
- type: integer
- overhead:
- description: Recommended JVM overhead (in MiB). Computed as total memory - heap.
- format: int64
- type: integer
- type: object
Event:
additionalProperties: {}
description: The metadata associated with a request.
@@ -101716,96 +101670,6 @@ components:
required:
- data
type: object
- RecommendationAttributes:
- description: Attributes of the SPA Recommendation resource. Contains recommendations for both driver and executor components.
- properties:
- confidence_level:
- description: The confidence level of the recommendation, expressed as a value between 0.0 (low confidence) and 1.0 (high confidence).
- format: double
- type: number
- driver:
- $ref: "#/components/schemas/ComponentRecommendation"
- executor:
- $ref: "#/components/schemas/ComponentRecommendation"
- matched_params:
- description: |-
- Only returned by the v2 endpoint. The job parameters whose values the recommendation was matched on, as `parameter=value` pairs joined by `|`.
- An empty string means the service-wide (coarse) recommendation was used.
- example: "detailed_metrics=false|Region=US1"
- type: string
- required: [driver, executor]
- type: object
- RecommendationData:
- description: JSON:API resource object for SPA Recommendation. Includes type, optional ID, and resource attributes with structured recommendations.
- properties:
- attributes:
- $ref: "#/components/schemas/RecommendationAttributes"
- id:
- description: Resource identifier for the recommendation. Optional in responses.
- type: string
- type:
- $ref: "#/components/schemas/RecommendationType"
- required: [type, attributes]
- type: object
- RecommendationDocument:
- description: JSON:API document containing a single Recommendation resource. Returned by SPA when the Spark Gateway requests recommendations.
- properties:
- data:
- $ref: "#/components/schemas/RecommendationData"
- required: [data]
- type: object
- RecommendationType:
- default: recommendation
- description: JSON:API resource type for Spark Pod Autosizing recommendations. Identifies the Recommendation resource returned by SPA.
- enum:
- - recommendation
- example: recommendation
- type: string
- x-enum-varnames:
- - RECOMMENDATION
- RecommendationV2RequestAttributes:
- description: |-
- Attributes for requesting SPA recommendations by forwarding a Spark job's raw arguments
- instead of a pre-computed shard.
- properties:
- arguments:
- description: |-
- Raw, unfiltered Spark job arguments as submitted (for example, `--org_id=2`).
- SPA determines which arguments are relevant for the given service.
- example:
- - ""
- items:
- type: string
- type: array
- required: [arguments]
- type: object
- RecommendationV2RequestBody:
- description: |-
- Request body for retrieving SPA recommendations by forwarding a Spark job's raw arguments
- instead of a pre-computed shard.
- properties:
- data:
- $ref: "#/components/schemas/RecommendationV2RequestData"
- required: [data]
- type: object
- RecommendationV2RequestData:
- description: JSON:API resource object for the SPA v2 recommendation request.
- properties:
- attributes:
- $ref: "#/components/schemas/RecommendationV2RequestAttributes"
- type:
- $ref: "#/components/schemas/RecommendationV2RequestType"
- required: [type, attributes]
- type: object
- RecommendationV2RequestType:
- default: recommendation_v2_request
- description: JSON:API resource type for the SPA v2 recommendation request.
- enum:
- - recommendation_v2_request
- example: recommendation_v2_request
- type: string
- x-enum-varnames:
- - RECOMMENDATION_V2_REQUEST
RecommendationsFilterRequest:
description: JSON:API request body for filtering cost recommendations.
example:
@@ -234730,185 +234594,6 @@ paths:
x-unstable: |-
**Note**: This endpoint is in preview and is subject to change.
If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
- /api/v2/spa/recommendations-v2/{service}:
- post:
- description: |-
- This endpoint is experimental and restricted to Datadog internal use only.
- Retrieve resource recommendations for a Spark job. The caller (Spark Gateway) provides
- a service name and the job's raw arguments. SPA determines which arguments are relevant
- for the service and returns structured recommendations for driver and executor resources.
- operationId: GetSPARecommendationsV2
- parameters:
- - description: The service name for a Spark job
- in: path
- name: service
- required: true
- schema:
- type: string
- requestBody:
- content:
- application/json:
- schema:
- $ref: "#/components/schemas/RecommendationV2RequestBody"
- required: true
- responses:
- "200":
- content:
- application/json:
- example:
- data:
- attributes:
- driver:
- estimation:
- cpu: {max: 1500, p75: 1000, p95: 1200}
- ephemeral_storage: 896
- heap: 6144
- memory: 7168
- overhead: 1024
- executor:
- estimation:
- cpu: {max: 2000, p75: 1200, p95: 1500}
- ephemeral_storage: 512
- heap: 3072
- memory: 4096
- overhead: 1024
- matched_params: "detailed_metrics=false"
- id: "dedupeactivecontexts:adp_dedupeactivecontexts_org2"
- type: recommendation
- schema:
- $ref: "#/components/schemas/RecommendationDocument"
- description: OK
- "400":
- $ref: "#/components/responses/BadRequestResponse"
- "403":
- $ref: "#/components/responses/NotAuthorizedResponse"
- "404":
- $ref: "#/components/responses/NotFoundResponse"
- "429":
- $ref: "#/components/responses/TooManyRequestsResponse"
- security:
- - AuthZ: []
- summary: Get SPA recommendations v2
- tags:
- - Spa
- x-unstable: |-
- **Note**: This endpoint is in preview and may change in the future. It is not yet recommended for production use.
- /api/v2/spa/recommendations/{service}:
- get:
- description: This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and SPA returns structured recommendations for driver and executor resources. The version with a shard should be preferred, where possible, as it gives more accurate results.
- operationId: GetSPARecommendations
- parameters:
- - description: The recommendation service should not use its metrics cache.
- in: query
- name: bypass_cache
- schema:
- type: string
- - description: The service name for a spark job.
- in: path
- name: service
- required: true
- schema:
- type: string
- responses:
- "200":
- content:
- application/json:
- example:
- data:
- attributes:
- driver:
- estimation:
- cpu: {max: 1500, p75: 1000, p95: 1200}
- ephemeral_storage: 896
- heap: 6144
- memory: 7168
- overhead: 1024
- executor:
- estimation:
- cpu: {max: 2000, p75: 1200, p95: 1500}
- ephemeral_storage: 512
- heap: 3072
- memory: 4096
- overhead: 1024
- id: "dedupeactivecontexts:adp_dedupeactivecontexts_org2"
- type: recommendation
- schema:
- $ref: "#/components/schemas/RecommendationDocument"
- description: OK
- "400":
- $ref: "#/components/responses/BadRequestResponse"
- "403":
- $ref: "#/components/responses/NotAuthorizedResponse"
- "429":
- $ref: "#/components/responses/TooManyRequestsResponse"
- security:
- - AuthZ: []
- summary: Get SPA Recommendations
- tags:
- - Spa
- x-unstable: |-
- **Note**: This endpoint is in preview and may change in the future. It is not yet recommended for production use.
- /api/v2/spa/recommendations/{service}/{shard}:
- get:
- description: This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and shard identifier, and SPA returns structured recommendations for driver and executor resources.
- operationId: GetSPARecommendationsWithShard
- parameters:
- - description: The shard tag for a spark job, which differentiates jobs within the same service that have different resource needs
- in: path
- name: shard
- required: true
- schema:
- type: string
- - description: The service name for a spark job
- in: path
- name: service
- required: true
- schema:
- type: string
- - description: The recommendation service should not use its metrics cache.
- in: query
- name: bypass_cache
- schema:
- type: string
- responses:
- "200":
- content:
- application/json:
- example:
- data:
- attributes:
- driver:
- estimation:
- cpu: {max: 1500, p75: 1000, p95: 1200}
- ephemeral_storage: 896
- heap: 6144
- memory: 7168
- overhead: 1024
- executor:
- estimation:
- cpu: {max: 2000, p75: 1200, p95: 1500}
- ephemeral_storage: 512
- heap: 3072
- memory: 4096
- overhead: 1024
- id: "dedupeactivecontexts:adp_dedupeactivecontexts_org2"
- type: recommendation
- schema:
- $ref: "#/components/schemas/RecommendationDocument"
- description: OK
- "400":
- $ref: "#/components/responses/BadRequestResponse"
- "403":
- $ref: "#/components/responses/NotAuthorizedResponse"
- "429":
- $ref: "#/components/responses/TooManyRequestsResponse"
- security:
- - AuthZ: []
- summary: Get SPA Recommendations with a shard parameter
- tags:
- - Spa
- x-unstable: |-
- **Note**: This endpoint is in preview and may change in the future. It is not yet recommended for production use.
/api/v2/spans/analytics/aggregate:
post:
description: |-
@@ -249345,8 +249030,6 @@ tags:
externalDocs:
url: https://docs.datadoghq.com/service_catalog/service_definitions#metadata-schema-v30-beta
name: Software Catalog
- - description: SPA (Spark Pod Autosizing) API. Provides resource recommendations and cost insights to help optimize Spark job configurations.
- name: Spa
- description: |-
Search and aggregate your spans from your Datadog platform over HTTP.
name: Spans
diff --git a/examples/v2/spa/GetSPARecommendations.java b/examples/v2/spa/GetSPARecommendations.java
deleted file mode 100644
index 56a3bdeed92..00000000000
--- a/examples/v2/spa/GetSPARecommendations.java
+++ /dev/null
@@ -1,26 +0,0 @@
-// Get SPA Recommendations returns "OK" response
-
-import com.datadog.api.client.ApiClient;
-import com.datadog.api.client.ApiException;
-import com.datadog.api.client.v2.api.SpaApi;
-import com.datadog.api.client.v2.model.RecommendationDocument;
-
-public class Example {
- public static void main(String[] args) {
- ApiClient defaultClient = ApiClient.getDefaultApiClient();
- defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
- defaultClient.setUnstableOperationEnabled("v2.getSPARecommendations", true);
- SpaApi apiInstance = new SpaApi(defaultClient);
-
- try {
- RecommendationDocument result = apiInstance.getSPARecommendations("service");
- System.out.println(result);
- } catch (ApiException e) {
- System.err.println("Exception when calling SpaApi#getSPARecommendations");
- 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/examples/v2/spa/GetSPARecommendationsV2.java b/examples/v2/spa/GetSPARecommendationsV2.java
deleted file mode 100644
index da6491a0d1d..00000000000
--- a/examples/v2/spa/GetSPARecommendationsV2.java
+++ /dev/null
@@ -1,40 +0,0 @@
-// Get SPA recommendations v2 returns "OK" response
-
-import com.datadog.api.client.ApiClient;
-import com.datadog.api.client.ApiException;
-import com.datadog.api.client.v2.api.SpaApi;
-import com.datadog.api.client.v2.model.RecommendationDocument;
-import com.datadog.api.client.v2.model.RecommendationV2RequestAttributes;
-import com.datadog.api.client.v2.model.RecommendationV2RequestBody;
-import com.datadog.api.client.v2.model.RecommendationV2RequestData;
-import com.datadog.api.client.v2.model.RecommendationV2RequestType;
-import java.util.Collections;
-
-public class Example {
- public static void main(String[] args) {
- ApiClient defaultClient = ApiClient.getDefaultApiClient();
- defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
- defaultClient.setUnstableOperationEnabled("v2.getSPARecommendationsV2", true);
- SpaApi apiInstance = new SpaApi(defaultClient);
-
- RecommendationV2RequestBody body =
- new RecommendationV2RequestBody()
- .data(
- new RecommendationV2RequestData()
- .attributes(
- new RecommendationV2RequestAttributes()
- .arguments(Collections.singletonList("")))
- .type(RecommendationV2RequestType.RECOMMENDATION_V2_REQUEST));
-
- try {
- RecommendationDocument result = apiInstance.getSPARecommendationsV2("service", body);
- System.out.println(result);
- } catch (ApiException e) {
- System.err.println("Exception when calling SpaApi#getSPARecommendationsV2");
- 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/examples/v2/spa/GetSPARecommendationsWithShard.java b/examples/v2/spa/GetSPARecommendationsWithShard.java
deleted file mode 100644
index c9dfbbeafd0..00000000000
--- a/examples/v2/spa/GetSPARecommendationsWithShard.java
+++ /dev/null
@@ -1,27 +0,0 @@
-// Get SPA Recommendations with a shard parameter returns "OK" response
-
-import com.datadog.api.client.ApiClient;
-import com.datadog.api.client.ApiException;
-import com.datadog.api.client.v2.api.SpaApi;
-import com.datadog.api.client.v2.model.RecommendationDocument;
-
-public class Example {
- public static void main(String[] args) {
- ApiClient defaultClient = ApiClient.getDefaultApiClient();
- defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
- defaultClient.setUnstableOperationEnabled("v2.getSPARecommendationsWithShard", true);
- SpaApi apiInstance = new SpaApi(defaultClient);
-
- try {
- RecommendationDocument result =
- apiInstance.getSPARecommendationsWithShard("shard", "service");
- System.out.println(result);
- } catch (ApiException e) {
- System.err.println("Exception when calling SpaApi#getSPARecommendationsWithShard");
- 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/ApiClient.java b/src/main/java/com/datadog/api/client/ApiClient.java
index cb71e0f70ef..a2b05765465 100644
--- a/src/main/java/com/datadog/api/client/ApiClient.java
+++ b/src/main/java/com/datadog/api/client/ApiClient.java
@@ -1561,9 +1561,6 @@ public class ApiClient {
put("v2.getSLOReportJobStatus", false);
put("v2.getSloStatus", false);
put("v2.createSnapshot", false);
- put("v2.getSPARecommendations", false);
- put("v2.getSPARecommendationsV2", false);
- put("v2.getSPARecommendationsWithShard", false);
put("v2.createAiCustomRule", false);
put("v2.createAiCustomRuleRevision", false);
put("v2.createAiCustomRuleset", false);
diff --git a/src/main/java/com/datadog/api/client/v2/api/SpaApi.java b/src/main/java/com/datadog/api/client/v2/api/SpaApi.java
deleted file mode 100644
index 089351ff72f..00000000000
--- a/src/main/java/com/datadog/api/client/v2/api/SpaApi.java
+++ /dev/null
@@ -1,701 +0,0 @@
-package com.datadog.api.client.v2.api;
-
-import com.datadog.api.client.ApiClient;
-import com.datadog.api.client.ApiException;
-import com.datadog.api.client.ApiResponse;
-import com.datadog.api.client.Pair;
-import com.datadog.api.client.v2.model.RecommendationDocument;
-import com.datadog.api.client.v2.model.RecommendationV2RequestBody;
-import jakarta.ws.rs.client.Invocation;
-import jakarta.ws.rs.core.GenericType;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.CompletableFuture;
-
-@jakarta.annotation.Generated(
- value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
-public class SpaApi {
- private ApiClient apiClient;
-
- public SpaApi() {
- this(ApiClient.getDefaultApiClient());
- }
-
- public SpaApi(ApiClient apiClient) {
- this.apiClient = apiClient;
- }
-
- /**
- * Get the API client.
- *
- * @return API client
- */
- public ApiClient getApiClient() {
- return apiClient;
- }
-
- /**
- * Set the API client.
- *
- * @param apiClient an instance of API client
- */
- public void setApiClient(ApiClient apiClient) {
- this.apiClient = apiClient;
- }
-
- /** Manage optional parameters to getSPARecommendations. */
- public static class GetSPARecommendationsOptionalParameters {
- private String bypassCache;
-
- /**
- * Set bypassCache.
- *
- * @param bypassCache The recommendation service should not use its metrics cache. (optional)
- * @return GetSPARecommendationsOptionalParameters
- */
- public GetSPARecommendationsOptionalParameters bypassCache(String bypassCache) {
- this.bypassCache = bypassCache;
- return this;
- }
- }
-
- /**
- * Get SPA Recommendations.
- *
- *
See {@link #getSPARecommendationsWithHttpInfo}.
- *
- * @param service The service name for a spark job. (required)
- * @return RecommendationDocument
- * @throws ApiException if fails to make API call
- */
- public RecommendationDocument getSPARecommendations(String service) throws ApiException {
- return getSPARecommendationsWithHttpInfo(service, new GetSPARecommendationsOptionalParameters())
- .getData();
- }
-
- /**
- * Get SPA Recommendations.
- *
- *
See {@link #getSPARecommendationsWithHttpInfoAsync}.
- *
- * @param service The service name for a spark job. (required)
- * @return CompletableFuture<RecommendationDocument>
- */
- public CompletableFuture getSPARecommendationsAsync(String service) {
- return getSPARecommendationsWithHttpInfoAsync(
- service, new GetSPARecommendationsOptionalParameters())
- .thenApply(
- response -> {
- return response.getData();
- });
- }
-
- /**
- * Get SPA Recommendations.
- *
- * See {@link #getSPARecommendationsWithHttpInfo}.
- *
- * @param service The service name for a spark job. (required)
- * @param parameters Optional parameters for the request.
- * @return RecommendationDocument
- * @throws ApiException if fails to make API call
- */
- public RecommendationDocument getSPARecommendations(
- String service, GetSPARecommendationsOptionalParameters parameters) throws ApiException {
- return getSPARecommendationsWithHttpInfo(service, parameters).getData();
- }
-
- /**
- * Get SPA Recommendations.
- *
- *
See {@link #getSPARecommendationsWithHttpInfoAsync}.
- *
- * @param service The service name for a spark job. (required)
- * @param parameters Optional parameters for the request.
- * @return CompletableFuture<RecommendationDocument>
- */
- public CompletableFuture getSPARecommendationsAsync(
- String service, GetSPARecommendationsOptionalParameters parameters) {
- return getSPARecommendationsWithHttpInfoAsync(service, parameters)
- .thenApply(
- response -> {
- return response.getData();
- });
- }
-
- /**
- * This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve
- * resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a
- * service name and SPA returns structured recommendations for driver and executor resources. The
- * version with a shard should be preferred, where possible, as it gives more accurate results.
- *
- * @param service The service name for a spark job. (required)
- * @param parameters Optional parameters for the request.
- * @return ApiResponse<RecommendationDocument>
- * @throws ApiException if fails to make API call
- * @http.response.details
- *
- * Response details
- * | Status Code | Description | Response Headers |
- * | 200 | OK | - |
- * | 400 | Bad Request | - |
- * | 403 | Not Authorized | - |
- * | 429 | Too many requests | - |
- *
- */
- public ApiResponse getSPARecommendationsWithHttpInfo(
- String service, GetSPARecommendationsOptionalParameters parameters) throws ApiException {
- // Check if unstable operation is enabled
- String operationId = "getSPARecommendations";
- if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
- apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
- } else {
- throw new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId));
- }
- Object localVarPostBody = null;
-
- // verify the required parameter 'service' is set
- if (service == null) {
- throw new ApiException(
- 400, "Missing the required parameter 'service' when calling getSPARecommendations");
- }
- String bypassCache = parameters.bypassCache;
- // create path and map variables
- String localVarPath =
- "/api/v2/spa/recommendations/{service}"
- .replaceAll("\\{" + "service" + "\\}", apiClient.escapeString(service.toString()));
-
- List localVarQueryParams = new ArrayList();
- Map localVarHeaderParams = new HashMap();
-
- localVarQueryParams.addAll(apiClient.parameterToPairs("", "bypass_cache", bypassCache));
-
- Invocation.Builder builder =
- apiClient.createBuilder(
- "v2.SpaApi.getSPARecommendations",
- localVarPath,
- localVarQueryParams,
- localVarHeaderParams,
- new HashMap(),
- new String[] {"application/json"},
- new String[] {"AuthZ"});
- return apiClient.invokeAPI(
- "GET",
- builder,
- localVarHeaderParams,
- new String[] {},
- localVarPostBody,
- new HashMap(),
- false,
- new GenericType() {});
- }
-
- /**
- * Get SPA Recommendations.
- *
- * See {@link #getSPARecommendationsWithHttpInfo}.
- *
- * @param service The service name for a spark job. (required)
- * @param parameters Optional parameters for the request.
- * @return CompletableFuture<ApiResponse<RecommendationDocument>>
- */
- public CompletableFuture>
- getSPARecommendationsWithHttpInfoAsync(
- String service, GetSPARecommendationsOptionalParameters parameters) {
- // Check if unstable operation is enabled
- String operationId = "getSPARecommendations";
- if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
- apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
- } else {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(
- new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId)));
- return result;
- }
- Object localVarPostBody = null;
-
- // verify the required parameter 'service' is set
- if (service == null) {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(
- new ApiException(
- 400, "Missing the required parameter 'service' when calling getSPARecommendations"));
- return result;
- }
- String bypassCache = parameters.bypassCache;
- // create path and map variables
- String localVarPath =
- "/api/v2/spa/recommendations/{service}"
- .replaceAll("\\{" + "service" + "\\}", apiClient.escapeString(service.toString()));
-
- List localVarQueryParams = new ArrayList();
- Map localVarHeaderParams = new HashMap();
-
- localVarQueryParams.addAll(apiClient.parameterToPairs("", "bypass_cache", bypassCache));
-
- Invocation.Builder builder;
- try {
- builder =
- apiClient.createBuilder(
- "v2.SpaApi.getSPARecommendations",
- localVarPath,
- localVarQueryParams,
- localVarHeaderParams,
- new HashMap(),
- new String[] {"application/json"},
- new String[] {"AuthZ"});
- } catch (ApiException ex) {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(ex);
- return result;
- }
- return apiClient.invokeAPIAsync(
- "GET",
- builder,
- localVarHeaderParams,
- new String[] {},
- localVarPostBody,
- new HashMap(),
- false,
- new GenericType() {});
- }
-
- /**
- * Get SPA recommendations v2.
- *
- * See {@link #getSPARecommendationsV2WithHttpInfo}.
- *
- * @param service The service name for a Spark job (required)
- * @param body (required)
- * @return RecommendationDocument
- * @throws ApiException if fails to make API call
- */
- public RecommendationDocument getSPARecommendationsV2(
- String service, RecommendationV2RequestBody body) throws ApiException {
- return getSPARecommendationsV2WithHttpInfo(service, body).getData();
- }
-
- /**
- * Get SPA recommendations v2.
- *
- *
See {@link #getSPARecommendationsV2WithHttpInfoAsync}.
- *
- * @param service The service name for a Spark job (required)
- * @param body (required)
- * @return CompletableFuture<RecommendationDocument>
- */
- public CompletableFuture getSPARecommendationsV2Async(
- String service, RecommendationV2RequestBody body) {
- return getSPARecommendationsV2WithHttpInfoAsync(service, body)
- .thenApply(
- response -> {
- return response.getData();
- });
- }
-
- /**
- * This endpoint is experimental and restricted to Datadog internal use only. Retrieve resource
- * recommendations for a Spark job. The caller (Spark Gateway) provides a service name and the
- * job's raw arguments. SPA determines which arguments are relevant for the service and returns
- * structured recommendations for driver and executor resources.
- *
- * @param service The service name for a Spark job (required)
- * @param body (required)
- * @return ApiResponse<RecommendationDocument>
- * @throws ApiException if fails to make API call
- * @http.response.details
- *
- * Response details
- * | Status Code | Description | Response Headers |
- * | 200 | OK | - |
- * | 400 | Bad Request | - |
- * | 403 | Not Authorized | - |
- * | 404 | Not Found | - |
- * | 429 | Too many requests | - |
- *
- */
- public ApiResponse getSPARecommendationsV2WithHttpInfo(
- String service, RecommendationV2RequestBody body) throws ApiException {
- // Check if unstable operation is enabled
- String operationId = "getSPARecommendationsV2";
- if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
- apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
- } else {
- throw new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId));
- }
- Object localVarPostBody = body;
-
- // verify the required parameter 'service' is set
- if (service == null) {
- throw new ApiException(
- 400, "Missing the required parameter 'service' when calling getSPARecommendationsV2");
- }
-
- // verify the required parameter 'body' is set
- if (body == null) {
- throw new ApiException(
- 400, "Missing the required parameter 'body' when calling getSPARecommendationsV2");
- }
- // create path and map variables
- String localVarPath =
- "/api/v2/spa/recommendations-v2/{service}"
- .replaceAll("\\{" + "service" + "\\}", apiClient.escapeString(service.toString()));
-
- Map localVarHeaderParams = new HashMap();
-
- Invocation.Builder builder =
- apiClient.createBuilder(
- "v2.SpaApi.getSPARecommendationsV2",
- localVarPath,
- new ArrayList(),
- localVarHeaderParams,
- new HashMap(),
- new String[] {"application/json"},
- new String[] {"AuthZ"});
- return apiClient.invokeAPI(
- "POST",
- builder,
- localVarHeaderParams,
- new String[] {"application/json"},
- localVarPostBody,
- new HashMap(),
- false,
- new GenericType() {});
- }
-
- /**
- * Get SPA recommendations v2.
- *
- * See {@link #getSPARecommendationsV2WithHttpInfo}.
- *
- * @param service The service name for a Spark job (required)
- * @param body (required)
- * @return CompletableFuture<ApiResponse<RecommendationDocument>>
- */
- public CompletableFuture>
- getSPARecommendationsV2WithHttpInfoAsync(String service, RecommendationV2RequestBody body) {
- // Check if unstable operation is enabled
- String operationId = "getSPARecommendationsV2";
- if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
- apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
- } else {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(
- new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId)));
- return result;
- }
- Object localVarPostBody = body;
-
- // verify the required parameter 'service' is set
- if (service == null) {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(
- new ApiException(
- 400,
- "Missing the required parameter 'service' when calling getSPARecommendationsV2"));
- 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 getSPARecommendationsV2"));
- return result;
- }
- // create path and map variables
- String localVarPath =
- "/api/v2/spa/recommendations-v2/{service}"
- .replaceAll("\\{" + "service" + "\\}", apiClient.escapeString(service.toString()));
-
- Map localVarHeaderParams = new HashMap();
-
- Invocation.Builder builder;
- try {
- builder =
- apiClient.createBuilder(
- "v2.SpaApi.getSPARecommendationsV2",
- localVarPath,
- new ArrayList(),
- localVarHeaderParams,
- new HashMap(),
- new String[] {"application/json"},
- new String[] {"AuthZ"});
- } catch (ApiException ex) {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(ex);
- return result;
- }
- return apiClient.invokeAPIAsync(
- "POST",
- builder,
- localVarHeaderParams,
- new String[] {"application/json"},
- localVarPostBody,
- new HashMap(),
- false,
- new GenericType() {});
- }
-
- /** Manage optional parameters to getSPARecommendationsWithShard. */
- public static class GetSPARecommendationsWithShardOptionalParameters {
- private String bypassCache;
-
- /**
- * Set bypassCache.
- *
- * @param bypassCache The recommendation service should not use its metrics cache. (optional)
- * @return GetSPARecommendationsWithShardOptionalParameters
- */
- public GetSPARecommendationsWithShardOptionalParameters bypassCache(String bypassCache) {
- this.bypassCache = bypassCache;
- return this;
- }
- }
-
- /**
- * Get SPA Recommendations with a shard parameter.
- *
- * See {@link #getSPARecommendationsWithShardWithHttpInfo}.
- *
- * @param shard The shard tag for a spark job, which differentiates jobs within the same service
- * that have different resource needs (required)
- * @param service The service name for a spark job (required)
- * @return RecommendationDocument
- * @throws ApiException if fails to make API call
- */
- public RecommendationDocument getSPARecommendationsWithShard(String shard, String service)
- throws ApiException {
- return getSPARecommendationsWithShardWithHttpInfo(
- shard, service, new GetSPARecommendationsWithShardOptionalParameters())
- .getData();
- }
-
- /**
- * Get SPA Recommendations with a shard parameter.
- *
- *
See {@link #getSPARecommendationsWithShardWithHttpInfoAsync}.
- *
- * @param shard The shard tag for a spark job, which differentiates jobs within the same service
- * that have different resource needs (required)
- * @param service The service name for a spark job (required)
- * @return CompletableFuture<RecommendationDocument>
- */
- public CompletableFuture getSPARecommendationsWithShardAsync(
- String shard, String service) {
- return getSPARecommendationsWithShardWithHttpInfoAsync(
- shard, service, new GetSPARecommendationsWithShardOptionalParameters())
- .thenApply(
- response -> {
- return response.getData();
- });
- }
-
- /**
- * Get SPA Recommendations with a shard parameter.
- *
- * See {@link #getSPARecommendationsWithShardWithHttpInfo}.
- *
- * @param shard The shard tag for a spark job, which differentiates jobs within the same service
- * that have different resource needs (required)
- * @param service The service name for a spark job (required)
- * @param parameters Optional parameters for the request.
- * @return RecommendationDocument
- * @throws ApiException if fails to make API call
- */
- public RecommendationDocument getSPARecommendationsWithShard(
- String shard, String service, GetSPARecommendationsWithShardOptionalParameters parameters)
- throws ApiException {
- return getSPARecommendationsWithShardWithHttpInfo(shard, service, parameters).getData();
- }
-
- /**
- * Get SPA Recommendations with a shard parameter.
- *
- *
See {@link #getSPARecommendationsWithShardWithHttpInfoAsync}.
- *
- * @param shard The shard tag for a spark job, which differentiates jobs within the same service
- * that have different resource needs (required)
- * @param service The service name for a spark job (required)
- * @param parameters Optional parameters for the request.
- * @return CompletableFuture<RecommendationDocument>
- */
- public CompletableFuture getSPARecommendationsWithShardAsync(
- String shard, String service, GetSPARecommendationsWithShardOptionalParameters parameters) {
- return getSPARecommendationsWithShardWithHttpInfoAsync(shard, service, parameters)
- .thenApply(
- response -> {
- return response.getData();
- });
- }
-
- /**
- * This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve
- * resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a
- * service name and shard identifier, and SPA returns structured recommendations for driver and
- * executor resources.
- *
- * @param shard The shard tag for a spark job, which differentiates jobs within the same service
- * that have different resource needs (required)
- * @param service The service name for a spark job (required)
- * @param parameters Optional parameters for the request.
- * @return ApiResponse<RecommendationDocument>
- * @throws ApiException if fails to make API call
- * @http.response.details
- *
- * Response details
- * | Status Code | Description | Response Headers |
- * | 200 | OK | - |
- * | 400 | Bad Request | - |
- * | 403 | Not Authorized | - |
- * | 429 | Too many requests | - |
- *
- */
- public ApiResponse getSPARecommendationsWithShardWithHttpInfo(
- String shard, String service, GetSPARecommendationsWithShardOptionalParameters parameters)
- throws ApiException {
- // Check if unstable operation is enabled
- String operationId = "getSPARecommendationsWithShard";
- if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
- apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
- } else {
- throw new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId));
- }
- Object localVarPostBody = null;
-
- // verify the required parameter 'shard' is set
- if (shard == null) {
- throw new ApiException(
- 400,
- "Missing the required parameter 'shard' when calling getSPARecommendationsWithShard");
- }
-
- // verify the required parameter 'service' is set
- if (service == null) {
- throw new ApiException(
- 400,
- "Missing the required parameter 'service' when calling getSPARecommendationsWithShard");
- }
- String bypassCache = parameters.bypassCache;
- // create path and map variables
- String localVarPath =
- "/api/v2/spa/recommendations/{service}/{shard}"
- .replaceAll("\\{" + "shard" + "\\}", apiClient.escapeString(shard.toString()))
- .replaceAll("\\{" + "service" + "\\}", apiClient.escapeString(service.toString()));
-
- List localVarQueryParams = new ArrayList();
- Map localVarHeaderParams = new HashMap();
-
- localVarQueryParams.addAll(apiClient.parameterToPairs("", "bypass_cache", bypassCache));
-
- Invocation.Builder builder =
- apiClient.createBuilder(
- "v2.SpaApi.getSPARecommendationsWithShard",
- localVarPath,
- localVarQueryParams,
- localVarHeaderParams,
- new HashMap(),
- new String[] {"application/json"},
- new String[] {"AuthZ"});
- return apiClient.invokeAPI(
- "GET",
- builder,
- localVarHeaderParams,
- new String[] {},
- localVarPostBody,
- new HashMap(),
- false,
- new GenericType() {});
- }
-
- /**
- * Get SPA Recommendations with a shard parameter.
- *
- * See {@link #getSPARecommendationsWithShardWithHttpInfo}.
- *
- * @param shard The shard tag for a spark job, which differentiates jobs within the same service
- * that have different resource needs (required)
- * @param service The service name for a spark job (required)
- * @param parameters Optional parameters for the request.
- * @return CompletableFuture<ApiResponse<RecommendationDocument>>
- */
- public CompletableFuture>
- getSPARecommendationsWithShardWithHttpInfoAsync(
- String shard,
- String service,
- GetSPARecommendationsWithShardOptionalParameters parameters) {
- // Check if unstable operation is enabled
- String operationId = "getSPARecommendationsWithShard";
- if (apiClient.isUnstableOperationEnabled("v2." + operationId)) {
- apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId));
- } else {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(
- new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId)));
- return result;
- }
- Object localVarPostBody = null;
-
- // verify the required parameter 'shard' is set
- if (shard == null) {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(
- new ApiException(
- 400,
- "Missing the required parameter 'shard' when calling"
- + " getSPARecommendationsWithShard"));
- return result;
- }
-
- // verify the required parameter 'service' is set
- if (service == null) {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(
- new ApiException(
- 400,
- "Missing the required parameter 'service' when calling"
- + " getSPARecommendationsWithShard"));
- return result;
- }
- String bypassCache = parameters.bypassCache;
- // create path and map variables
- String localVarPath =
- "/api/v2/spa/recommendations/{service}/{shard}"
- .replaceAll("\\{" + "shard" + "\\}", apiClient.escapeString(shard.toString()))
- .replaceAll("\\{" + "service" + "\\}", apiClient.escapeString(service.toString()));
-
- List localVarQueryParams = new ArrayList();
- Map localVarHeaderParams = new HashMap();
-
- localVarQueryParams.addAll(apiClient.parameterToPairs("", "bypass_cache", bypassCache));
-
- Invocation.Builder builder;
- try {
- builder =
- apiClient.createBuilder(
- "v2.SpaApi.getSPARecommendationsWithShard",
- localVarPath,
- localVarQueryParams,
- localVarHeaderParams,
- new HashMap(),
- new String[] {"application/json"},
- new String[] {"AuthZ"});
- } catch (ApiException ex) {
- CompletableFuture> result = new CompletableFuture<>();
- result.completeExceptionally(ex);
- return result;
- }
- return apiClient.invokeAPIAsync(
- "GET",
- builder,
- localVarHeaderParams,
- new String[] {},
- localVarPostBody,
- new HashMap(),
- false,
- new GenericType() {});
- }
-}
diff --git a/src/main/java/com/datadog/api/client/v2/model/ComponentRecommendation.java b/src/main/java/com/datadog/api/client/v2/model/ComponentRecommendation.java
deleted file mode 100644
index 1f3df19be99..00000000000
--- a/src/main/java/com/datadog/api/client/v2/model/ComponentRecommendation.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * 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;
-
-/**
- * Resource recommendation for a single Spark component (driver or executor). Contains estimation
- * data used to patch Spark job specs.
- */
-@JsonPropertyOrder({ComponentRecommendation.JSON_PROPERTY_ESTIMATION})
-@jakarta.annotation.Generated(
- value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
-public class ComponentRecommendation {
- @JsonIgnore public boolean unparsed = false;
- public static final String JSON_PROPERTY_ESTIMATION = "estimation";
- private Estimation estimation;
-
- public ComponentRecommendation() {}
-
- @JsonCreator
- public ComponentRecommendation(
- @JsonProperty(required = true, value = JSON_PROPERTY_ESTIMATION) Estimation estimation) {
- this.estimation = estimation;
- this.unparsed |= estimation.unparsed;
- }
-
- public ComponentRecommendation estimation(Estimation estimation) {
- this.estimation = estimation;
- this.unparsed |= estimation.unparsed;
- return this;
- }
-
- /**
- * Recommended resource values for a Spark driver or executor, derived from recent real usage
- * metrics. Used by SPA to propose more efficient pod sizing.
- *
- * @return estimation
- */
- @JsonProperty(JSON_PROPERTY_ESTIMATION)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public Estimation getEstimation() {
- return estimation;
- }
-
- public void setEstimation(Estimation estimation) {
- this.estimation = estimation;
- if (estimation != null) {
- this.unparsed |= estimation.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 ComponentRecommendation
- */
- @JsonAnySetter
- public ComponentRecommendation 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 ComponentRecommendation object is equal to o. */
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- ComponentRecommendation componentRecommendation = (ComponentRecommendation) o;
- return Objects.equals(this.estimation, componentRecommendation.estimation)
- && Objects.equals(this.additionalProperties, componentRecommendation.additionalProperties);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(estimation, additionalProperties);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class ComponentRecommendation {\n");
- sb.append(" estimation: ").append(toIndentedString(estimation)).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/Cpu.java b/src/main/java/com/datadog/api/client/v2/model/Cpu.java
deleted file mode 100644
index 7bd2130ebf2..00000000000
--- a/src/main/java/com/datadog/api/client/v2/model/Cpu.java
+++ /dev/null
@@ -1,193 +0,0 @@
-/*
- * 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;
-
-/**
- * CPU usage statistics derived from historical Spark job metrics. Provides multiple estimates so
- * users can choose between conservative and cost-saving risk profiles.
- */
-@JsonPropertyOrder({Cpu.JSON_PROPERTY_MAX, Cpu.JSON_PROPERTY_P75, Cpu.JSON_PROPERTY_P95})
-@jakarta.annotation.Generated(
- value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
-public class Cpu {
- @JsonIgnore public boolean unparsed = false;
- public static final String JSON_PROPERTY_MAX = "max";
- private Long max;
-
- public static final String JSON_PROPERTY_P75 = "p75";
- private Long p75;
-
- public static final String JSON_PROPERTY_P95 = "p95";
- private Long p95;
-
- public Cpu max(Long max) {
- this.max = max;
- return this;
- }
-
- /**
- * Maximum CPU usage observed for the job, expressed in millicores. This represents the upper
- * bound of usage.
- *
- * @return max
- */
- @jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_MAX)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public Long getMax() {
- return max;
- }
-
- public void setMax(Long max) {
- this.max = max;
- }
-
- public Cpu p75(Long p75) {
- this.p75 = p75;
- return this;
- }
-
- /**
- * 75th percentile of CPU usage (millicores). Represents a cost-saving configuration while
- * covering most workloads.
- *
- * @return p75
- */
- @jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_P75)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public Long getP75() {
- return p75;
- }
-
- public void setP75(Long p75) {
- this.p75 = p75;
- }
-
- public Cpu p95(Long p95) {
- this.p95 = p95;
- return this;
- }
-
- /**
- * 95th percentile of CPU usage (millicores). Balances performance and cost, providing a safer
- * margin than p75.
- *
- * @return p95
- */
- @jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_P95)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public Long getP95() {
- return p95;
- }
-
- public void setP95(Long p95) {
- this.p95 = p95;
- }
-
- /**
- * 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 Cpu
- */
- @JsonAnySetter
- public Cpu 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 Cpu object is equal to o. */
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- Cpu cpu = (Cpu) o;
- return Objects.equals(this.max, cpu.max)
- && Objects.equals(this.p75, cpu.p75)
- && Objects.equals(this.p95, cpu.p95)
- && Objects.equals(this.additionalProperties, cpu.additionalProperties);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(max, p75, p95, additionalProperties);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class Cpu {\n");
- sb.append(" max: ").append(toIndentedString(max)).append("\n");
- sb.append(" p75: ").append(toIndentedString(p75)).append("\n");
- sb.append(" p95: ").append(toIndentedString(p95)).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/Estimation.java b/src/main/java/com/datadog/api/client/v2/model/Estimation.java
deleted file mode 100644
index 7d3ca71af94..00000000000
--- a/src/main/java/com/datadog/api/client/v2/model/Estimation.java
+++ /dev/null
@@ -1,253 +0,0 @@
-/*
- * 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;
-
-/**
- * Recommended resource values for a Spark driver or executor, derived from recent real usage
- * metrics. Used by SPA to propose more efficient pod sizing.
- */
-@JsonPropertyOrder({
- Estimation.JSON_PROPERTY_CPU,
- Estimation.JSON_PROPERTY_EPHEMERAL_STORAGE,
- Estimation.JSON_PROPERTY_HEAP,
- Estimation.JSON_PROPERTY_MEMORY,
- Estimation.JSON_PROPERTY_OVERHEAD
-})
-@jakarta.annotation.Generated(
- value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
-public class Estimation {
- @JsonIgnore public boolean unparsed = false;
- public static final String JSON_PROPERTY_CPU = "cpu";
- private Cpu cpu;
-
- public static final String JSON_PROPERTY_EPHEMERAL_STORAGE = "ephemeral_storage";
- private Long ephemeralStorage;
-
- public static final String JSON_PROPERTY_HEAP = "heap";
- private Long heap;
-
- public static final String JSON_PROPERTY_MEMORY = "memory";
- private Long memory;
-
- public static final String JSON_PROPERTY_OVERHEAD = "overhead";
- private Long overhead;
-
- public Estimation cpu(Cpu cpu) {
- this.cpu = cpu;
- this.unparsed |= cpu.unparsed;
- return this;
- }
-
- /**
- * CPU usage statistics derived from historical Spark job metrics. Provides multiple estimates so
- * users can choose between conservative and cost-saving risk profiles.
- *
- * @return cpu
- */
- @jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_CPU)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public Cpu getCpu() {
- return cpu;
- }
-
- public void setCpu(Cpu cpu) {
- this.cpu = cpu;
- if (cpu != null) {
- this.unparsed |= cpu.unparsed;
- }
- }
-
- public Estimation ephemeralStorage(Long ephemeralStorage) {
- this.ephemeralStorage = ephemeralStorage;
- return this;
- }
-
- /**
- * Recommended ephemeral storage allocation (in MiB). Derived from job temporary storage patterns.
- *
- * @return ephemeralStorage
- */
- @jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_EPHEMERAL_STORAGE)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public Long getEphemeralStorage() {
- return ephemeralStorage;
- }
-
- public void setEphemeralStorage(Long ephemeralStorage) {
- this.ephemeralStorage = ephemeralStorage;
- }
-
- public Estimation heap(Long heap) {
- this.heap = heap;
- return this;
- }
-
- /**
- * Recommended JVM heap size (in MiB).
- *
- * @return heap
- */
- @jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_HEAP)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public Long getHeap() {
- return heap;
- }
-
- public void setHeap(Long heap) {
- this.heap = heap;
- }
-
- public Estimation memory(Long memory) {
- this.memory = memory;
- return this;
- }
-
- /**
- * Recommended total memory allocation (in MiB). Includes both heap and overhead.
- *
- * @return memory
- */
- @jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_MEMORY)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public Long getMemory() {
- return memory;
- }
-
- public void setMemory(Long memory) {
- this.memory = memory;
- }
-
- public Estimation overhead(Long overhead) {
- this.overhead = overhead;
- return this;
- }
-
- /**
- * Recommended JVM overhead (in MiB). Computed as total memory - heap.
- *
- * @return overhead
- */
- @jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_OVERHEAD)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public Long getOverhead() {
- return overhead;
- }
-
- public void setOverhead(Long overhead) {
- this.overhead = overhead;
- }
-
- /**
- * 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 Estimation
- */
- @JsonAnySetter
- public Estimation 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 Estimation object is equal to o. */
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- Estimation estimation = (Estimation) o;
- return Objects.equals(this.cpu, estimation.cpu)
- && Objects.equals(this.ephemeralStorage, estimation.ephemeralStorage)
- && Objects.equals(this.heap, estimation.heap)
- && Objects.equals(this.memory, estimation.memory)
- && Objects.equals(this.overhead, estimation.overhead)
- && Objects.equals(this.additionalProperties, estimation.additionalProperties);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(cpu, ephemeralStorage, heap, memory, overhead, additionalProperties);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class Estimation {\n");
- sb.append(" cpu: ").append(toIndentedString(cpu)).append("\n");
- sb.append(" ephemeralStorage: ").append(toIndentedString(ephemeralStorage)).append("\n");
- sb.append(" heap: ").append(toIndentedString(heap)).append("\n");
- sb.append(" memory: ").append(toIndentedString(memory)).append("\n");
- sb.append(" overhead: ").append(toIndentedString(overhead)).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/RecommendationAttributes.java b/src/main/java/com/datadog/api/client/v2/model/RecommendationAttributes.java
deleted file mode 100644
index e4e1826db98..00000000000
--- a/src/main/java/com/datadog/api/client/v2/model/RecommendationAttributes.java
+++ /dev/null
@@ -1,246 +0,0 @@
-/*
- * 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;
-
-/**
- * Attributes of the SPA Recommendation resource. Contains recommendations for both driver and
- * executor components.
- */
-@JsonPropertyOrder({
- RecommendationAttributes.JSON_PROPERTY_CONFIDENCE_LEVEL,
- RecommendationAttributes.JSON_PROPERTY_DRIVER,
- RecommendationAttributes.JSON_PROPERTY_EXECUTOR,
- RecommendationAttributes.JSON_PROPERTY_MATCHED_PARAMS
-})
-@jakarta.annotation.Generated(
- value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
-public class RecommendationAttributes {
- @JsonIgnore public boolean unparsed = false;
- public static final String JSON_PROPERTY_CONFIDENCE_LEVEL = "confidence_level";
- private Double confidenceLevel;
-
- public static final String JSON_PROPERTY_DRIVER = "driver";
- private ComponentRecommendation driver;
-
- public static final String JSON_PROPERTY_EXECUTOR = "executor";
- private ComponentRecommendation executor;
-
- public static final String JSON_PROPERTY_MATCHED_PARAMS = "matched_params";
- private String matchedParams;
-
- public RecommendationAttributes() {}
-
- @JsonCreator
- public RecommendationAttributes(
- @JsonProperty(required = true, value = JSON_PROPERTY_DRIVER) ComponentRecommendation driver,
- @JsonProperty(required = true, value = JSON_PROPERTY_EXECUTOR)
- ComponentRecommendation executor) {
- this.driver = driver;
- this.unparsed |= driver.unparsed;
- this.executor = executor;
- this.unparsed |= executor.unparsed;
- }
-
- public RecommendationAttributes confidenceLevel(Double confidenceLevel) {
- this.confidenceLevel = confidenceLevel;
- return this;
- }
-
- /**
- * The confidence level of the recommendation, expressed as a value between 0.0 (low confidence)
- * and 1.0 (high confidence).
- *
- * @return confidenceLevel
- */
- @jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_CONFIDENCE_LEVEL)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public Double getConfidenceLevel() {
- return confidenceLevel;
- }
-
- public void setConfidenceLevel(Double confidenceLevel) {
- this.confidenceLevel = confidenceLevel;
- }
-
- public RecommendationAttributes driver(ComponentRecommendation driver) {
- this.driver = driver;
- this.unparsed |= driver.unparsed;
- return this;
- }
-
- /**
- * Resource recommendation for a single Spark component (driver or executor). Contains estimation
- * data used to patch Spark job specs.
- *
- * @return driver
- */
- @JsonProperty(JSON_PROPERTY_DRIVER)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public ComponentRecommendation getDriver() {
- return driver;
- }
-
- public void setDriver(ComponentRecommendation driver) {
- this.driver = driver;
- if (driver != null) {
- this.unparsed |= driver.unparsed;
- }
- }
-
- public RecommendationAttributes executor(ComponentRecommendation executor) {
- this.executor = executor;
- this.unparsed |= executor.unparsed;
- return this;
- }
-
- /**
- * Resource recommendation for a single Spark component (driver or executor). Contains estimation
- * data used to patch Spark job specs.
- *
- * @return executor
- */
- @JsonProperty(JSON_PROPERTY_EXECUTOR)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public ComponentRecommendation getExecutor() {
- return executor;
- }
-
- public void setExecutor(ComponentRecommendation executor) {
- this.executor = executor;
- if (executor != null) {
- this.unparsed |= executor.unparsed;
- }
- }
-
- public RecommendationAttributes matchedParams(String matchedParams) {
- this.matchedParams = matchedParams;
- return this;
- }
-
- /**
- * Only returned by the v2 endpoint. The job parameters whose values the recommendation was
- * matched on, as parameter=value pairs joined by |. An empty string
- * means the service-wide (coarse) recommendation was used.
- *
- * @return matchedParams
- */
- @jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_MATCHED_PARAMS)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public String getMatchedParams() {
- return matchedParams;
- }
-
- public void setMatchedParams(String matchedParams) {
- this.matchedParams = matchedParams;
- }
-
- /**
- * 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 RecommendationAttributes
- */
- @JsonAnySetter
- public RecommendationAttributes 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 RecommendationAttributes object is equal to o. */
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- RecommendationAttributes recommendationAttributes = (RecommendationAttributes) o;
- return Objects.equals(this.confidenceLevel, recommendationAttributes.confidenceLevel)
- && Objects.equals(this.driver, recommendationAttributes.driver)
- && Objects.equals(this.executor, recommendationAttributes.executor)
- && Objects.equals(this.matchedParams, recommendationAttributes.matchedParams)
- && Objects.equals(this.additionalProperties, recommendationAttributes.additionalProperties);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(confidenceLevel, driver, executor, matchedParams, additionalProperties);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class RecommendationAttributes {\n");
- sb.append(" confidenceLevel: ").append(toIndentedString(confidenceLevel)).append("\n");
- sb.append(" driver: ").append(toIndentedString(driver)).append("\n");
- sb.append(" executor: ").append(toIndentedString(executor)).append("\n");
- sb.append(" matchedParams: ").append(toIndentedString(matchedParams)).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/RecommendationData.java b/src/main/java/com/datadog/api/client/v2/model/RecommendationData.java
deleted file mode 100644
index 63287b20def..00000000000
--- a/src/main/java/com/datadog/api/client/v2/model/RecommendationData.java
+++ /dev/null
@@ -1,216 +0,0 @@
-/*
- * 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;
-
-/**
- * JSON:API resource object for SPA Recommendation. Includes type, optional ID, and resource
- * attributes with structured recommendations.
- */
-@JsonPropertyOrder({
- RecommendationData.JSON_PROPERTY_ATTRIBUTES,
- RecommendationData.JSON_PROPERTY_ID,
- RecommendationData.JSON_PROPERTY_TYPE
-})
-@jakarta.annotation.Generated(
- value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
-public class RecommendationData {
- @JsonIgnore public boolean unparsed = false;
- public static final String JSON_PROPERTY_ATTRIBUTES = "attributes";
- private RecommendationAttributes attributes;
-
- public static final String JSON_PROPERTY_ID = "id";
- private String id;
-
- public static final String JSON_PROPERTY_TYPE = "type";
- private RecommendationType type = RecommendationType.RECOMMENDATION;
-
- public RecommendationData() {}
-
- @JsonCreator
- public RecommendationData(
- @JsonProperty(required = true, value = JSON_PROPERTY_ATTRIBUTES)
- RecommendationAttributes attributes,
- @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) RecommendationType type) {
- this.attributes = attributes;
- this.unparsed |= attributes.unparsed;
- this.type = type;
- this.unparsed |= !type.isValid();
- }
-
- public RecommendationData attributes(RecommendationAttributes attributes) {
- this.attributes = attributes;
- this.unparsed |= attributes.unparsed;
- return this;
- }
-
- /**
- * Attributes of the SPA Recommendation resource. Contains recommendations for both driver and
- * executor components.
- *
- * @return attributes
- */
- @JsonProperty(JSON_PROPERTY_ATTRIBUTES)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public RecommendationAttributes getAttributes() {
- return attributes;
- }
-
- public void setAttributes(RecommendationAttributes attributes) {
- this.attributes = attributes;
- if (attributes != null) {
- this.unparsed |= attributes.unparsed;
- }
- }
-
- public RecommendationData id(String id) {
- this.id = id;
- return this;
- }
-
- /**
- * Resource identifier for the recommendation. Optional in responses.
- *
- * @return id
- */
- @jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_ID)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public RecommendationData type(RecommendationType type) {
- this.type = type;
- this.unparsed |= !type.isValid();
- return this;
- }
-
- /**
- * JSON:API resource type for Spark Pod Autosizing recommendations. Identifies the Recommendation
- * resource returned by SPA.
- *
- * @return type
- */
- @JsonProperty(JSON_PROPERTY_TYPE)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public RecommendationType getType() {
- return type;
- }
-
- public void setType(RecommendationType 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 RecommendationData
- */
- @JsonAnySetter
- public RecommendationData 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 RecommendationData object is equal to o. */
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- RecommendationData recommendationData = (RecommendationData) o;
- return Objects.equals(this.attributes, recommendationData.attributes)
- && Objects.equals(this.id, recommendationData.id)
- && Objects.equals(this.type, recommendationData.type)
- && Objects.equals(this.additionalProperties, recommendationData.additionalProperties);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(attributes, id, type, additionalProperties);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class RecommendationData {\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/RecommendationDocument.java b/src/main/java/com/datadog/api/client/v2/model/RecommendationDocument.java
deleted file mode 100644
index e192bd9b229..00000000000
--- a/src/main/java/com/datadog/api/client/v2/model/RecommendationDocument.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * 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;
-
-/**
- * JSON:API document containing a single Recommendation resource. Returned by SPA when the Spark
- * Gateway requests recommendations.
- */
-@JsonPropertyOrder({RecommendationDocument.JSON_PROPERTY_DATA})
-@jakarta.annotation.Generated(
- value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
-public class RecommendationDocument {
- @JsonIgnore public boolean unparsed = false;
- public static final String JSON_PROPERTY_DATA = "data";
- private RecommendationData data;
-
- public RecommendationDocument() {}
-
- @JsonCreator
- public RecommendationDocument(
- @JsonProperty(required = true, value = JSON_PROPERTY_DATA) RecommendationData data) {
- this.data = data;
- this.unparsed |= data.unparsed;
- }
-
- public RecommendationDocument data(RecommendationData data) {
- this.data = data;
- this.unparsed |= data.unparsed;
- return this;
- }
-
- /**
- * JSON:API resource object for SPA Recommendation. Includes type, optional ID, and resource
- * attributes with structured recommendations.
- *
- * @return data
- */
- @JsonProperty(JSON_PROPERTY_DATA)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public RecommendationData getData() {
- return data;
- }
-
- public void setData(RecommendationData 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 RecommendationDocument
- */
- @JsonAnySetter
- public RecommendationDocument 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 RecommendationDocument object is equal to o. */
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- RecommendationDocument recommendationDocument = (RecommendationDocument) o;
- return Objects.equals(this.data, recommendationDocument.data)
- && Objects.equals(this.additionalProperties, recommendationDocument.additionalProperties);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(data, additionalProperties);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class RecommendationDocument {\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/RecommendationType.java b/src/main/java/com/datadog/api/client/v2/model/RecommendationType.java
deleted file mode 100644
index 1cd2370e9bf..00000000000
--- a/src/main/java/com/datadog/api/client/v2/model/RecommendationType.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * 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;
-
-/**
- * JSON:API resource type for Spark Pod Autosizing recommendations. Identifies the Recommendation
- * resource returned by SPA.
- */
-@JsonSerialize(using = RecommendationType.RecommendationTypeSerializer.class)
-public class RecommendationType extends ModelEnum {
-
- private static final Set allowedValues =
- new HashSet(Arrays.asList("recommendation"));
-
- public static final RecommendationType RECOMMENDATION = new RecommendationType("recommendation");
-
- RecommendationType(String value) {
- super(value, allowedValues);
- }
-
- public static class RecommendationTypeSerializer extends StdSerializer {
- public RecommendationTypeSerializer(Class t) {
- super(t);
- }
-
- public RecommendationTypeSerializer() {
- this(null);
- }
-
- @Override
- public void serialize(RecommendationType value, JsonGenerator jgen, SerializerProvider provider)
- throws IOException, JsonProcessingException {
- jgen.writeObject(value.value);
- }
- }
-
- @JsonCreator
- public static RecommendationType fromValue(String value) {
- return new RecommendationType(value);
- }
-}
diff --git a/src/main/java/com/datadog/api/client/v2/model/RecommendationV2RequestAttributes.java b/src/main/java/com/datadog/api/client/v2/model/RecommendationV2RequestAttributes.java
deleted file mode 100644
index d1181304fa3..00000000000
--- a/src/main/java/com/datadog/api/client/v2/model/RecommendationV2RequestAttributes.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * 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.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-
-/**
- * Attributes for requesting SPA recommendations by forwarding a Spark job's raw arguments instead
- * of a pre-computed shard.
- */
-@JsonPropertyOrder({RecommendationV2RequestAttributes.JSON_PROPERTY_ARGUMENTS})
-@jakarta.annotation.Generated(
- value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
-public class RecommendationV2RequestAttributes {
- @JsonIgnore public boolean unparsed = false;
- public static final String JSON_PROPERTY_ARGUMENTS = "arguments";
- private List arguments = new ArrayList<>();
-
- public RecommendationV2RequestAttributes() {}
-
- @JsonCreator
- public RecommendationV2RequestAttributes(
- @JsonProperty(required = true, value = JSON_PROPERTY_ARGUMENTS) List arguments) {
- this.arguments = arguments;
- }
-
- public RecommendationV2RequestAttributes arguments(List arguments) {
- this.arguments = arguments;
- return this;
- }
-
- public RecommendationV2RequestAttributes addArgumentsItem(String argumentsItem) {
- this.arguments.add(argumentsItem);
- return this;
- }
-
- /**
- * Raw, unfiltered Spark job arguments as submitted (for example, --org_id=2). SPA
- * determines which arguments are relevant for the given service.
- *
- * @return arguments
- */
- @JsonProperty(JSON_PROPERTY_ARGUMENTS)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public List getArguments() {
- return arguments;
- }
-
- public void setArguments(List arguments) {
- this.arguments = arguments;
- }
-
- /**
- * 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 RecommendationV2RequestAttributes
- */
- @JsonAnySetter
- public RecommendationV2RequestAttributes 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 RecommendationV2RequestAttributes object is equal to o. */
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- RecommendationV2RequestAttributes recommendationV2RequestAttributes =
- (RecommendationV2RequestAttributes) o;
- return Objects.equals(this.arguments, recommendationV2RequestAttributes.arguments)
- && Objects.equals(
- this.additionalProperties, recommendationV2RequestAttributes.additionalProperties);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(arguments, additionalProperties);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class RecommendationV2RequestAttributes {\n");
- sb.append(" arguments: ").append(toIndentedString(arguments)).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/RecommendationV2RequestBody.java b/src/main/java/com/datadog/api/client/v2/model/RecommendationV2RequestBody.java
deleted file mode 100644
index fbbbef54c4d..00000000000
--- a/src/main/java/com/datadog/api/client/v2/model/RecommendationV2RequestBody.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * 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;
-
-/**
- * Request body for retrieving SPA recommendations by forwarding a Spark job's raw arguments instead
- * of a pre-computed shard.
- */
-@JsonPropertyOrder({RecommendationV2RequestBody.JSON_PROPERTY_DATA})
-@jakarta.annotation.Generated(
- value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
-public class RecommendationV2RequestBody {
- @JsonIgnore public boolean unparsed = false;
- public static final String JSON_PROPERTY_DATA = "data";
- private RecommendationV2RequestData data;
-
- public RecommendationV2RequestBody() {}
-
- @JsonCreator
- public RecommendationV2RequestBody(
- @JsonProperty(required = true, value = JSON_PROPERTY_DATA) RecommendationV2RequestData data) {
- this.data = data;
- this.unparsed |= data.unparsed;
- }
-
- public RecommendationV2RequestBody data(RecommendationV2RequestData data) {
- this.data = data;
- this.unparsed |= data.unparsed;
- return this;
- }
-
- /**
- * JSON:API resource object for the SPA v2 recommendation request.
- *
- * @return data
- */
- @JsonProperty(JSON_PROPERTY_DATA)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public RecommendationV2RequestData getData() {
- return data;
- }
-
- public void setData(RecommendationV2RequestData 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 RecommendationV2RequestBody
- */
- @JsonAnySetter
- public RecommendationV2RequestBody 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 RecommendationV2RequestBody object is equal to o. */
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- RecommendationV2RequestBody recommendationV2RequestBody = (RecommendationV2RequestBody) o;
- return Objects.equals(this.data, recommendationV2RequestBody.data)
- && Objects.equals(
- this.additionalProperties, recommendationV2RequestBody.additionalProperties);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(data, additionalProperties);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class RecommendationV2RequestBody {\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/RecommendationV2RequestData.java b/src/main/java/com/datadog/api/client/v2/model/RecommendationV2RequestData.java
deleted file mode 100644
index 506a70a686f..00000000000
--- a/src/main/java/com/datadog/api/client/v2/model/RecommendationV2RequestData.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*
- * 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;
-
-/** JSON:API resource object for the SPA v2 recommendation request. */
-@JsonPropertyOrder({
- RecommendationV2RequestData.JSON_PROPERTY_ATTRIBUTES,
- RecommendationV2RequestData.JSON_PROPERTY_TYPE
-})
-@jakarta.annotation.Generated(
- value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
-public class RecommendationV2RequestData {
- @JsonIgnore public boolean unparsed = false;
- public static final String JSON_PROPERTY_ATTRIBUTES = "attributes";
- private RecommendationV2RequestAttributes attributes;
-
- public static final String JSON_PROPERTY_TYPE = "type";
- private RecommendationV2RequestType type = RecommendationV2RequestType.RECOMMENDATION_V2_REQUEST;
-
- public RecommendationV2RequestData() {}
-
- @JsonCreator
- public RecommendationV2RequestData(
- @JsonProperty(required = true, value = JSON_PROPERTY_ATTRIBUTES)
- RecommendationV2RequestAttributes attributes,
- @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) RecommendationV2RequestType type) {
- this.attributes = attributes;
- this.unparsed |= attributes.unparsed;
- this.type = type;
- this.unparsed |= !type.isValid();
- }
-
- public RecommendationV2RequestData attributes(RecommendationV2RequestAttributes attributes) {
- this.attributes = attributes;
- this.unparsed |= attributes.unparsed;
- return this;
- }
-
- /**
- * Attributes for requesting SPA recommendations by forwarding a Spark job's raw arguments instead
- * of a pre-computed shard.
- *
- * @return attributes
- */
- @JsonProperty(JSON_PROPERTY_ATTRIBUTES)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public RecommendationV2RequestAttributes getAttributes() {
- return attributes;
- }
-
- public void setAttributes(RecommendationV2RequestAttributes attributes) {
- this.attributes = attributes;
- if (attributes != null) {
- this.unparsed |= attributes.unparsed;
- }
- }
-
- public RecommendationV2RequestData type(RecommendationV2RequestType type) {
- this.type = type;
- this.unparsed |= !type.isValid();
- return this;
- }
-
- /**
- * JSON:API resource type for the SPA v2 recommendation request.
- *
- * @return type
- */
- @JsonProperty(JSON_PROPERTY_TYPE)
- @JsonInclude(value = JsonInclude.Include.ALWAYS)
- public RecommendationV2RequestType getType() {
- return type;
- }
-
- public void setType(RecommendationV2RequestType 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 RecommendationV2RequestData
- */
- @JsonAnySetter
- public RecommendationV2RequestData 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 RecommendationV2RequestData object is equal to o. */
- @Override
- public boolean equals(Object o) {
- if (this == o) {
- return true;
- }
- if (o == null || getClass() != o.getClass()) {
- return false;
- }
- RecommendationV2RequestData recommendationV2RequestData = (RecommendationV2RequestData) o;
- return Objects.equals(this.attributes, recommendationV2RequestData.attributes)
- && Objects.equals(this.type, recommendationV2RequestData.type)
- && Objects.equals(
- this.additionalProperties, recommendationV2RequestData.additionalProperties);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(attributes, type, additionalProperties);
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("class RecommendationV2RequestData {\n");
- sb.append(" attributes: ").append(toIndentedString(attributes)).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/RecommendationV2RequestType.java b/src/main/java/com/datadog/api/client/v2/model/RecommendationV2RequestType.java
deleted file mode 100644
index 7afe0c24e21..00000000000
--- a/src/main/java/com/datadog/api/client/v2/model/RecommendationV2RequestType.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * 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;
-
-/** JSON:API resource type for the SPA v2 recommendation request. */
-@JsonSerialize(using = RecommendationV2RequestType.RecommendationV2RequestTypeSerializer.class)
-public class RecommendationV2RequestType extends ModelEnum {
-
- private static final Set allowedValues =
- new HashSet(Arrays.asList("recommendation_v2_request"));
-
- public static final RecommendationV2RequestType RECOMMENDATION_V2_REQUEST =
- new RecommendationV2RequestType("recommendation_v2_request");
-
- RecommendationV2RequestType(String value) {
- super(value, allowedValues);
- }
-
- public static class RecommendationV2RequestTypeSerializer
- extends StdSerializer {
- public RecommendationV2RequestTypeSerializer(Class t) {
- super(t);
- }
-
- public RecommendationV2RequestTypeSerializer() {
- this(null);
- }
-
- @Override
- public void serialize(
- RecommendationV2RequestType value, JsonGenerator jgen, SerializerProvider provider)
- throws IOException, JsonProcessingException {
- jgen.writeObject(value.value);
- }
- }
-
- @JsonCreator
- public static RecommendationV2RequestType fromValue(String value) {
- return new RecommendationV2RequestType(value);
- }
-}
diff --git a/src/test/resources/com/datadog/api/client/v2/api/spa.feature b/src/test/resources/com/datadog/api/client/v2/api/spa.feature
deleted file mode 100644
index c175f767e9f..00000000000
--- a/src/test/resources/com/datadog/api/client/v2/api/spa.feature
+++ /dev/null
@@ -1,101 +0,0 @@
-@endpoint(spa) @endpoint(spa-v2)
-Feature: Spa
- SPA (Spark Pod Autosizing) API. Provides resource recommendations and cost
- insights to help optimize Spark job configurations.
-
- Background:
- Given an instance of "Spa" API
-
- @generated @skip @team:ddoghq/data-and-analytics-processing
- Scenario: Get SPA Recommendations returns "Bad Request" response
- Given operation "GetSPARecommendations" enabled
- And new "GetSPARecommendations" request
- And request contains "service" parameter from "REPLACE.ME"
- When the request is sent
- Then the response status is 400 Bad Request
-
- @generated @skip @team:ddoghq/data-and-analytics-processing
- Scenario: Get SPA Recommendations returns "OK" response
- Given operation "GetSPARecommendations" enabled
- And new "GetSPARecommendations" request
- And request contains "service" parameter from "REPLACE.ME"
- When the request is sent
- Then the response status is 200 OK
-
- @generated @skip @team:ddoghq/data-and-analytics-processing
- Scenario: Get SPA Recommendations with a shard parameter returns "Bad Request" response
- Given operation "GetSPARecommendationsWithShard" enabled
- And new "GetSPARecommendationsWithShard" request
- And request contains "shard" parameter from "REPLACE.ME"
- And request contains "service" parameter from "REPLACE.ME"
- When the request is sent
- Then the response status is 400 Bad Request
-
- @generated @skip @team:ddoghq/data-and-analytics-processing
- Scenario: Get SPA Recommendations with a shard parameter returns "OK" response
- Given operation "GetSPARecommendationsWithShard" enabled
- And new "GetSPARecommendationsWithShard" request
- And request contains "shard" parameter from "REPLACE.ME"
- And request contains "service" parameter from "REPLACE.ME"
- When the request is sent
- Then the response status is 200 OK
-
- @generated @skip @team:ddoghq/data-and-analytics-processing
- Scenario: Get SPA recommendations v2 returns "Bad Request" response
- Given operation "GetSPARecommendationsV2" enabled
- And new "GetSPARecommendationsV2" request
- And request contains "service" parameter from "REPLACE.ME"
- And body with value {"data": {"attributes": {"arguments": [""]}, "type": "recommendation_v2_request"}}
- When the request is sent
- Then the response status is 400 Bad Request
-
- @generated @skip @team:ddoghq/data-and-analytics-processing
- Scenario: Get SPA recommendations v2 returns "Not Found" response
- Given operation "GetSPARecommendationsV2" enabled
- And new "GetSPARecommendationsV2" request
- And request contains "service" parameter from "REPLACE.ME"
- And body with value {"data": {"attributes": {"arguments": [""]}, "type": "recommendation_v2_request"}}
- When the request is sent
- Then the response status is 404 Not Found
-
- @generated @skip @team:ddoghq/data-and-analytics-processing
- Scenario: Get SPA recommendations v2 returns "OK" response
- Given operation "GetSPARecommendationsV2" enabled
- And new "GetSPARecommendationsV2" request
- And request contains "service" parameter from "REPLACE.ME"
- And body with value {"data": {"attributes": {"arguments": [""]}, "type": "recommendation_v2_request"}}
- When the request is sent
- Then the response status is 200 OK
-
- @skip @team:ddoghq/data-and-analytics-processing
- Scenario: GetSPARecommendations returns a JSON:API Recommendation with driver and executor estimations
- Given new "GetSPARecommendations" request
- And a valid "apiKeyAuth" key in the system
- And a valid "appKeyAuth" key in the system
- And operation "GetSPARecommendations" enabled
- And request contains "service" parameter with value "dedupeactivecontexts"
- And request contains "shard" parameter with value "adp_dedupeactivecontexts_org2"
- When the request is sent
- Then the response status is 404 Not Found
- And the response "data.type" is equal to "recommendation"
- And the response "data" has field "attributes"
- And the response "data.attributes" has field "driver"
- And the response "data.attributes" has field "executor"
- And the response "data.attributes.driver" has field "estimation"
- And the response "data.attributes.driver.estimation" has field "cpu"
- And the response "data.attributes.driver.estimation" has field "memory"
- And the response "data.attributes.driver.estimation" has field "ephemeral_storage"
- And the response "data.attributes.driver.estimation" has field "heap"
- And the response "data.attributes.driver.estimation" has field "overhead"
- And the response "data.attributes.driver.estimation.cpu" has field "max"
- And the response "data.attributes.driver.estimation.cpu" has field "p95"
- And the response "data.attributes.driver.estimation.cpu" has field "p75"
- And the response "data.attributes.executor" has field "estimation"
- And the response "data.attributes.executor.estimation" has field "cpu"
- And the response "data.attributes.executor.estimation" has field "memory"
- And the response "data.attributes.executor.estimation" has field "ephemeral_storage"
- And the response "data.attributes.executor.estimation" has field "heap"
- And the response "data.attributes.executor.estimation" has field "overhead"
- And the response "data.attributes.executor.estimation.cpu" has field "max"
- And the response "data.attributes.executor.estimation.cpu" has field "p95"
- And the response "data.attributes.executor.estimation.cpu" has field "p75"
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 8b44c941575..e121a0e357f 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
@@ -9837,24 +9837,6 @@
"type": "unsafe"
}
},
- "GetSPARecommendationsV2": {
- "tag": "Spa",
- "undo": {
- "type": "safe"
- }
- },
- "GetSPARecommendations": {
- "tag": "Spa",
- "undo": {
- "type": "safe"
- }
- },
- "GetSPARecommendationsWithShard": {
- "tag": "Spa",
- "undo": {
- "type": "safe"
- }
- },
"AggregateSpans": {
"tag": "Spans",
"undo": {