Skip to content

Commit 4e8f892

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit b951844 of spec repo
1 parent 950e950 commit 4e8f892

File tree

176 files changed

+1436
-193
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

176 files changed

+1436
-193
lines changed

.generator/schemas/v1/openapi.yaml

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24156,6 +24156,7 @@ components:
2415624156
- $ref: "#/components/schemas/ToplistWidgetDefinition"
2415724157
- $ref: "#/components/schemas/TopologyMapWidgetDefinition"
2415824158
- $ref: "#/components/schemas/TreeMapWidgetDefinition"
24159+
- $ref: "#/components/schemas/WildcardWidgetDefinition"
2415924160
WidgetDisplayType:
2416024161
description: Type of display to use for the request.
2416124162
enum:
@@ -24927,6 +24928,81 @@ components:
2492724928
x-enum-varnames:
2492824929
- TIMESERIES
2492924930
- TOPLIST
24931+
WildcardWidgetDefinition:
24932+
description: >-
24933+
Custom visualization widget using Vega or Vega-Lite specifications. Combines standard Datadog data requests with a Vega or Vega-Lite JSON specification for flexible, custom visualizations.
24934+
properties:
24935+
custom_links:
24936+
description: List of custom links.
24937+
items:
24938+
$ref: "#/components/schemas/WidgetCustomLink"
24939+
type: array
24940+
requests:
24941+
description: List of data requests for the wildcard widget.
24942+
example: [{"formulas": ["formula": "query1"], "queries": [{"aggregator": "avg", "data_source": "metrics", "name": "query1", "query": "avg:system.cpu.user{*} by {env}"}], "response_format": "scalar"}]
24943+
items:
24944+
$ref: "#/components/schemas/WildcardWidgetRequest"
24945+
type: array
24946+
specification:
24947+
$ref: "#/components/schemas/WildcardWidgetSpecification"
24948+
time:
24949+
$ref: "#/components/schemas/WidgetTime"
24950+
title:
24951+
description: Title of the widget.
24952+
type: string
24953+
title_align:
24954+
$ref: "#/components/schemas/WidgetTextAlign"
24955+
title_size:
24956+
description: Size of the title.
24957+
type: string
24958+
type:
24959+
$ref: "#/components/schemas/WildcardWidgetDefinitionType"
24960+
required:
24961+
- type
24962+
- requests
24963+
- specification
24964+
type: object
24965+
WildcardWidgetDefinitionType:
24966+
default: wildcard
24967+
description: Type of the wildcard widget.
24968+
enum:
24969+
- wildcard
24970+
example: wildcard
24971+
type: string
24972+
x-enum-varnames:
24973+
- WILDCARD
24974+
WildcardWidgetRequest:
24975+
description: >-
24976+
Request object for the wildcard widget. Each variant represents a distinct data-fetching pattern: scalar formulas, timeseries formulas, list streams, and histograms.
24977+
oneOf:
24978+
- $ref: "#/components/schemas/TreeMapWidgetRequest"
24979+
- $ref: "#/components/schemas/TimeseriesWidgetRequest"
24980+
- $ref: "#/components/schemas/ListStreamWidgetRequest"
24981+
- $ref: "#/components/schemas/DistributionWidgetRequest"
24982+
WildcardWidgetSpecification:
24983+
description: >-
24984+
Vega or Vega-Lite specification for custom visualization rendering. See https://vega.github.io/vega-lite/ for the full grammar reference.
24985+
properties:
24986+
contents:
24987+
description: The Vega or Vega-Lite JSON specification object.
24988+
example: {"$schema": "https://vega.github.io/schema/vega-lite/v5.json", "data": {"name": "table1"}, "description": "A simple bar chart", "encoding": {"x": {"field": "env", "sort": "-y", "type": "nominal"}, "y": {"field": "query1", "type": "quantitative"}}, "mark": "bar"}
24989+
type: object
24990+
type:
24991+
$ref: "#/components/schemas/WildcardWidgetSpecificationType"
24992+
required:
24993+
- type
24994+
- contents
24995+
type: object
24996+
WildcardWidgetSpecificationType:
24997+
description: Type of specification used by the wildcard widget.
24998+
enum:
24999+
- vega
25000+
- vega-lite
25001+
example: vega-lite
25002+
type: string
25003+
x-enum-varnames:
25004+
- VEGA
25005+
- VEGA_LITE
2493025006
securitySchemes:
2493125007
AuthZ:
2493225008
description: This API uses OAuth 2 with the implicit grant flow.

src/main/java/com/datadog/api/client/v1/model/WidgetDefinition.java

Lines changed: 70 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1698,6 +1698,51 @@ public WidgetDefinition deserialize(JsonParser jp, DeserializationContext ctxt)
16981698
log.log(Level.FINER, "Input data does not match schema 'TreeMapWidgetDefinition'", e);
16991699
}
17001700

1701+
// deserialize WildcardWidgetDefinition
1702+
try {
1703+
boolean attemptParsing = true;
1704+
// ensure that we respect type coercion as set on the client ObjectMapper
1705+
if (WildcardWidgetDefinition.class.equals(Integer.class)
1706+
|| WildcardWidgetDefinition.class.equals(Long.class)
1707+
|| WildcardWidgetDefinition.class.equals(Float.class)
1708+
|| WildcardWidgetDefinition.class.equals(Double.class)
1709+
|| WildcardWidgetDefinition.class.equals(Boolean.class)
1710+
|| WildcardWidgetDefinition.class.equals(String.class)) {
1711+
attemptParsing = typeCoercion;
1712+
if (!attemptParsing) {
1713+
attemptParsing |=
1714+
((WildcardWidgetDefinition.class.equals(Integer.class)
1715+
|| WildcardWidgetDefinition.class.equals(Long.class))
1716+
&& token == JsonToken.VALUE_NUMBER_INT);
1717+
attemptParsing |=
1718+
((WildcardWidgetDefinition.class.equals(Float.class)
1719+
|| WildcardWidgetDefinition.class.equals(Double.class))
1720+
&& (token == JsonToken.VALUE_NUMBER_FLOAT
1721+
|| token == JsonToken.VALUE_NUMBER_INT));
1722+
attemptParsing |=
1723+
(WildcardWidgetDefinition.class.equals(Boolean.class)
1724+
&& (token == JsonToken.VALUE_FALSE || token == JsonToken.VALUE_TRUE));
1725+
attemptParsing |=
1726+
(WildcardWidgetDefinition.class.equals(String.class)
1727+
&& token == JsonToken.VALUE_STRING);
1728+
}
1729+
}
1730+
if (attemptParsing) {
1731+
tmp = tree.traverse(jp.getCodec()).readValueAs(WildcardWidgetDefinition.class);
1732+
// TODO: there is no validation against JSON schema constraints
1733+
// (min, max, enum, pattern...), this does not perform a strict JSON
1734+
// validation, which means the 'match' count may be higher than it should be.
1735+
if (!((WildcardWidgetDefinition) tmp).unparsed) {
1736+
deserialized = tmp;
1737+
match++;
1738+
}
1739+
log.log(Level.FINER, "Input data matches schema 'WildcardWidgetDefinition'");
1740+
}
1741+
} catch (Exception e) {
1742+
// deserialization failed, continue
1743+
log.log(Level.FINER, "Input data does not match schema 'WildcardWidgetDefinition'", e);
1744+
}
1745+
17011746
WidgetDefinition ret = new WidgetDefinition();
17021747
if (match == 1) {
17031748
ret.setActualInstance(deserialized);
@@ -1906,6 +1951,11 @@ public WidgetDefinition(TreeMapWidgetDefinition o) {
19061951
setActualInstance(o);
19071952
}
19081953

1954+
public WidgetDefinition(WildcardWidgetDefinition o) {
1955+
super("oneOf", Boolean.FALSE);
1956+
setActualInstance(o);
1957+
}
1958+
19091959
static {
19101960
schemas.put("AlertGraphWidgetDefinition", new GenericType<AlertGraphWidgetDefinition>() {});
19111961
schemas.put("AlertValueWidgetDefinition", new GenericType<AlertValueWidgetDefinition>() {});
@@ -1946,6 +1996,7 @@ public WidgetDefinition(TreeMapWidgetDefinition o) {
19461996
schemas.put("ToplistWidgetDefinition", new GenericType<ToplistWidgetDefinition>() {});
19471997
schemas.put("TopologyMapWidgetDefinition", new GenericType<TopologyMapWidgetDefinition>() {});
19481998
schemas.put("TreeMapWidgetDefinition", new GenericType<TreeMapWidgetDefinition>() {});
1999+
schemas.put("WildcardWidgetDefinition", new GenericType<WildcardWidgetDefinition>() {});
19492000
JSON.registerDescendants(WidgetDefinition.class, Collections.unmodifiableMap(schemas));
19502001
}
19512002

@@ -1968,7 +2019,7 @@ public Map<String, GenericType> getSchemas() {
19682019
* SankeyWidgetDefinition, ServiceMapWidgetDefinition, ServiceSummaryWidgetDefinition,
19692020
* SplitGraphWidgetDefinition, SunburstWidgetDefinition, TableWidgetDefinition,
19702021
* TimeseriesWidgetDefinition, ToplistWidgetDefinition, TopologyMapWidgetDefinition,
1971-
* TreeMapWidgetDefinition
2022+
* TreeMapWidgetDefinition, WildcardWidgetDefinition
19722023
*
19732024
* <p>It could be an instance of the 'oneOf' schemas. The oneOf child schemas may themselves be a
19742025
* composed schema (allOf, anyOf, oneOf).
@@ -2121,6 +2172,10 @@ public void setActualInstance(Object instance) {
21212172
super.setActualInstance(instance);
21222173
return;
21232174
}
2175+
if (JSON.isInstanceOf(WildcardWidgetDefinition.class, instance, new HashSet<Class<?>>())) {
2176+
super.setActualInstance(instance);
2177+
return;
2178+
}
21242179

21252180
if (JSON.isInstanceOf(UnparsedObject.class, instance, new HashSet<Class<?>>())) {
21262181
super.setActualInstance(instance);
@@ -2140,7 +2195,7 @@ public void setActualInstance(Object instance) {
21402195
+ " ServiceMapWidgetDefinition, ServiceSummaryWidgetDefinition,"
21412196
+ " SplitGraphWidgetDefinition, SunburstWidgetDefinition, TableWidgetDefinition,"
21422197
+ " TimeseriesWidgetDefinition, ToplistWidgetDefinition, TopologyMapWidgetDefinition,"
2143-
+ " TreeMapWidgetDefinition");
2198+
+ " TreeMapWidgetDefinition, WildcardWidgetDefinition");
21442199
}
21452200

21462201
/**
@@ -2156,7 +2211,7 @@ public void setActualInstance(Object instance) {
21562211
* ScatterPlotWidgetDefinition, SankeyWidgetDefinition, ServiceMapWidgetDefinition,
21572212
* ServiceSummaryWidgetDefinition, SplitGraphWidgetDefinition, SunburstWidgetDefinition,
21582213
* TableWidgetDefinition, TimeseriesWidgetDefinition, ToplistWidgetDefinition,
2159-
* TopologyMapWidgetDefinition, TreeMapWidgetDefinition
2214+
* TopologyMapWidgetDefinition, TreeMapWidgetDefinition, WildcardWidgetDefinition
21602215
*
21612216
* @return The actual instance (AlertGraphWidgetDefinition, AlertValueWidgetDefinition,
21622217
* BarChartWidgetDefinition, ChangeWidgetDefinition, CheckStatusWidgetDefinition,
@@ -2170,7 +2225,7 @@ public void setActualInstance(Object instance) {
21702225
* SankeyWidgetDefinition, ServiceMapWidgetDefinition, ServiceSummaryWidgetDefinition,
21712226
* SplitGraphWidgetDefinition, SunburstWidgetDefinition, TableWidgetDefinition,
21722227
* TimeseriesWidgetDefinition, ToplistWidgetDefinition, TopologyMapWidgetDefinition,
2173-
* TreeMapWidgetDefinition)
2228+
* TreeMapWidgetDefinition, WildcardWidgetDefinition)
21742229
*/
21752230
@Override
21762231
public Object getActualInstance() {
@@ -2575,4 +2630,15 @@ public TopologyMapWidgetDefinition getTopologyMapWidgetDefinition() throws Class
25752630
public TreeMapWidgetDefinition getTreeMapWidgetDefinition() throws ClassCastException {
25762631
return (TreeMapWidgetDefinition) super.getActualInstance();
25772632
}
2633+
2634+
/**
2635+
* Get the actual instance of `WildcardWidgetDefinition`. If the actual instance is not
2636+
* `WildcardWidgetDefinition`, the ClassCastException will be thrown.
2637+
*
2638+
* @return The actual instance of `WildcardWidgetDefinition`
2639+
* @throws ClassCastException if the instance is not `WildcardWidgetDefinition`
2640+
*/
2641+
public WildcardWidgetDefinition getWildcardWidgetDefinition() throws ClassCastException {
2642+
return (WildcardWidgetDefinition) super.getActualInstance();
2643+
}
25782644
}

0 commit comments

Comments
 (0)