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

The configuration options to sort aggregated values.

See Also:

* AWS * API Reference

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

The column that determines the sort order of aggregated values.

*/ inline const ColumnIdentifier& GetColumn() const{ return m_column; } /** *

The column that determines the sort order of aggregated values.

*/ inline bool ColumnHasBeenSet() const { return m_columnHasBeenSet; } /** *

The column that determines the sort order of aggregated values.

*/ inline void SetColumn(const ColumnIdentifier& value) { m_columnHasBeenSet = true; m_column = value; } /** *

The column that determines the sort order of aggregated values.

*/ inline void SetColumn(ColumnIdentifier&& value) { m_columnHasBeenSet = true; m_column = std::move(value); } /** *

The column that determines the sort order of aggregated values.

*/ inline AggregationSortConfiguration& WithColumn(const ColumnIdentifier& value) { SetColumn(value); return *this;} /** *

The column that determines the sort order of aggregated values.

*/ inline AggregationSortConfiguration& WithColumn(ColumnIdentifier&& value) { SetColumn(std::move(value)); return *this;} /** *

The sort direction of values.

  • ASC: Sort in * ascending order.

  • DESC: Sort in descending * order.

*/ inline const SortDirection& GetSortDirection() const{ return m_sortDirection; } /** *

The sort direction of values.

  • ASC: Sort in * ascending order.

  • DESC: Sort in descending * order.

*/ inline bool SortDirectionHasBeenSet() const { return m_sortDirectionHasBeenSet; } /** *

The sort direction of values.

  • ASC: Sort in * ascending order.

  • DESC: Sort in descending * order.

*/ inline void SetSortDirection(const SortDirection& value) { m_sortDirectionHasBeenSet = true; m_sortDirection = value; } /** *

The sort direction of values.

  • ASC: Sort in * ascending order.

  • DESC: Sort in descending * order.

*/ inline void SetSortDirection(SortDirection&& value) { m_sortDirectionHasBeenSet = true; m_sortDirection = std::move(value); } /** *

The sort direction of values.

  • ASC: Sort in * ascending order.

  • DESC: Sort in descending * order.

*/ inline AggregationSortConfiguration& WithSortDirection(const SortDirection& value) { SetSortDirection(value); return *this;} /** *

The sort direction of values.

  • ASC: Sort in * ascending order.

  • DESC: Sort in descending * order.

*/ inline AggregationSortConfiguration& WithSortDirection(SortDirection&& value) { SetSortDirection(std::move(value)); return *this;} /** *

The function that aggregates the values in Column.

*/ inline const AggregationFunction& GetAggregationFunction() const{ return m_aggregationFunction; } /** *

The function that aggregates the values in Column.

*/ inline bool AggregationFunctionHasBeenSet() const { return m_aggregationFunctionHasBeenSet; } /** *

The function that aggregates the values in Column.

*/ inline void SetAggregationFunction(const AggregationFunction& value) { m_aggregationFunctionHasBeenSet = true; m_aggregationFunction = value; } /** *

The function that aggregates the values in Column.

*/ inline void SetAggregationFunction(AggregationFunction&& value) { m_aggregationFunctionHasBeenSet = true; m_aggregationFunction = std::move(value); } /** *

The function that aggregates the values in Column.

*/ inline AggregationSortConfiguration& WithAggregationFunction(const AggregationFunction& value) { SetAggregationFunction(value); return *this;} /** *

The function that aggregates the values in Column.

*/ inline AggregationSortConfiguration& WithAggregationFunction(AggregationFunction&& value) { SetAggregationFunction(std::move(value)); return *this;} private: ColumnIdentifier m_column; bool m_columnHasBeenSet = false; SortDirection m_sortDirection; bool m_sortDirectionHasBeenSet = false; AggregationFunction m_aggregationFunction; bool m_aggregationFunctionHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws