/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace QuickSight { namespace Model { /** *

A structure that represents a data aggregation.

See Also:

AWS * API Reference

*/ class DataAggregation { public: AWS_QUICKSIGHT_API DataAggregation(); AWS_QUICKSIGHT_API DataAggregation(Aws::Utils::Json::JsonView jsonValue); AWS_QUICKSIGHT_API DataAggregation& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_QUICKSIGHT_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The level of time precision that is used to aggregate DateTime * values.

*/ inline const TopicTimeGranularity& GetDatasetRowDateGranularity() const{ return m_datasetRowDateGranularity; } /** *

The level of time precision that is used to aggregate DateTime * values.

*/ inline bool DatasetRowDateGranularityHasBeenSet() const { return m_datasetRowDateGranularityHasBeenSet; } /** *

The level of time precision that is used to aggregate DateTime * values.

*/ inline void SetDatasetRowDateGranularity(const TopicTimeGranularity& value) { m_datasetRowDateGranularityHasBeenSet = true; m_datasetRowDateGranularity = value; } /** *

The level of time precision that is used to aggregate DateTime * values.

*/ inline void SetDatasetRowDateGranularity(TopicTimeGranularity&& value) { m_datasetRowDateGranularityHasBeenSet = true; m_datasetRowDateGranularity = std::move(value); } /** *

The level of time precision that is used to aggregate DateTime * values.

*/ inline DataAggregation& WithDatasetRowDateGranularity(const TopicTimeGranularity& value) { SetDatasetRowDateGranularity(value); return *this;} /** *

The level of time precision that is used to aggregate DateTime * values.

*/ inline DataAggregation& WithDatasetRowDateGranularity(TopicTimeGranularity&& value) { SetDatasetRowDateGranularity(std::move(value)); return *this;} /** *

The column name for the default date.

*/ inline const Aws::String& GetDefaultDateColumnName() const{ return m_defaultDateColumnName; } /** *

The column name for the default date.

*/ inline bool DefaultDateColumnNameHasBeenSet() const { return m_defaultDateColumnNameHasBeenSet; } /** *

The column name for the default date.

*/ inline void SetDefaultDateColumnName(const Aws::String& value) { m_defaultDateColumnNameHasBeenSet = true; m_defaultDateColumnName = value; } /** *

The column name for the default date.

*/ inline void SetDefaultDateColumnName(Aws::String&& value) { m_defaultDateColumnNameHasBeenSet = true; m_defaultDateColumnName = std::move(value); } /** *

The column name for the default date.

*/ inline void SetDefaultDateColumnName(const char* value) { m_defaultDateColumnNameHasBeenSet = true; m_defaultDateColumnName.assign(value); } /** *

The column name for the default date.

*/ inline DataAggregation& WithDefaultDateColumnName(const Aws::String& value) { SetDefaultDateColumnName(value); return *this;} /** *

The column name for the default date.

*/ inline DataAggregation& WithDefaultDateColumnName(Aws::String&& value) { SetDefaultDateColumnName(std::move(value)); return *this;} /** *

The column name for the default date.

*/ inline DataAggregation& WithDefaultDateColumnName(const char* value) { SetDefaultDateColumnName(value); return *this;} private: TopicTimeGranularity m_datasetRowDateGranularity; bool m_datasetRowDateGranularityHasBeenSet = false; Aws::String m_defaultDateColumnName; bool m_defaultDateColumnNameHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws