7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/lex/LexRuntimeService_EXPORTS.h>
10#include <aws/lex/model/DialogActionType.h>
11#include <aws/lex/model/FulfillmentState.h>
12#include <aws/lex/model/MessageFormatType.h>
23namespace LexRuntimeService {
59 m_typeHasBeenSet =
true;
74 template <
typename IntentNameT = Aws::String>
76 m_intentNameHasBeenSet =
true;
77 m_intentName = std::forward<IntentNameT>(value);
79 template <
typename IntentNameT = Aws::String>
92 template <
typename SlotsT = Aws::Map<Aws::String, Aws::String>>
94 m_slotsHasBeenSet =
true;
95 m_slots = std::forward<SlotsT>(value);
97 template <
typename SlotsT = Aws::Map<Aws::String, Aws::String>>
99 SetSlots(std::forward<SlotsT>(value));
102 template <
typename SlotsKeyT = Aws::String,
typename SlotsValueT = Aws::String>
104 m_slotsHasBeenSet =
true;
105 m_slots.emplace(std::forward<SlotsKeyT>(key), std::forward<SlotsValueT>(value));
116 template <
typename SlotToElicitT = Aws::String>
118 m_slotToElicitHasBeenSet =
true;
119 m_slotToElicit = std::forward<SlotToElicitT>(value);
121 template <
typename SlotToElicitT = Aws::String>
141 m_fulfillmentStateHasBeenSet =
true;
142 m_fulfillmentState = value;
157 template <
typename MessageT = Aws::String>
159 m_messageHasBeenSet =
true;
160 m_message = std::forward<MessageT>(value);
162 template <
typename MessageT = Aws::String>
183 m_messageFormatHasBeenSet =
true;
184 m_messageFormat = value;
205 bool m_typeHasBeenSet =
false;
206 bool m_intentNameHasBeenSet =
false;
207 bool m_slotsHasBeenSet =
false;
208 bool m_slotToElicitHasBeenSet =
false;
209 bool m_fulfillmentStateHasBeenSet =
false;
210 bool m_messageHasBeenSet =
false;
211 bool m_messageFormatHasBeenSet =
false;
DialogAction & WithSlotToElicit(SlotToElicitT &&value)
DialogAction & WithMessageFormat(MessageFormatType value)
DialogAction & AddSlots(SlotsKeyT &&key, SlotsValueT &&value)
AWS_LEXRUNTIMESERVICE_API DialogAction(Aws::Utils::Json::JsonView jsonValue)
void SetIntentName(IntentNameT &&value)
DialogAction & WithIntentName(IntentNameT &&value)
void SetMessageFormat(MessageFormatType value)
MessageFormatType GetMessageFormat() const
AWS_LEXRUNTIMESERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Map< Aws::String, Aws::String > & GetSlots() const
AWS_LEXRUNTIMESERVICE_API DialogAction & operator=(Aws::Utils::Json::JsonView jsonValue)
DialogAction & WithType(DialogActionType value)
bool FulfillmentStateHasBeenSet() const
const Aws::String & GetMessage() const
bool TypeHasBeenSet() const
bool IntentNameHasBeenSet() const
void SetFulfillmentState(FulfillmentState value)
void SetSlots(SlotsT &&value)
const Aws::String & GetIntentName() const
bool MessageFormatHasBeenSet() const
const Aws::String & GetSlotToElicit() const
void SetMessage(MessageT &&value)
DialogAction & WithFulfillmentState(FulfillmentState value)
void SetSlotToElicit(SlotToElicitT &&value)
FulfillmentState GetFulfillmentState() const
bool SlotsHasBeenSet() const
DialogAction & WithSlots(SlotsT &&value)
DialogAction & WithMessage(MessageT &&value)
void SetType(DialogActionType value)
bool SlotToElicitHasBeenSet() const
AWS_LEXRUNTIMESERVICE_API DialogAction()=default
bool MessageHasBeenSet() const
DialogActionType GetType() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue