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

Contains the default values for a slot. Default values are used when Amazon * Lex hasn't determined a value for a slot.

See Also:

AWS * API Reference

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

The default values for a slot. You can specify more than one default. For * example, you can specify a default value to use from a matching context * variable, a session attribute, or a fixed value.

The default value chosen * is selected based on the order that you specify them in the list. For example, * if you specify a context variable and a fixed value in that order, Amazon Lex * uses the context variable if it is available, else it uses the fixed value.

*/ inline const Aws::Vector& GetDefaultValueList() const{ return m_defaultValueList; } /** *

The default values for a slot. You can specify more than one default. For * example, you can specify a default value to use from a matching context * variable, a session attribute, or a fixed value.

The default value chosen * is selected based on the order that you specify them in the list. For example, * if you specify a context variable and a fixed value in that order, Amazon Lex * uses the context variable if it is available, else it uses the fixed value.

*/ inline bool DefaultValueListHasBeenSet() const { return m_defaultValueListHasBeenSet; } /** *

The default values for a slot. You can specify more than one default. For * example, you can specify a default value to use from a matching context * variable, a session attribute, or a fixed value.

The default value chosen * is selected based on the order that you specify them in the list. For example, * if you specify a context variable and a fixed value in that order, Amazon Lex * uses the context variable if it is available, else it uses the fixed value.

*/ inline void SetDefaultValueList(const Aws::Vector& value) { m_defaultValueListHasBeenSet = true; m_defaultValueList = value; } /** *

The default values for a slot. You can specify more than one default. For * example, you can specify a default value to use from a matching context * variable, a session attribute, or a fixed value.

The default value chosen * is selected based on the order that you specify them in the list. For example, * if you specify a context variable and a fixed value in that order, Amazon Lex * uses the context variable if it is available, else it uses the fixed value.

*/ inline void SetDefaultValueList(Aws::Vector&& value) { m_defaultValueListHasBeenSet = true; m_defaultValueList = std::move(value); } /** *

The default values for a slot. You can specify more than one default. For * example, you can specify a default value to use from a matching context * variable, a session attribute, or a fixed value.

The default value chosen * is selected based on the order that you specify them in the list. For example, * if you specify a context variable and a fixed value in that order, Amazon Lex * uses the context variable if it is available, else it uses the fixed value.

*/ inline SlotDefaultValueSpec& WithDefaultValueList(const Aws::Vector& value) { SetDefaultValueList(value); return *this;} /** *

The default values for a slot. You can specify more than one default. For * example, you can specify a default value to use from a matching context * variable, a session attribute, or a fixed value.

The default value chosen * is selected based on the order that you specify them in the list. For example, * if you specify a context variable and a fixed value in that order, Amazon Lex * uses the context variable if it is available, else it uses the fixed value.

*/ inline SlotDefaultValueSpec& WithDefaultValueList(Aws::Vector&& value) { SetDefaultValueList(std::move(value)); return *this;} /** *

The default values for a slot. You can specify more than one default. For * example, you can specify a default value to use from a matching context * variable, a session attribute, or a fixed value.

The default value chosen * is selected based on the order that you specify them in the list. For example, * if you specify a context variable and a fixed value in that order, Amazon Lex * uses the context variable if it is available, else it uses the fixed value.

*/ inline SlotDefaultValueSpec& AddDefaultValueList(const SlotDefaultValue& value) { m_defaultValueListHasBeenSet = true; m_defaultValueList.push_back(value); return *this; } /** *

The default values for a slot. You can specify more than one default. For * example, you can specify a default value to use from a matching context * variable, a session attribute, or a fixed value.

The default value chosen * is selected based on the order that you specify them in the list. For example, * if you specify a context variable and a fixed value in that order, Amazon Lex * uses the context variable if it is available, else it uses the fixed value.

*/ inline SlotDefaultValueSpec& AddDefaultValueList(SlotDefaultValue&& value) { m_defaultValueListHasBeenSet = true; m_defaultValueList.push_back(std::move(value)); return *this; } private: Aws::Vector m_defaultValueList; bool m_defaultValueListHasBeenSet = false; }; } // namespace Model } // namespace LexModelBuildingService } // namespace Aws