Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .apigentools-info
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@
"spec_versions": {
"v1": {
"apigentools_version": "1.6.6",
"regenerated": "2025-02-20 18:33:34.000024",
"spec_repo_commit": "d3fcdb89"
"regenerated": "2025-02-21 08:00:41.502787",
"spec_repo_commit": "8f2d39c3"
},
"v2": {
"apigentools_version": "1.6.6",
"regenerated": "2025-02-20 18:33:34.015327",
"spec_repo_commit": "d3fcdb89"
"regenerated": "2025-02-21 08:00:41.517713",
"spec_repo_commit": "8f2d39c3"
}
}
}
35 changes: 35 additions & 0 deletions .generator/schemas/v1/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17396,11 +17396,13 @@ components:
enum:
- number
- bar
- trend
example: number
type: string
x-enum-varnames:
- NUMBER
- BAR
- TREND
TableWidgetDefinition:
description: The table visualization is available on timeboards and screenboards.
It displays columns of metrics grouped by tag key.
Expand Down Expand Up @@ -23089,6 +23091,8 @@ components:
type: string
cell_display_mode:
$ref: '#/components/schemas/TableWidgetCellDisplayMode'
cell_display_mode_options:
$ref: '#/components/schemas/WidgetFormulaCellDisplayModeOptions'
conditional_formats:
description: List of conditional formats.
items:
Expand All @@ -23107,6 +23111,37 @@ components:
required:
- formula
type: object
WidgetFormulaCellDisplayModeOptions:
description: Cell display mode options for the widget formula. (only if `cell_display_mode`
is set to `trend`).
properties:
trend_type:
$ref: '#/components/schemas/WidgetFormulaCellDisplayModeOptionsTrendType'
y_scale:
$ref: '#/components/schemas/WidgetFormulaCellDisplayModeOptionsYScale'
type: object
WidgetFormulaCellDisplayModeOptionsTrendType:
description: Trend type for the cell display mode options.
enum:
- area
- line
- bars
example: area
type: string
x-enum-varnames:
- AREA
- LINE
- BARS
WidgetFormulaCellDisplayModeOptionsYScale:
description: Y scale for the cell display mode options.
enum:
- shared
- independent
example: shared
type: string
x-enum-varnames:
- SHARED
- INDEPENDENT
WidgetFormulaLimit:
description: Options for limiting results returned.
properties:
Expand Down
115 changes: 115 additions & 0 deletions examples/v1/dashboards/CreateDashboard_1490099434.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
// Create a new dashboard with query_table widget and cell_display_mode is trend

import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.DashboardsApi;
import com.datadog.api.client.v1.model.Dashboard;
import com.datadog.api.client.v1.model.DashboardLayoutType;
import com.datadog.api.client.v1.model.FormulaAndFunctionMetricAggregation;
import com.datadog.api.client.v1.model.FormulaAndFunctionMetricDataSource;
import com.datadog.api.client.v1.model.FormulaAndFunctionMetricQueryDefinition;
import com.datadog.api.client.v1.model.FormulaAndFunctionQueryDefinition;
import com.datadog.api.client.v1.model.FormulaAndFunctionResponseFormat;
import com.datadog.api.client.v1.model.FormulaType;
import com.datadog.api.client.v1.model.TableWidgetCellDisplayMode;
import com.datadog.api.client.v1.model.TableWidgetDefinition;
import com.datadog.api.client.v1.model.TableWidgetDefinitionType;
import com.datadog.api.client.v1.model.TableWidgetHasSearchBar;
import com.datadog.api.client.v1.model.TableWidgetRequest;
import com.datadog.api.client.v1.model.Widget;
import com.datadog.api.client.v1.model.WidgetDefinition;
import com.datadog.api.client.v1.model.WidgetFormula;
import com.datadog.api.client.v1.model.WidgetFormulaCellDisplayModeOptions;
import com.datadog.api.client.v1.model.WidgetFormulaCellDisplayModeOptionsTrendType;
import com.datadog.api.client.v1.model.WidgetFormulaCellDisplayModeOptionsYScale;
import com.datadog.api.client.v1.model.WidgetFormulaSort;
import com.datadog.api.client.v1.model.WidgetLayout;
import com.datadog.api.client.v1.model.WidgetLegacyLiveSpan;
import com.datadog.api.client.v1.model.WidgetSort;
import com.datadog.api.client.v1.model.WidgetSortBy;
import com.datadog.api.client.v1.model.WidgetSortOrderBy;
import com.datadog.api.client.v1.model.WidgetTextAlign;
import com.datadog.api.client.v1.model.WidgetTime;
import java.util.Collections;

public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
DashboardsApi apiInstance = new DashboardsApi(defaultClient);

Dashboard body =
new Dashboard()
.title("Example-Dashboard")
.description("")
.widgets(
Collections.singletonList(
new Widget()
.layout(new WidgetLayout().x(0L).y(0L).width(54L).height(32L))
.definition(
new WidgetDefinition(
new TableWidgetDefinition()
.title("")
.titleSize("16")
.titleAlign(WidgetTextAlign.LEFT)
.time(new WidgetTime(new WidgetLegacyLiveSpan()))
.type(TableWidgetDefinitionType.QUERY_TABLE)
.requests(
Collections.singletonList(
new TableWidgetRequest()
.queries(
Collections.singletonList(
new FormulaAndFunctionQueryDefinition(
new FormulaAndFunctionMetricQueryDefinition()
.dataSource(
FormulaAndFunctionMetricDataSource
.METRICS)
.name("query1")
.query(
"avg:system.cpu.user{*} by"
+ " {host}")
.aggregator(
FormulaAndFunctionMetricAggregation
.AVG))))
.formulas(
Collections.singletonList(
new WidgetFormula()
.formula("query1")
.cellDisplayMode(
TableWidgetCellDisplayMode.TREND)
.cellDisplayModeOptions(
new WidgetFormulaCellDisplayModeOptions()
.trendType(
WidgetFormulaCellDisplayModeOptionsTrendType
.LINE)
.yScale(
WidgetFormulaCellDisplayModeOptionsYScale
.SHARED))))
.sort(
new WidgetSortBy()
.count(500L)
.orderBy(
Collections.singletonList(
new WidgetSortOrderBy(
new WidgetFormulaSort()
.type(FormulaType.FORMULA)
.index(0L)
.order(
WidgetSort
.DESCENDING)))))
.responseFormat(
FormulaAndFunctionResponseFormat.SCALAR)))
.hasSearchBar(TableWidgetHasSearchBar.AUTO)))))
.layoutType(DashboardLayoutType.FREE);

try {
Dashboard result = apiInstance.createDashboard(body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling DashboardsApi#createDashboard");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,11 @@
public class TableWidgetCellDisplayMode extends ModelEnum<String> {

private static final Set<String> allowedValues =
new HashSet<String>(Arrays.asList("number", "bar"));
new HashSet<String>(Arrays.asList("number", "bar", "trend"));

public static final TableWidgetCellDisplayMode NUMBER = new TableWidgetCellDisplayMode("number");
public static final TableWidgetCellDisplayMode BAR = new TableWidgetCellDisplayMode("bar");
public static final TableWidgetCellDisplayMode TREND = new TableWidgetCellDisplayMode("trend");

TableWidgetCellDisplayMode(String value) {
super(value, allowedValues);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
@JsonPropertyOrder({
WidgetFormula.JSON_PROPERTY_ALIAS,
WidgetFormula.JSON_PROPERTY_CELL_DISPLAY_MODE,
WidgetFormula.JSON_PROPERTY_CELL_DISPLAY_MODE_OPTIONS,
WidgetFormula.JSON_PROPERTY_CONDITIONAL_FORMATS,
WidgetFormula.JSON_PROPERTY_FORMULA,
WidgetFormula.JSON_PROPERTY_LIMIT,
Expand All @@ -39,6 +40,9 @@ public class WidgetFormula {
public static final String JSON_PROPERTY_CELL_DISPLAY_MODE = "cell_display_mode";
private TableWidgetCellDisplayMode cellDisplayMode;

public static final String JSON_PROPERTY_CELL_DISPLAY_MODE_OPTIONS = "cell_display_mode_options";
private WidgetFormulaCellDisplayModeOptions cellDisplayModeOptions;

public static final String JSON_PROPERTY_CONDITIONAL_FORMATS = "conditional_formats";
private List<WidgetConditionalFormat> conditionalFormats = null;

Expand Down Expand Up @@ -108,6 +112,31 @@ public void setCellDisplayMode(TableWidgetCellDisplayMode cellDisplayMode) {
this.cellDisplayMode = cellDisplayMode;
}

public WidgetFormula cellDisplayModeOptions(
WidgetFormulaCellDisplayModeOptions cellDisplayModeOptions) {
this.cellDisplayModeOptions = cellDisplayModeOptions;
this.unparsed |= cellDisplayModeOptions.unparsed;
return this;
}

/**
* Cell display mode options for the widget formula. (only if <code>cell_display_mode</code> is
* set to <code>trend</code>).
*
* @return cellDisplayModeOptions
*/
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_CELL_DISPLAY_MODE_OPTIONS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public WidgetFormulaCellDisplayModeOptions getCellDisplayModeOptions() {
return cellDisplayModeOptions;
}

public void setCellDisplayModeOptions(
WidgetFormulaCellDisplayModeOptions cellDisplayModeOptions) {
this.cellDisplayModeOptions = cellDisplayModeOptions;
}

public WidgetFormula conditionalFormats(List<WidgetConditionalFormat> conditionalFormats) {
this.conditionalFormats = conditionalFormats;
for (WidgetConditionalFormat item : conditionalFormats) {
Expand Down Expand Up @@ -285,6 +314,7 @@ public boolean equals(Object o) {
WidgetFormula widgetFormula = (WidgetFormula) o;
return Objects.equals(this.alias, widgetFormula.alias)
&& Objects.equals(this.cellDisplayMode, widgetFormula.cellDisplayMode)
&& Objects.equals(this.cellDisplayModeOptions, widgetFormula.cellDisplayModeOptions)
&& Objects.equals(this.conditionalFormats, widgetFormula.conditionalFormats)
&& Objects.equals(this.formula, widgetFormula.formula)
&& Objects.equals(this.limit, widgetFormula.limit)
Expand All @@ -298,6 +328,7 @@ public int hashCode() {
return Objects.hash(
alias,
cellDisplayMode,
cellDisplayModeOptions,
conditionalFormats,
formula,
limit,
Expand All @@ -312,6 +343,9 @@ public String toString() {
sb.append("class WidgetFormula {\n");
sb.append(" alias: ").append(toIndentedString(alias)).append("\n");
sb.append(" cellDisplayMode: ").append(toIndentedString(cellDisplayMode)).append("\n");
sb.append(" cellDisplayModeOptions: ")
.append(toIndentedString(cellDisplayModeOptions))
.append("\n");
sb.append(" conditionalFormats: ").append(toIndentedString(conditionalFormats)).append("\n");
sb.append(" formula: ").append(toIndentedString(formula)).append("\n");
sb.append(" limit: ").append(toIndentedString(limit)).append("\n");
Expand Down
Loading