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

com.pulumi.aws.quicksight.inputs.DashboardState Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

There is a newer version: 6.72.0
Show newest version
// *** 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.aws.quicksight.inputs;

import com.pulumi.aws.quicksight.inputs.DashboardDashboardPublishOptionsArgs;
import com.pulumi.aws.quicksight.inputs.DashboardParametersArgs;
import com.pulumi.aws.quicksight.inputs.DashboardPermissionArgs;
import com.pulumi.aws.quicksight.inputs.DashboardSourceEntityArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final DashboardState Empty = new DashboardState();

    /**
     * ARN of the dashboard.
     * 
     */
    @Import(name="arn")
    private @Nullable Output arn;

    /**
     * @return ARN of the dashboard.
     * 
     */
    public Optional> arn() {
        return Optional.ofNullable(this.arn);
    }

    /**
     * AWS account ID.
     * 
     */
    @Import(name="awsAccountId")
    private @Nullable Output awsAccountId;

    /**
     * @return AWS account ID.
     * 
     */
    public Optional> awsAccountId() {
        return Optional.ofNullable(this.awsAccountId);
    }

    /**
     * The time that the dashboard was created.
     * 
     */
    @Import(name="createdTime")
    private @Nullable Output createdTime;

    /**
     * @return The time that the dashboard was created.
     * 
     */
    public Optional> createdTime() {
        return Optional.ofNullable(this.createdTime);
    }

    /**
     * Identifier for the dashboard.
     * 
     */
    @Import(name="dashboardId")
    private @Nullable Output dashboardId;

    /**
     * @return Identifier for the dashboard.
     * 
     */
    public Optional> dashboardId() {
        return Optional.ofNullable(this.dashboardId);
    }

    /**
     * Options for publishing the dashboard. See dashboard_publish_options.
     * 
     */
    @Import(name="dashboardPublishOptions")
    private @Nullable Output dashboardPublishOptions;

    /**
     * @return Options for publishing the dashboard. See dashboard_publish_options.
     * 
     */
    public Optional> dashboardPublishOptions() {
        return Optional.ofNullable(this.dashboardPublishOptions);
    }

    @Import(name="lastPublishedTime")
    private @Nullable Output lastPublishedTime;

    public Optional> lastPublishedTime() {
        return Optional.ofNullable(this.lastPublishedTime);
    }

    /**
     * The time that the dashboard was last updated.
     * 
     */
    @Import(name="lastUpdatedTime")
    private @Nullable Output lastUpdatedTime;

    /**
     * @return The time that the dashboard was last updated.
     * 
     */
    public Optional> lastUpdatedTime() {
        return Optional.ofNullable(this.lastUpdatedTime);
    }

    /**
     * Display name for the dashboard.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return Display name for the dashboard.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * The parameters for the creation of the dashboard, which you want to use to override the default settings. A dashboard can have any type of parameters, and some parameters might accept multiple values. See parameters.
     * 
     */
    @Import(name="parameters")
    private @Nullable Output parameters;

    /**
     * @return The parameters for the creation of the dashboard, which you want to use to override the default settings. A dashboard can have any type of parameters, and some parameters might accept multiple values. See parameters.
     * 
     */
    public Optional> parameters() {
        return Optional.ofNullable(this.parameters);
    }

    /**
     * A set of resource permissions on the dashboard. Maximum of 64 items. See permissions.
     * 
     */
    @Import(name="permissions")
    private @Nullable Output> permissions;

    /**
     * @return A set of resource permissions on the dashboard. Maximum of 64 items. See permissions.
     * 
     */
    public Optional>> permissions() {
        return Optional.ofNullable(this.permissions);
    }

    /**
     * The entity that you are using as a source when you create the dashboard (template). Only one of `definition` or `source_entity` should be configured. See source_entity.
     * 
     */
    @Import(name="sourceEntity")
    private @Nullable Output sourceEntity;

    /**
     * @return The entity that you are using as a source when you create the dashboard (template). Only one of `definition` or `source_entity` should be configured. See source_entity.
     * 
     */
    public Optional> sourceEntity() {
        return Optional.ofNullable(this.sourceEntity);
    }

    /**
     * Amazon Resource Name (ARN) of a template that was used to create this dashboard.
     * 
     */
    @Import(name="sourceEntityArn")
    private @Nullable Output sourceEntityArn;

    /**
     * @return Amazon Resource Name (ARN) of a template that was used to create this dashboard.
     * 
     */
    public Optional> sourceEntityArn() {
        return Optional.ofNullable(this.sourceEntityArn);
    }

    /**
     * The dashboard creation status.
     * 
     */
    @Import(name="status")
    private @Nullable Output status;

    /**
     * @return The dashboard creation status.
     * 
     */
    public Optional> status() {
        return Optional.ofNullable(this.status);
    }

    /**
     * Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
     * 
     */
    @Import(name="tags")
    private @Nullable Output> tags;

    /**
     * @return Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
     * 
     */
    public Optional>> tags() {
        return Optional.ofNullable(this.tags);
    }

    /**
     * A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
     * 
     * @deprecated
     * Please use `tags` instead.
     * 
     */
    @Deprecated /* Please use `tags` instead. */
    @Import(name="tagsAll")
    private @Nullable Output> tagsAll;

    /**
     * @return A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
     * 
     * @deprecated
     * Please use `tags` instead.
     * 
     */
    @Deprecated /* Please use `tags` instead. */
    public Optional>> tagsAll() {
        return Optional.ofNullable(this.tagsAll);
    }

    /**
     * The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. The theme ARN must exist in the same AWS account where you create the dashboard.
     * 
     */
    @Import(name="themeArn")
    private @Nullable Output themeArn;

    /**
     * @return The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. The theme ARN must exist in the same AWS account where you create the dashboard.
     * 
     */
    public Optional> themeArn() {
        return Optional.ofNullable(this.themeArn);
    }

    /**
     * A description of the current dashboard version being created/updated.
     * 
     * The following arguments are optional:
     * 
     */
    @Import(name="versionDescription")
    private @Nullable Output versionDescription;

    /**
     * @return A description of the current dashboard version being created/updated.
     * 
     * The following arguments are optional:
     * 
     */
    public Optional> versionDescription() {
        return Optional.ofNullable(this.versionDescription);
    }

    /**
     * The version number of the dashboard version.
     * 
     */
    @Import(name="versionNumber")
    private @Nullable Output versionNumber;

    /**
     * @return The version number of the dashboard version.
     * 
     */
    public Optional> versionNumber() {
        return Optional.ofNullable(this.versionNumber);
    }

    private DashboardState() {}

    private DashboardState(DashboardState $) {
        this.arn = $.arn;
        this.awsAccountId = $.awsAccountId;
        this.createdTime = $.createdTime;
        this.dashboardId = $.dashboardId;
        this.dashboardPublishOptions = $.dashboardPublishOptions;
        this.lastPublishedTime = $.lastPublishedTime;
        this.lastUpdatedTime = $.lastUpdatedTime;
        this.name = $.name;
        this.parameters = $.parameters;
        this.permissions = $.permissions;
        this.sourceEntity = $.sourceEntity;
        this.sourceEntityArn = $.sourceEntityArn;
        this.status = $.status;
        this.tags = $.tags;
        this.tagsAll = $.tagsAll;
        this.themeArn = $.themeArn;
        this.versionDescription = $.versionDescription;
        this.versionNumber = $.versionNumber;
    }

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

    public static final class Builder {
        private DashboardState $;

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

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

        /**
         * @param arn ARN of the dashboard.
         * 
         * @return builder
         * 
         */
        public Builder arn(@Nullable Output arn) {
            $.arn = arn;
            return this;
        }

        /**
         * @param arn ARN of the dashboard.
         * 
         * @return builder
         * 
         */
        public Builder arn(String arn) {
            return arn(Output.of(arn));
        }

        /**
         * @param awsAccountId AWS account ID.
         * 
         * @return builder
         * 
         */
        public Builder awsAccountId(@Nullable Output awsAccountId) {
            $.awsAccountId = awsAccountId;
            return this;
        }

        /**
         * @param awsAccountId AWS account ID.
         * 
         * @return builder
         * 
         */
        public Builder awsAccountId(String awsAccountId) {
            return awsAccountId(Output.of(awsAccountId));
        }

        /**
         * @param createdTime The time that the dashboard was created.
         * 
         * @return builder
         * 
         */
        public Builder createdTime(@Nullable Output createdTime) {
            $.createdTime = createdTime;
            return this;
        }

        /**
         * @param createdTime The time that the dashboard was created.
         * 
         * @return builder
         * 
         */
        public Builder createdTime(String createdTime) {
            return createdTime(Output.of(createdTime));
        }

        /**
         * @param dashboardId Identifier for the dashboard.
         * 
         * @return builder
         * 
         */
        public Builder dashboardId(@Nullable Output dashboardId) {
            $.dashboardId = dashboardId;
            return this;
        }

        /**
         * @param dashboardId Identifier for the dashboard.
         * 
         * @return builder
         * 
         */
        public Builder dashboardId(String dashboardId) {
            return dashboardId(Output.of(dashboardId));
        }

        /**
         * @param dashboardPublishOptions Options for publishing the dashboard. See dashboard_publish_options.
         * 
         * @return builder
         * 
         */
        public Builder dashboardPublishOptions(@Nullable Output dashboardPublishOptions) {
            $.dashboardPublishOptions = dashboardPublishOptions;
            return this;
        }

        /**
         * @param dashboardPublishOptions Options for publishing the dashboard. See dashboard_publish_options.
         * 
         * @return builder
         * 
         */
        public Builder dashboardPublishOptions(DashboardDashboardPublishOptionsArgs dashboardPublishOptions) {
            return dashboardPublishOptions(Output.of(dashboardPublishOptions));
        }

        public Builder lastPublishedTime(@Nullable Output lastPublishedTime) {
            $.lastPublishedTime = lastPublishedTime;
            return this;
        }

        public Builder lastPublishedTime(String lastPublishedTime) {
            return lastPublishedTime(Output.of(lastPublishedTime));
        }

        /**
         * @param lastUpdatedTime The time that the dashboard was last updated.
         * 
         * @return builder
         * 
         */
        public Builder lastUpdatedTime(@Nullable Output lastUpdatedTime) {
            $.lastUpdatedTime = lastUpdatedTime;
            return this;
        }

        /**
         * @param lastUpdatedTime The time that the dashboard was last updated.
         * 
         * @return builder
         * 
         */
        public Builder lastUpdatedTime(String lastUpdatedTime) {
            return lastUpdatedTime(Output.of(lastUpdatedTime));
        }

        /**
         * @param name Display name for the dashboard.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name Display name for the dashboard.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param parameters The parameters for the creation of the dashboard, which you want to use to override the default settings. A dashboard can have any type of parameters, and some parameters might accept multiple values. See parameters.
         * 
         * @return builder
         * 
         */
        public Builder parameters(@Nullable Output parameters) {
            $.parameters = parameters;
            return this;
        }

        /**
         * @param parameters The parameters for the creation of the dashboard, which you want to use to override the default settings. A dashboard can have any type of parameters, and some parameters might accept multiple values. See parameters.
         * 
         * @return builder
         * 
         */
        public Builder parameters(DashboardParametersArgs parameters) {
            return parameters(Output.of(parameters));
        }

        /**
         * @param permissions A set of resource permissions on the dashboard. Maximum of 64 items. See permissions.
         * 
         * @return builder
         * 
         */
        public Builder permissions(@Nullable Output> permissions) {
            $.permissions = permissions;
            return this;
        }

        /**
         * @param permissions A set of resource permissions on the dashboard. Maximum of 64 items. See permissions.
         * 
         * @return builder
         * 
         */
        public Builder permissions(List permissions) {
            return permissions(Output.of(permissions));
        }

        /**
         * @param permissions A set of resource permissions on the dashboard. Maximum of 64 items. See permissions.
         * 
         * @return builder
         * 
         */
        public Builder permissions(DashboardPermissionArgs... permissions) {
            return permissions(List.of(permissions));
        }

        /**
         * @param sourceEntity The entity that you are using as a source when you create the dashboard (template). Only one of `definition` or `source_entity` should be configured. See source_entity.
         * 
         * @return builder
         * 
         */
        public Builder sourceEntity(@Nullable Output sourceEntity) {
            $.sourceEntity = sourceEntity;
            return this;
        }

        /**
         * @param sourceEntity The entity that you are using as a source when you create the dashboard (template). Only one of `definition` or `source_entity` should be configured. See source_entity.
         * 
         * @return builder
         * 
         */
        public Builder sourceEntity(DashboardSourceEntityArgs sourceEntity) {
            return sourceEntity(Output.of(sourceEntity));
        }

        /**
         * @param sourceEntityArn Amazon Resource Name (ARN) of a template that was used to create this dashboard.
         * 
         * @return builder
         * 
         */
        public Builder sourceEntityArn(@Nullable Output sourceEntityArn) {
            $.sourceEntityArn = sourceEntityArn;
            return this;
        }

        /**
         * @param sourceEntityArn Amazon Resource Name (ARN) of a template that was used to create this dashboard.
         * 
         * @return builder
         * 
         */
        public Builder sourceEntityArn(String sourceEntityArn) {
            return sourceEntityArn(Output.of(sourceEntityArn));
        }

        /**
         * @param status The dashboard creation status.
         * 
         * @return builder
         * 
         */
        public Builder status(@Nullable Output status) {
            $.status = status;
            return this;
        }

        /**
         * @param status The dashboard creation status.
         * 
         * @return builder
         * 
         */
        public Builder status(String status) {
            return status(Output.of(status));
        }

        /**
         * @param tags Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
         * 
         * @return builder
         * 
         */
        public Builder tags(@Nullable Output> tags) {
            $.tags = tags;
            return this;
        }

        /**
         * @param tags Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
         * 
         * @return builder
         * 
         */
        public Builder tags(Map tags) {
            return tags(Output.of(tags));
        }

        /**
         * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
         * 
         * @return builder
         * 
         * @deprecated
         * Please use `tags` instead.
         * 
         */
        @Deprecated /* Please use `tags` instead. */
        public Builder tagsAll(@Nullable Output> tagsAll) {
            $.tagsAll = tagsAll;
            return this;
        }

        /**
         * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
         * 
         * @return builder
         * 
         * @deprecated
         * Please use `tags` instead.
         * 
         */
        @Deprecated /* Please use `tags` instead. */
        public Builder tagsAll(Map tagsAll) {
            return tagsAll(Output.of(tagsAll));
        }

        /**
         * @param themeArn The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. The theme ARN must exist in the same AWS account where you create the dashboard.
         * 
         * @return builder
         * 
         */
        public Builder themeArn(@Nullable Output themeArn) {
            $.themeArn = themeArn;
            return this;
        }

        /**
         * @param themeArn The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. The theme ARN must exist in the same AWS account where you create the dashboard.
         * 
         * @return builder
         * 
         */
        public Builder themeArn(String themeArn) {
            return themeArn(Output.of(themeArn));
        }

        /**
         * @param versionDescription A description of the current dashboard version being created/updated.
         * 
         * The following arguments are optional:
         * 
         * @return builder
         * 
         */
        public Builder versionDescription(@Nullable Output versionDescription) {
            $.versionDescription = versionDescription;
            return this;
        }

        /**
         * @param versionDescription A description of the current dashboard version being created/updated.
         * 
         * The following arguments are optional:
         * 
         * @return builder
         * 
         */
        public Builder versionDescription(String versionDescription) {
            return versionDescription(Output.of(versionDescription));
        }

        /**
         * @param versionNumber The version number of the dashboard version.
         * 
         * @return builder
         * 
         */
        public Builder versionNumber(@Nullable Output versionNumber) {
            $.versionNumber = versionNumber;
            return this;
        }

        /**
         * @param versionNumber The version number of the dashboard version.
         * 
         * @return builder
         * 
         */
        public Builder versionNumber(Integer versionNumber) {
            return versionNumber(Output.of(versionNumber));
        }

        public DashboardState build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy