/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace QuickSight { namespace Model { /** */ class UpdateTemplateRequest : public QuickSightRequest { public: AWS_QUICKSIGHT_API UpdateTemplateRequest(); // 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 "UpdateTemplate"; } AWS_QUICKSIGHT_API Aws::String SerializePayload() const override; /** *

The ID of the Amazon Web Services account that contains the template that * you're updating.

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

The ID of the Amazon Web Services account that contains the template that * you're updating.

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

The ID of the Amazon Web Services account that contains the template that * you're updating.

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

The ID of the Amazon Web Services account that contains the template that * you're updating.

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

The ID of the Amazon Web Services account that contains the template that * you're updating.

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

The ID of the Amazon Web Services account that contains the template that * you're updating.

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

The ID of the Amazon Web Services account that contains the template that * you're updating.

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

The ID of the Amazon Web Services account that contains the template that * you're updating.

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

The ID for the template.

*/ inline const Aws::String& GetTemplateId() const{ return m_templateId; } /** *

The ID for the template.

*/ inline bool TemplateIdHasBeenSet() const { return m_templateIdHasBeenSet; } /** *

The ID for the template.

*/ inline void SetTemplateId(const Aws::String& value) { m_templateIdHasBeenSet = true; m_templateId = value; } /** *

The ID for the template.

*/ inline void SetTemplateId(Aws::String&& value) { m_templateIdHasBeenSet = true; m_templateId = std::move(value); } /** *

The ID for the template.

*/ inline void SetTemplateId(const char* value) { m_templateIdHasBeenSet = true; m_templateId.assign(value); } /** *

The ID for the template.

*/ inline UpdateTemplateRequest& WithTemplateId(const Aws::String& value) { SetTemplateId(value); return *this;} /** *

The ID for the template.

*/ inline UpdateTemplateRequest& WithTemplateId(Aws::String&& value) { SetTemplateId(std::move(value)); return *this;} /** *

The ID for the template.

*/ inline UpdateTemplateRequest& WithTemplateId(const char* value) { SetTemplateId(value); return *this;} /** *

The entity that you are using as a source when you update the template. In * SourceEntity, you specify the type of object you're using as * source: SourceTemplate for a template or * SourceAnalysis for an analysis. Both of these require an Amazon * Resource Name (ARN). For SourceTemplate, specify the ARN of the * source template. For SourceAnalysis, specify the ARN of the source * analysis. The SourceTemplate ARN can contain any Amazon Web * Services account and any Amazon QuickSight-supported Amazon Web Services * Region;.

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

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

The entity that you are using as a source when you update the template. In * SourceEntity, you specify the type of object you're using as * source: SourceTemplate for a template or * SourceAnalysis for an analysis. Both of these require an Amazon * Resource Name (ARN). For SourceTemplate, specify the ARN of the * source template. For SourceAnalysis, specify the ARN of the source * analysis. The SourceTemplate ARN can contain any Amazon Web * Services account and any Amazon QuickSight-supported Amazon Web Services * Region;.

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

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

The entity that you are using as a source when you update the template. In * SourceEntity, you specify the type of object you're using as * source: SourceTemplate for a template or * SourceAnalysis for an analysis. Both of these require an Amazon * Resource Name (ARN). For SourceTemplate, specify the ARN of the * source template. For SourceAnalysis, specify the ARN of the source * analysis. The SourceTemplate ARN can contain any Amazon Web * Services account and any Amazon QuickSight-supported Amazon Web Services * Region;.

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

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

The entity that you are using as a source when you update the template. In * SourceEntity, you specify the type of object you're using as * source: SourceTemplate for a template or * SourceAnalysis for an analysis. Both of these require an Amazon * Resource Name (ARN). For SourceTemplate, specify the ARN of the * source template. For SourceAnalysis, specify the ARN of the source * analysis. The SourceTemplate ARN can contain any Amazon Web * Services account and any Amazon QuickSight-supported Amazon Web Services * Region;.

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

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

The entity that you are using as a source when you update the template. In * SourceEntity, you specify the type of object you're using as * source: SourceTemplate for a template or * SourceAnalysis for an analysis. Both of these require an Amazon * Resource Name (ARN). For SourceTemplate, specify the ARN of the * source template. For SourceAnalysis, specify the ARN of the source * analysis. The SourceTemplate ARN can contain any Amazon Web * Services account and any Amazon QuickSight-supported Amazon Web Services * Region;.

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

*/ inline UpdateTemplateRequest& WithSourceEntity(const TemplateSourceEntity& value) { SetSourceEntity(value); return *this;} /** *

The entity that you are using as a source when you update the template. In * SourceEntity, you specify the type of object you're using as * source: SourceTemplate for a template or * SourceAnalysis for an analysis. Both of these require an Amazon * Resource Name (ARN). For SourceTemplate, specify the ARN of the * source template. For SourceAnalysis, specify the ARN of the source * analysis. The SourceTemplate ARN can contain any Amazon Web * Services account and any Amazon QuickSight-supported Amazon Web Services * Region;.

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

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

A description of the current template version that is being updated. Every * time you call UpdateTemplate, you create a new version of the * template. Each version of the template maintains a description of the version in * the VersionDescription field.

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

A description of the current template version that is being updated. Every * time you call UpdateTemplate, you create a new version of the * template. Each version of the template maintains a description of the version in * the VersionDescription field.

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

A description of the current template version that is being updated. Every * time you call UpdateTemplate, you create a new version of the * template. Each version of the template maintains a description of the version in * the VersionDescription field.

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

A description of the current template version that is being updated. Every * time you call UpdateTemplate, you create a new version of the * template. Each version of the template maintains a description of the version in * the VersionDescription field.

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

A description of the current template version that is being updated. Every * time you call UpdateTemplate, you create a new version of the * template. Each version of the template maintains a description of the version in * the VersionDescription field.

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

A description of the current template version that is being updated. Every * time you call UpdateTemplate, you create a new version of the * template. Each version of the template maintains a description of the version in * the VersionDescription field.

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

A description of the current template version that is being updated. Every * time you call UpdateTemplate, you create a new version of the * template. Each version of the template maintains a description of the version in * the VersionDescription field.

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

A description of the current template version that is being updated. Every * time you call UpdateTemplate, you create a new version of the * template. Each version of the template maintains a description of the version in * the VersionDescription field.

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

The name for the template.

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

The name for the template.

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

The name for the template.

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

The name for the template.

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

The name for the template.

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

The name for the template.

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

The name for the template.

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

The name for the template.

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

The definition of a template.

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

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

The definition of a template.

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

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

The definition of a template.

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

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

The definition of a template.

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

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

The definition of a template.

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

*/ inline UpdateTemplateRequest& WithDefinition(const TemplateVersionDefinition& value) { SetDefinition(value); return *this;} /** *

The definition of a template.

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

*/ inline UpdateTemplateRequest& WithDefinition(TemplateVersionDefinition&& value) { SetDefinition(std::move(value)); return *this;} private: Aws::String m_awsAccountId; bool m_awsAccountIdHasBeenSet = false; Aws::String m_templateId; bool m_templateIdHasBeenSet = false; TemplateSourceEntity m_sourceEntity; bool m_sourceEntityHasBeenSet = false; Aws::String m_versionDescription; bool m_versionDescriptionHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; TemplateVersionDefinition m_definition; bool m_definitionHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws