All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.signalfx.HeatmapChartArgs Maven / Gradle / Ivy

// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.signalfx;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import com.pulumi.signalfx.inputs.HeatmapChartColorRangeArgs;
import com.pulumi.signalfx.inputs.HeatmapChartColorScaleArgs;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class HeatmapChartArgs extends com.pulumi.resources.ResourceArgs {

    public static final HeatmapChartArgs Empty = new HeatmapChartArgs();

    /**
     * Values and color for the color range. Example: `color_range : { min : 0, max : 100, color : "#0000ff" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
     * 
     */
    @Import(name="colorRange")
    private @Nullable Output colorRange;

    /**
     * @return Values and color for the color range. Example: `color_range : { min : 0, max : 100, color : "#0000ff" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
     * 
     */
    public Optional> colorRange() {
        return Optional.ofNullable(this.colorRange);
    }

    /**
     * One to N blocks, each defining a single color range including both the color to display for that range and the borders of the range. Example: `color_scale { gt = 60, color = "blue" } color_scale { lte = 60, color = "yellow" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
     * 
     */
    @Import(name="colorScales")
    private @Nullable Output> colorScales;

    /**
     * @return One to N blocks, each defining a single color range including both the color to display for that range and the borders of the range. Example: `color_scale { gt = 60, color = "blue" } color_scale { lte = 60, color = "yellow" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
     * 
     */
    public Optional>> colorScales() {
        return Optional.ofNullable(this.colorScales);
    }

    /**
     * Description of the chart.
     * 
     */
    @Import(name="description")
    private @Nullable Output description;

    /**
     * @return Description of the chart.
     * 
     */
    public Optional> description() {
        return Optional.ofNullable(this.description);
    }

    /**
     * If `false`, samples a subset of the output MTS, which improves UI performance. `false` by default.
     * 
     */
    @Import(name="disableSampling")
    private @Nullable Output disableSampling;

    /**
     * @return If `false`, samples a subset of the output MTS, which improves UI performance. `false` by default.
     * 
     */
    public Optional> disableSampling() {
        return Optional.ofNullable(this.disableSampling);
    }

    /**
     * Properties to group by in the heatmap (in nesting order).
     * 
     */
    @Import(name="groupBies")
    private @Nullable Output> groupBies;

    /**
     * @return Properties to group by in the heatmap (in nesting order).
     * 
     */
    public Optional>> groupBies() {
        return Optional.ofNullable(this.groupBies);
    }

    /**
     * Whether to show the timestamp in the chart. `false` by default.
     * 
     */
    @Import(name="hideTimestamp")
    private @Nullable Output hideTimestamp;

    /**
     * @return Whether to show the timestamp in the chart. `false` by default.
     * 
     */
    public Optional> hideTimestamp() {
        return Optional.ofNullable(this.hideTimestamp);
    }

    /**
     * How long (in seconds) to wait for late datapoints.
     * 
     */
    @Import(name="maxDelay")
    private @Nullable Output maxDelay;

    /**
     * @return How long (in seconds) to wait for late datapoints.
     * 
     */
    public Optional> maxDelay() {
        return Optional.ofNullable(this.maxDelay);
    }

    /**
     * The minimum resolution (in seconds) to use for computing the underlying program.
     * 
     */
    @Import(name="minimumResolution")
    private @Nullable Output minimumResolution;

    /**
     * @return The minimum resolution (in seconds) to use for computing the underlying program.
     * 
     */
    public Optional> minimumResolution() {
        return Optional.ofNullable(this.minimumResolution);
    }

    /**
     * Name of the chart.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return Name of the chart.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * Signalflow program text for the chart. More info at <https://dev.splunk.com/observability/docs/signalflow/>.
     * 
     */
    @Import(name="programText", required=true)
    private Output programText;

    /**
     * @return Signalflow program text for the chart. More info at <https://dev.splunk.com/observability/docs/signalflow/>.
     * 
     */
    public Output programText() {
        return this.programText;
    }

    /**
     * How often (in seconds) to refresh the values of the heatmap.
     * 
     */
    @Import(name="refreshInterval")
    private @Nullable Output refreshInterval;

    /**
     * @return How often (in seconds) to refresh the values of the heatmap.
     * 
     */
    public Optional> refreshInterval() {
        return Optional.ofNullable(this.refreshInterval);
    }

    /**
     * The property to use when sorting the elements. Must be prepended with `+` for ascending or `-` for descending (e.g. `-foo`).
     * 
     */
    @Import(name="sortBy")
    private @Nullable Output sortBy;

    /**
     * @return The property to use when sorting the elements. Must be prepended with `+` for ascending or `-` for descending (e.g. `-foo`).
     * 
     */
    public Optional> sortBy() {
        return Optional.ofNullable(this.sortBy);
    }

    /**
     * The property value is a string that denotes the geographic region associated with the time zone, (default UTC).
     * 
     */
    @Import(name="timezone")
    private @Nullable Output timezone;

    /**
     * @return The property value is a string that denotes the geographic region associated with the time zone, (default UTC).
     * 
     */
    public Optional> timezone() {
        return Optional.ofNullable(this.timezone);
    }

    /**
     * Must be `"Metric"` or `"Binary`". `"Metric"` by default.
     * 
     */
    @Import(name="unitPrefix")
    private @Nullable Output unitPrefix;

    /**
     * @return Must be `"Metric"` or `"Binary`". `"Metric"` by default.
     * 
     */
    public Optional> unitPrefix() {
        return Optional.ofNullable(this.unitPrefix);
    }

    private HeatmapChartArgs() {}

    private HeatmapChartArgs(HeatmapChartArgs $) {
        this.colorRange = $.colorRange;
        this.colorScales = $.colorScales;
        this.description = $.description;
        this.disableSampling = $.disableSampling;
        this.groupBies = $.groupBies;
        this.hideTimestamp = $.hideTimestamp;
        this.maxDelay = $.maxDelay;
        this.minimumResolution = $.minimumResolution;
        this.name = $.name;
        this.programText = $.programText;
        this.refreshInterval = $.refreshInterval;
        this.sortBy = $.sortBy;
        this.timezone = $.timezone;
        this.unitPrefix = $.unitPrefix;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(HeatmapChartArgs defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private HeatmapChartArgs $;

        public Builder() {
            $ = new HeatmapChartArgs();
        }

        public Builder(HeatmapChartArgs defaults) {
            $ = new HeatmapChartArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param colorRange Values and color for the color range. Example: `color_range : { min : 0, max : 100, color : "#0000ff" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
         * 
         * @return builder
         * 
         */
        public Builder colorRange(@Nullable Output colorRange) {
            $.colorRange = colorRange;
            return this;
        }

        /**
         * @param colorRange Values and color for the color range. Example: `color_range : { min : 0, max : 100, color : "#0000ff" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
         * 
         * @return builder
         * 
         */
        public Builder colorRange(HeatmapChartColorRangeArgs colorRange) {
            return colorRange(Output.of(colorRange));
        }

        /**
         * @param colorScales One to N blocks, each defining a single color range including both the color to display for that range and the borders of the range. Example: `color_scale { gt = 60, color = "blue" } color_scale { lte = 60, color = "yellow" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
         * 
         * @return builder
         * 
         */
        public Builder colorScales(@Nullable Output> colorScales) {
            $.colorScales = colorScales;
            return this;
        }

        /**
         * @param colorScales One to N blocks, each defining a single color range including both the color to display for that range and the borders of the range. Example: `color_scale { gt = 60, color = "blue" } color_scale { lte = 60, color = "yellow" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
         * 
         * @return builder
         * 
         */
        public Builder colorScales(List colorScales) {
            return colorScales(Output.of(colorScales));
        }

        /**
         * @param colorScales One to N blocks, each defining a single color range including both the color to display for that range and the borders of the range. Example: `color_scale { gt = 60, color = "blue" } color_scale { lte = 60, color = "yellow" }`. Look at this [link](https://docs.splunk.com/observability/en/data-visualization/charts/chart-options.html).
         * 
         * @return builder
         * 
         */
        public Builder colorScales(HeatmapChartColorScaleArgs... colorScales) {
            return colorScales(List.of(colorScales));
        }

        /**
         * @param description Description of the chart.
         * 
         * @return builder
         * 
         */
        public Builder description(@Nullable Output description) {
            $.description = description;
            return this;
        }

        /**
         * @param description Description of the chart.
         * 
         * @return builder
         * 
         */
        public Builder description(String description) {
            return description(Output.of(description));
        }

        /**
         * @param disableSampling If `false`, samples a subset of the output MTS, which improves UI performance. `false` by default.
         * 
         * @return builder
         * 
         */
        public Builder disableSampling(@Nullable Output disableSampling) {
            $.disableSampling = disableSampling;
            return this;
        }

        /**
         * @param disableSampling If `false`, samples a subset of the output MTS, which improves UI performance. `false` by default.
         * 
         * @return builder
         * 
         */
        public Builder disableSampling(Boolean disableSampling) {
            return disableSampling(Output.of(disableSampling));
        }

        /**
         * @param groupBies Properties to group by in the heatmap (in nesting order).
         * 
         * @return builder
         * 
         */
        public Builder groupBies(@Nullable Output> groupBies) {
            $.groupBies = groupBies;
            return this;
        }

        /**
         * @param groupBies Properties to group by in the heatmap (in nesting order).
         * 
         * @return builder
         * 
         */
        public Builder groupBies(List groupBies) {
            return groupBies(Output.of(groupBies));
        }

        /**
         * @param groupBies Properties to group by in the heatmap (in nesting order).
         * 
         * @return builder
         * 
         */
        public Builder groupBies(String... groupBies) {
            return groupBies(List.of(groupBies));
        }

        /**
         * @param hideTimestamp Whether to show the timestamp in the chart. `false` by default.
         * 
         * @return builder
         * 
         */
        public Builder hideTimestamp(@Nullable Output hideTimestamp) {
            $.hideTimestamp = hideTimestamp;
            return this;
        }

        /**
         * @param hideTimestamp Whether to show the timestamp in the chart. `false` by default.
         * 
         * @return builder
         * 
         */
        public Builder hideTimestamp(Boolean hideTimestamp) {
            return hideTimestamp(Output.of(hideTimestamp));
        }

        /**
         * @param maxDelay How long (in seconds) to wait for late datapoints.
         * 
         * @return builder
         * 
         */
        public Builder maxDelay(@Nullable Output maxDelay) {
            $.maxDelay = maxDelay;
            return this;
        }

        /**
         * @param maxDelay How long (in seconds) to wait for late datapoints.
         * 
         * @return builder
         * 
         */
        public Builder maxDelay(Integer maxDelay) {
            return maxDelay(Output.of(maxDelay));
        }

        /**
         * @param minimumResolution The minimum resolution (in seconds) to use for computing the underlying program.
         * 
         * @return builder
         * 
         */
        public Builder minimumResolution(@Nullable Output minimumResolution) {
            $.minimumResolution = minimumResolution;
            return this;
        }

        /**
         * @param minimumResolution The minimum resolution (in seconds) to use for computing the underlying program.
         * 
         * @return builder
         * 
         */
        public Builder minimumResolution(Integer minimumResolution) {
            return minimumResolution(Output.of(minimumResolution));
        }

        /**
         * @param name Name of the chart.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name Name of the chart.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param programText Signalflow program text for the chart. More info at <https://dev.splunk.com/observability/docs/signalflow/>.
         * 
         * @return builder
         * 
         */
        public Builder programText(Output programText) {
            $.programText = programText;
            return this;
        }

        /**
         * @param programText Signalflow program text for the chart. More info at <https://dev.splunk.com/observability/docs/signalflow/>.
         * 
         * @return builder
         * 
         */
        public Builder programText(String programText) {
            return programText(Output.of(programText));
        }

        /**
         * @param refreshInterval How often (in seconds) to refresh the values of the heatmap.
         * 
         * @return builder
         * 
         */
        public Builder refreshInterval(@Nullable Output refreshInterval) {
            $.refreshInterval = refreshInterval;
            return this;
        }

        /**
         * @param refreshInterval How often (in seconds) to refresh the values of the heatmap.
         * 
         * @return builder
         * 
         */
        public Builder refreshInterval(Integer refreshInterval) {
            return refreshInterval(Output.of(refreshInterval));
        }

        /**
         * @param sortBy The property to use when sorting the elements. Must be prepended with `+` for ascending or `-` for descending (e.g. `-foo`).
         * 
         * @return builder
         * 
         */
        public Builder sortBy(@Nullable Output sortBy) {
            $.sortBy = sortBy;
            return this;
        }

        /**
         * @param sortBy The property to use when sorting the elements. Must be prepended with `+` for ascending or `-` for descending (e.g. `-foo`).
         * 
         * @return builder
         * 
         */
        public Builder sortBy(String sortBy) {
            return sortBy(Output.of(sortBy));
        }

        /**
         * @param timezone The property value is a string that denotes the geographic region associated with the time zone, (default UTC).
         * 
         * @return builder
         * 
         */
        public Builder timezone(@Nullable Output timezone) {
            $.timezone = timezone;
            return this;
        }

        /**
         * @param timezone The property value is a string that denotes the geographic region associated with the time zone, (default UTC).
         * 
         * @return builder
         * 
         */
        public Builder timezone(String timezone) {
            return timezone(Output.of(timezone));
        }

        /**
         * @param unitPrefix Must be `"Metric"` or `"Binary`". `"Metric"` by default.
         * 
         * @return builder
         * 
         */
        public Builder unitPrefix(@Nullable Output unitPrefix) {
            $.unitPrefix = unitPrefix;
            return this;
        }

        /**
         * @param unitPrefix Must be `"Metric"` or `"Binary`". `"Metric"` by default.
         * 
         * @return builder
         * 
         */
        public Builder unitPrefix(String unitPrefix) {
            return unitPrefix(Output.of(unitPrefix));
        }

        public HeatmapChartArgs build() {
            if ($.programText == null) {
                throw new MissingRequiredPropertyException("HeatmapChartArgs", "programText");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy