/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace QuickSight { namespace Model { /** */ class CreateDashboardRequest : public QuickSightRequest { public: AWS_QUICKSIGHT_API CreateDashboardRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateDashboard"; } AWS_QUICKSIGHT_API Aws::String SerializePayload() const override; /** *

The ID of the Amazon Web Services account where you want to create the * dashboard.

*/ inline const Aws::String& GetAwsAccountId() const{ return m_awsAccountId; } /** *

The ID of the Amazon Web Services account where you want to create the * dashboard.

*/ inline bool AwsAccountIdHasBeenSet() const { return m_awsAccountIdHasBeenSet; } /** *

The ID of the Amazon Web Services account where you want to create the * dashboard.

*/ inline void SetAwsAccountId(const Aws::String& value) { m_awsAccountIdHasBeenSet = true; m_awsAccountId = value; } /** *

The ID of the Amazon Web Services account where you want to create the * dashboard.

*/ inline void SetAwsAccountId(Aws::String&& value) { m_awsAccountIdHasBeenSet = true; m_awsAccountId = std::move(value); } /** *

The ID of the Amazon Web Services account where you want to create the * dashboard.

*/ inline void SetAwsAccountId(const char* value) { m_awsAccountIdHasBeenSet = true; m_awsAccountId.assign(value); } /** *

The ID of the Amazon Web Services account where you want to create the * dashboard.

*/ inline CreateDashboardRequest& WithAwsAccountId(const Aws::String& value) { SetAwsAccountId(value); return *this;} /** *

The ID of the Amazon Web Services account where you want to create the * dashboard.

*/ inline CreateDashboardRequest& WithAwsAccountId(Aws::String&& value) { SetAwsAccountId(std::move(value)); return *this;} /** *

The ID of the Amazon Web Services account where you want to create the * dashboard.

*/ inline CreateDashboardRequest& WithAwsAccountId(const char* value) { SetAwsAccountId(value); return *this;} /** *

The ID for the dashboard, also added to the IAM policy.

*/ inline const Aws::String& GetDashboardId() const{ return m_dashboardId; } /** *

The ID for the dashboard, also added to the IAM policy.

*/ inline bool DashboardIdHasBeenSet() const { return m_dashboardIdHasBeenSet; } /** *

The ID for the dashboard, also added to the IAM policy.

*/ inline void SetDashboardId(const Aws::String& value) { m_dashboardIdHasBeenSet = true; m_dashboardId = value; } /** *

The ID for the dashboard, also added to the IAM policy.

*/ inline void SetDashboardId(Aws::String&& value) { m_dashboardIdHasBeenSet = true; m_dashboardId = std::move(value); } /** *

The ID for the dashboard, also added to the IAM policy.

*/ inline void SetDashboardId(const char* value) { m_dashboardIdHasBeenSet = true; m_dashboardId.assign(value); } /** *

The ID for the dashboard, also added to the IAM policy.

*/ inline CreateDashboardRequest& WithDashboardId(const Aws::String& value) { SetDashboardId(value); return *this;} /** *

The ID for the dashboard, also added to the IAM policy.

*/ inline CreateDashboardRequest& WithDashboardId(Aws::String&& value) { SetDashboardId(std::move(value)); return *this;} /** *

The ID for the dashboard, also added to the IAM policy.

*/ inline CreateDashboardRequest& WithDashboardId(const char* value) { SetDashboardId(value); return *this;} /** *

The display name of the dashboard.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The display name of the dashboard.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The display name of the dashboard.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The display name of the dashboard.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The display name of the dashboard.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The display name of the dashboard.

*/ inline CreateDashboardRequest& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The display name of the dashboard.

*/ inline CreateDashboardRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The display name of the dashboard.

*/ inline CreateDashboardRequest& WithName(const char* value) { SetName(value); return *this;} /** *

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.

*/ inline const Parameters& GetParameters() const{ return m_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.

*/ inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; } /** *

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.

*/ inline void SetParameters(const Parameters& value) { m_parametersHasBeenSet = true; m_parameters = value; } /** *

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.

*/ inline void SetParameters(Parameters&& value) { m_parametersHasBeenSet = true; m_parameters = std::move(value); } /** *

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.

*/ inline CreateDashboardRequest& WithParameters(const Parameters& value) { SetParameters(value); return *this;} /** *

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.

*/ inline CreateDashboardRequest& WithParameters(Parameters&& value) { SetParameters(std::move(value)); return *this;} /** *

A structure that contains the permissions of the dashboard. You can use this * structure for granting permissions by providing a list of IAM action information * for each principal ARN.

To specify no permissions, omit the permissions * list.

*/ inline const Aws::Vector& GetPermissions() const{ return m_permissions; } /** *

A structure that contains the permissions of the dashboard. You can use this * structure for granting permissions by providing a list of IAM action information * for each principal ARN.

To specify no permissions, omit the permissions * list.

*/ inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; } /** *

A structure that contains the permissions of the dashboard. You can use this * structure for granting permissions by providing a list of IAM action information * for each principal ARN.

To specify no permissions, omit the permissions * list.

*/ inline void SetPermissions(const Aws::Vector& value) { m_permissionsHasBeenSet = true; m_permissions = value; } /** *

A structure that contains the permissions of the dashboard. You can use this * structure for granting permissions by providing a list of IAM action information * for each principal ARN.

To specify no permissions, omit the permissions * list.

*/ inline void SetPermissions(Aws::Vector&& value) { m_permissionsHasBeenSet = true; m_permissions = std::move(value); } /** *

A structure that contains the permissions of the dashboard. You can use this * structure for granting permissions by providing a list of IAM action information * for each principal ARN.

To specify no permissions, omit the permissions * list.

*/ inline CreateDashboardRequest& WithPermissions(const Aws::Vector& value) { SetPermissions(value); return *this;} /** *

A structure that contains the permissions of the dashboard. You can use this * structure for granting permissions by providing a list of IAM action information * for each principal ARN.

To specify no permissions, omit the permissions * list.

*/ inline CreateDashboardRequest& WithPermissions(Aws::Vector&& value) { SetPermissions(std::move(value)); return *this;} /** *

A structure that contains the permissions of the dashboard. You can use this * structure for granting permissions by providing a list of IAM action information * for each principal ARN.

To specify no permissions, omit the permissions * list.

*/ inline CreateDashboardRequest& AddPermissions(const ResourcePermission& value) { m_permissionsHasBeenSet = true; m_permissions.push_back(value); return *this; } /** *

A structure that contains the permissions of the dashboard. You can use this * structure for granting permissions by providing a list of IAM action information * for each principal ARN.

To specify no permissions, omit the permissions * list.

*/ inline CreateDashboardRequest& AddPermissions(ResourcePermission&& value) { m_permissionsHasBeenSet = true; m_permissions.push_back(std::move(value)); return *this; } /** *

The entity that you are using as a source when you create the dashboard. In * SourceEntity, you specify the type of object you're using as * source. You can only create a dashboard from a template, so you use a * SourceTemplate entity. If you need to create a dashboard from an * analysis, first convert the analysis to a template by using the CreateTemplate * API operation. For SourceTemplate, specify the Amazon * Resource Name (ARN) of the source template. The SourceTemplateARN * can contain any Amazon Web Services account and any Amazon QuickSight-supported * Amazon Web Services Region.

Use the DataSetReferences * entity within SourceTemplate to list the replacement datasets for * the placeholders listed in the original. The schema in each dataset must match * its placeholder.

Either a SourceEntity or a * Definition must be provided in order for the request to be * valid.

*/ inline const DashboardSourceEntity& GetSourceEntity() const{ return m_sourceEntity; } /** *

The entity that you are using as a source when you create the dashboard. In * SourceEntity, you specify the type of object you're using as * source. You can only create a dashboard from a template, so you use a * SourceTemplate entity. If you need to create a dashboard from an * analysis, first convert the analysis to a template by using the CreateTemplate * API operation. For SourceTemplate, specify the Amazon * Resource Name (ARN) of the source template. The SourceTemplateARN * can contain any Amazon Web Services account and any Amazon QuickSight-supported * Amazon Web Services Region.

Use the DataSetReferences * entity within SourceTemplate to list the replacement datasets for * the placeholders listed in the original. The schema in each dataset must match * its placeholder.

Either a SourceEntity or a * Definition must be provided in order for the request to be * valid.

*/ inline bool SourceEntityHasBeenSet() const { return m_sourceEntityHasBeenSet; } /** *

The entity that you are using as a source when you create the dashboard. In * SourceEntity, you specify the type of object you're using as * source. You can only create a dashboard from a template, so you use a * SourceTemplate entity. If you need to create a dashboard from an * analysis, first convert the analysis to a template by using the CreateTemplate * API operation. For SourceTemplate, specify the Amazon * Resource Name (ARN) of the source template. The SourceTemplateARN * can contain any Amazon Web Services account and any Amazon QuickSight-supported * Amazon Web Services Region.

Use the DataSetReferences * entity within SourceTemplate to list the replacement datasets for * the placeholders listed in the original. The schema in each dataset must match * its placeholder.

Either a SourceEntity or a * Definition must be provided in order for the request to be * valid.

*/ inline void SetSourceEntity(const DashboardSourceEntity& value) { m_sourceEntityHasBeenSet = true; m_sourceEntity = value; } /** *

The entity that you are using as a source when you create the dashboard. In * SourceEntity, you specify the type of object you're using as * source. You can only create a dashboard from a template, so you use a * SourceTemplate entity. If you need to create a dashboard from an * analysis, first convert the analysis to a template by using the CreateTemplate * API operation. For SourceTemplate, specify the Amazon * Resource Name (ARN) of the source template. The SourceTemplateARN * can contain any Amazon Web Services account and any Amazon QuickSight-supported * Amazon Web Services Region.

Use the DataSetReferences * entity within SourceTemplate to list the replacement datasets for * the placeholders listed in the original. The schema in each dataset must match * its placeholder.

Either a SourceEntity or a * Definition must be provided in order for the request to be * valid.

*/ inline void SetSourceEntity(DashboardSourceEntity&& value) { m_sourceEntityHasBeenSet = true; m_sourceEntity = std::move(value); } /** *

The entity that you are using as a source when you create the dashboard. In * SourceEntity, you specify the type of object you're using as * source. You can only create a dashboard from a template, so you use a * SourceTemplate entity. If you need to create a dashboard from an * analysis, first convert the analysis to a template by using the CreateTemplate * API operation. For SourceTemplate, specify the Amazon * Resource Name (ARN) of the source template. The SourceTemplateARN * can contain any Amazon Web Services account and any Amazon QuickSight-supported * Amazon Web Services Region.

Use the DataSetReferences * entity within SourceTemplate to list the replacement datasets for * the placeholders listed in the original. The schema in each dataset must match * its placeholder.

Either a SourceEntity or a * Definition must be provided in order for the request to be * valid.

*/ inline CreateDashboardRequest& WithSourceEntity(const DashboardSourceEntity& value) { SetSourceEntity(value); return *this;} /** *

The entity that you are using as a source when you create the dashboard. In * SourceEntity, you specify the type of object you're using as * source. You can only create a dashboard from a template, so you use a * SourceTemplate entity. If you need to create a dashboard from an * analysis, first convert the analysis to a template by using the CreateTemplate * API operation. For SourceTemplate, specify the Amazon * Resource Name (ARN) of the source template. The SourceTemplateARN * can contain any Amazon Web Services account and any Amazon QuickSight-supported * Amazon Web Services Region.

Use the DataSetReferences * entity within SourceTemplate to list the replacement datasets for * the placeholders listed in the original. The schema in each dataset must match * its placeholder.

Either a SourceEntity or a * Definition must be provided in order for the request to be * valid.

*/ inline CreateDashboardRequest& WithSourceEntity(DashboardSourceEntity&& value) { SetSourceEntity(std::move(value)); return *this;} /** *

Contains a map of the key-value pairs for the resource tag or tags assigned * to the dashboard.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

Contains a map of the key-value pairs for the resource tag or tags assigned * to the dashboard.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

Contains a map of the key-value pairs for the resource tag or tags assigned * to the dashboard.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

Contains a map of the key-value pairs for the resource tag or tags assigned * to the dashboard.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

Contains a map of the key-value pairs for the resource tag or tags assigned * to the dashboard.

*/ inline CreateDashboardRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

Contains a map of the key-value pairs for the resource tag or tags assigned * to the dashboard.

*/ inline CreateDashboardRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

Contains a map of the key-value pairs for the resource tag or tags assigned * to the dashboard.

*/ inline CreateDashboardRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

Contains a map of the key-value pairs for the resource tag or tags assigned * to the dashboard.

*/ inline CreateDashboardRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

A description for the first version of the dashboard being created.

*/ inline const Aws::String& GetVersionDescription() const{ return m_versionDescription; } /** *

A description for the first version of the dashboard being created.

*/ inline bool VersionDescriptionHasBeenSet() const { return m_versionDescriptionHasBeenSet; } /** *

A description for the first version of the dashboard being created.

*/ inline void SetVersionDescription(const Aws::String& value) { m_versionDescriptionHasBeenSet = true; m_versionDescription = value; } /** *

A description for the first version of the dashboard being created.

*/ inline void SetVersionDescription(Aws::String&& value) { m_versionDescriptionHasBeenSet = true; m_versionDescription = std::move(value); } /** *

A description for the first version of the dashboard being created.

*/ inline void SetVersionDescription(const char* value) { m_versionDescriptionHasBeenSet = true; m_versionDescription.assign(value); } /** *

A description for the first version of the dashboard being created.

*/ inline CreateDashboardRequest& WithVersionDescription(const Aws::String& value) { SetVersionDescription(value); return *this;} /** *

A description for the first version of the dashboard being created.

*/ inline CreateDashboardRequest& WithVersionDescription(Aws::String&& value) { SetVersionDescription(std::move(value)); return *this;} /** *

A description for the first version of the dashboard being created.

*/ inline CreateDashboardRequest& WithVersionDescription(const char* value) { SetVersionDescription(value); return *this;} /** *

Options for publishing the dashboard when you create it:

  • * AvailabilityStatus for AdHocFilteringOption - This * status can be either ENABLED or DISABLED. When this is * set to DISABLED, Amazon QuickSight disables the left filter pane on * the published dashboard, which can be used for ad hoc (one-time) filtering. This * option is ENABLED by default.

  • * AvailabilityStatus for ExportToCSVOption - This status * can be either ENABLED or DISABLED. The visual option * to export data to .CSV format isn't enabled when this is set to * DISABLED. This option is ENABLED by default.

    *
  • VisibilityState for SheetControlsOption * - This visibility state can be either COLLAPSED or * EXPANDED. This option is COLLAPSED by default.

    *
*/ inline const DashboardPublishOptions& GetDashboardPublishOptions() const{ return m_dashboardPublishOptions; } /** *

Options for publishing the dashboard when you create it:

  • * AvailabilityStatus for AdHocFilteringOption - This * status can be either ENABLED or DISABLED. When this is * set to DISABLED, Amazon QuickSight disables the left filter pane on * the published dashboard, which can be used for ad hoc (one-time) filtering. This * option is ENABLED by default.

  • * AvailabilityStatus for ExportToCSVOption - This status * can be either ENABLED or DISABLED. The visual option * to export data to .CSV format isn't enabled when this is set to * DISABLED. This option is ENABLED by default.

    *
  • VisibilityState for SheetControlsOption * - This visibility state can be either COLLAPSED or * EXPANDED. This option is COLLAPSED by default.

    *
*/ inline bool DashboardPublishOptionsHasBeenSet() const { return m_dashboardPublishOptionsHasBeenSet; } /** *

Options for publishing the dashboard when you create it:

  • * AvailabilityStatus for AdHocFilteringOption - This * status can be either ENABLED or DISABLED. When this is * set to DISABLED, Amazon QuickSight disables the left filter pane on * the published dashboard, which can be used for ad hoc (one-time) filtering. This * option is ENABLED by default.

  • * AvailabilityStatus for ExportToCSVOption - This status * can be either ENABLED or DISABLED. The visual option * to export data to .CSV format isn't enabled when this is set to * DISABLED. This option is ENABLED by default.

    *
  • VisibilityState for SheetControlsOption * - This visibility state can be either COLLAPSED or * EXPANDED. This option is COLLAPSED by default.

    *
*/ inline void SetDashboardPublishOptions(const DashboardPublishOptions& value) { m_dashboardPublishOptionsHasBeenSet = true; m_dashboardPublishOptions = value; } /** *

Options for publishing the dashboard when you create it:

  • * AvailabilityStatus for AdHocFilteringOption - This * status can be either ENABLED or DISABLED. When this is * set to DISABLED, Amazon QuickSight disables the left filter pane on * the published dashboard, which can be used for ad hoc (one-time) filtering. This * option is ENABLED by default.

  • * AvailabilityStatus for ExportToCSVOption - This status * can be either ENABLED or DISABLED. The visual option * to export data to .CSV format isn't enabled when this is set to * DISABLED. This option is ENABLED by default.

    *
  • VisibilityState for SheetControlsOption * - This visibility state can be either COLLAPSED or * EXPANDED. This option is COLLAPSED by default.

    *
*/ inline void SetDashboardPublishOptions(DashboardPublishOptions&& value) { m_dashboardPublishOptionsHasBeenSet = true; m_dashboardPublishOptions = std::move(value); } /** *

Options for publishing the dashboard when you create it:

  • * AvailabilityStatus for AdHocFilteringOption - This * status can be either ENABLED or DISABLED. When this is * set to DISABLED, Amazon QuickSight disables the left filter pane on * the published dashboard, which can be used for ad hoc (one-time) filtering. This * option is ENABLED by default.

  • * AvailabilityStatus for ExportToCSVOption - This status * can be either ENABLED or DISABLED. The visual option * to export data to .CSV format isn't enabled when this is set to * DISABLED. This option is ENABLED by default.

    *
  • VisibilityState for SheetControlsOption * - This visibility state can be either COLLAPSED or * EXPANDED. This option is COLLAPSED by default.

    *
*/ inline CreateDashboardRequest& WithDashboardPublishOptions(const DashboardPublishOptions& value) { SetDashboardPublishOptions(value); return *this;} /** *

Options for publishing the dashboard when you create it:

  • * AvailabilityStatus for AdHocFilteringOption - This * status can be either ENABLED or DISABLED. When this is * set to DISABLED, Amazon QuickSight disables the left filter pane on * the published dashboard, which can be used for ad hoc (one-time) filtering. This * option is ENABLED by default.

  • * AvailabilityStatus for ExportToCSVOption - This status * can be either ENABLED or DISABLED. The visual option * to export data to .CSV format isn't enabled when this is set to * DISABLED. This option is ENABLED by default.

    *
  • VisibilityState for SheetControlsOption * - This visibility state can be either COLLAPSED or * EXPANDED. This option is COLLAPSED by default.

    *
*/ inline CreateDashboardRequest& WithDashboardPublishOptions(DashboardPublishOptions&& value) { SetDashboardPublishOptions(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the theme that is being used for this * dashboard. If you add a value for this field, it overrides the value that is * used in the source entity. The theme ARN must exist in the same Amazon Web * Services account where you create the dashboard.

*/ inline const Aws::String& GetThemeArn() const{ return m_themeArn; } /** *

The Amazon Resource Name (ARN) of the theme that is being used for this * dashboard. If you add a value for this field, it overrides the value that is * used in the source entity. The theme ARN must exist in the same Amazon Web * Services account where you create the dashboard.

*/ inline bool ThemeArnHasBeenSet() const { return m_themeArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the theme that is being used for this * dashboard. If you add a value for this field, it overrides the value that is * used in the source entity. The theme ARN must exist in the same Amazon Web * Services account where you create the dashboard.

*/ inline void SetThemeArn(const Aws::String& value) { m_themeArnHasBeenSet = true; m_themeArn = value; } /** *

The Amazon Resource Name (ARN) of the theme that is being used for this * dashboard. If you add a value for this field, it overrides the value that is * used in the source entity. The theme ARN must exist in the same Amazon Web * Services account where you create the dashboard.

*/ inline void SetThemeArn(Aws::String&& value) { m_themeArnHasBeenSet = true; m_themeArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the theme that is being used for this * dashboard. If you add a value for this field, it overrides the value that is * used in the source entity. The theme ARN must exist in the same Amazon Web * Services account where you create the dashboard.

*/ inline void SetThemeArn(const char* value) { m_themeArnHasBeenSet = true; m_themeArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the theme that is being used for this * dashboard. If you add a value for this field, it overrides the value that is * used in the source entity. The theme ARN must exist in the same Amazon Web * Services account where you create the dashboard.

*/ inline CreateDashboardRequest& WithThemeArn(const Aws::String& value) { SetThemeArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the theme that is being used for this * dashboard. If you add a value for this field, it overrides the value that is * used in the source entity. The theme ARN must exist in the same Amazon Web * Services account where you create the dashboard.

*/ inline CreateDashboardRequest& WithThemeArn(Aws::String&& value) { SetThemeArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the theme that is being used for this * dashboard. If you add a value for this field, it overrides the value that is * used in the source entity. The theme ARN must exist in the same Amazon Web * Services account where you create the dashboard.

*/ inline CreateDashboardRequest& WithThemeArn(const char* value) { SetThemeArn(value); return *this;} /** *

The definition of a dashboard.

A definition is the data model of all * features in a Dashboard, Template, or Analysis.

Either a * SourceEntity or a Definition must be provided in order * for the request to be valid.

*/ inline const DashboardVersionDefinition& GetDefinition() const{ return m_definition; } /** *

The definition of a dashboard.

A definition is the data model of all * features in a Dashboard, Template, or Analysis.

Either a * SourceEntity or a Definition must be provided in order * for the request to be valid.

*/ inline bool DefinitionHasBeenSet() const { return m_definitionHasBeenSet; } /** *

The definition of a dashboard.

A definition is the data model of all * features in a Dashboard, Template, or Analysis.

Either a * SourceEntity or a Definition must be provided in order * for the request to be valid.

*/ inline void SetDefinition(const DashboardVersionDefinition& value) { m_definitionHasBeenSet = true; m_definition = value; } /** *

The definition of a dashboard.

A definition is the data model of all * features in a Dashboard, Template, or Analysis.

Either a * SourceEntity or a Definition must be provided in order * for the request to be valid.

*/ inline void SetDefinition(DashboardVersionDefinition&& value) { m_definitionHasBeenSet = true; m_definition = std::move(value); } /** *

The definition of a dashboard.

A definition is the data model of all * features in a Dashboard, Template, or Analysis.

Either a * SourceEntity or a Definition must be provided in order * for the request to be valid.

*/ inline CreateDashboardRequest& WithDefinition(const DashboardVersionDefinition& value) { SetDefinition(value); return *this;} /** *

The definition of a dashboard.

A definition is the data model of all * features in a Dashboard, Template, or Analysis.

Either a * SourceEntity or a Definition must be provided in order * for the request to be valid.

*/ inline CreateDashboardRequest& WithDefinition(DashboardVersionDefinition&& value) { SetDefinition(std::move(value)); return *this;} private: Aws::String m_awsAccountId; bool m_awsAccountIdHasBeenSet = false; Aws::String m_dashboardId; bool m_dashboardIdHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Parameters m_parameters; bool m_parametersHasBeenSet = false; Aws::Vector m_permissions; bool m_permissionsHasBeenSet = false; DashboardSourceEntity m_sourceEntity; bool m_sourceEntityHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; Aws::String m_versionDescription; bool m_versionDescriptionHasBeenSet = false; DashboardPublishOptions m_dashboardPublishOptions; bool m_dashboardPublishOptionsHasBeenSet = false; Aws::String m_themeArn; bool m_themeArnHasBeenSet = false; DashboardVersionDefinition m_definition; bool m_definitionHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws