/** * 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 LexModelsV2 { namespace Model { /** *

Specifies attributes for sorting a list of intents.

See Also:

* AWS * API Reference

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

The attribute to use to sort the list of intents.

*/ inline const IntentSortAttribute& GetAttribute() const{ return m_attribute; } /** *

The attribute to use to sort the list of intents.

*/ inline bool AttributeHasBeenSet() const { return m_attributeHasBeenSet; } /** *

The attribute to use to sort the list of intents.

*/ inline void SetAttribute(const IntentSortAttribute& value) { m_attributeHasBeenSet = true; m_attribute = value; } /** *

The attribute to use to sort the list of intents.

*/ inline void SetAttribute(IntentSortAttribute&& value) { m_attributeHasBeenSet = true; m_attribute = std::move(value); } /** *

The attribute to use to sort the list of intents.

*/ inline IntentSortBy& WithAttribute(const IntentSortAttribute& value) { SetAttribute(value); return *this;} /** *

The attribute to use to sort the list of intents.

*/ inline IntentSortBy& WithAttribute(IntentSortAttribute&& value) { SetAttribute(std::move(value)); return *this;} /** *

The order to sort the list. You can choose ascending or descending.

*/ inline const SortOrder& GetOrder() const{ return m_order; } /** *

The order to sort the list. You can choose ascending or descending.

*/ inline bool OrderHasBeenSet() const { return m_orderHasBeenSet; } /** *

The order to sort the list. You can choose ascending or descending.

*/ inline void SetOrder(const SortOrder& value) { m_orderHasBeenSet = true; m_order = value; } /** *

The order to sort the list. You can choose ascending or descending.

*/ inline void SetOrder(SortOrder&& value) { m_orderHasBeenSet = true; m_order = std::move(value); } /** *

The order to sort the list. You can choose ascending or descending.

*/ inline IntentSortBy& WithOrder(const SortOrder& value) { SetOrder(value); return *this;} /** *

The order to sort the list. You can choose ascending or descending.

*/ inline IntentSortBy& WithOrder(SortOrder&& value) { SetOrder(std::move(value)); return *this;} private: IntentSortAttribute m_attribute; bool m_attributeHasBeenSet = false; SortOrder m_order; bool m_orderHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws