AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
PromptSpecification.h
1
6#pragma once
7#include <aws/lexv2-models/LexModelsV2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/lexv2-models/model/MessageSelectionStrategy.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/lexv2-models/model/MessageGroup.h>
12#include <aws/lexv2-models/model/PromptAttempt.h>
13#include <aws/lexv2-models/model/PromptAttemptSpecification.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace LexModelsV2
27{
28namespace Model
29{
30
38 {
39 public:
40 AWS_LEXMODELSV2_API PromptSpecification() = default;
41 AWS_LEXMODELSV2_API PromptSpecification(Aws::Utils::Json::JsonView jsonValue);
43 AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
51 inline const Aws::Vector<MessageGroup>& GetMessageGroups() const { return m_messageGroups; }
52 inline bool MessageGroupsHasBeenSet() const { return m_messageGroupsHasBeenSet; }
53 template<typename MessageGroupsT = Aws::Vector<MessageGroup>>
54 void SetMessageGroups(MessageGroupsT&& value) { m_messageGroupsHasBeenSet = true; m_messageGroups = std::forward<MessageGroupsT>(value); }
55 template<typename MessageGroupsT = Aws::Vector<MessageGroup>>
56 PromptSpecification& WithMessageGroups(MessageGroupsT&& value) { SetMessageGroups(std::forward<MessageGroupsT>(value)); return *this;}
57 template<typename MessageGroupsT = MessageGroup>
58 PromptSpecification& AddMessageGroups(MessageGroupsT&& value) { m_messageGroupsHasBeenSet = true; m_messageGroups.emplace_back(std::forward<MessageGroupsT>(value)); return *this; }
60
62
66 inline int GetMaxRetries() const { return m_maxRetries; }
67 inline bool MaxRetriesHasBeenSet() const { return m_maxRetriesHasBeenSet; }
68 inline void SetMaxRetries(int value) { m_maxRetriesHasBeenSet = true; m_maxRetries = value; }
69 inline PromptSpecification& WithMaxRetries(int value) { SetMaxRetries(value); return *this;}
71
73
76 inline bool GetAllowInterrupt() const { return m_allowInterrupt; }
77 inline bool AllowInterruptHasBeenSet() const { return m_allowInterruptHasBeenSet; }
78 inline void SetAllowInterrupt(bool value) { m_allowInterruptHasBeenSet = true; m_allowInterrupt = value; }
79 inline PromptSpecification& WithAllowInterrupt(bool value) { SetAllowInterrupt(value); return *this;}
81
83
86 inline MessageSelectionStrategy GetMessageSelectionStrategy() const { return m_messageSelectionStrategy; }
87 inline bool MessageSelectionStrategyHasBeenSet() const { return m_messageSelectionStrategyHasBeenSet; }
88 inline void SetMessageSelectionStrategy(MessageSelectionStrategy value) { m_messageSelectionStrategyHasBeenSet = true; m_messageSelectionStrategy = value; }
91
93
96 inline const Aws::Map<PromptAttempt, PromptAttemptSpecification>& GetPromptAttemptsSpecification() const { return m_promptAttemptsSpecification; }
97 inline bool PromptAttemptsSpecificationHasBeenSet() const { return m_promptAttemptsSpecificationHasBeenSet; }
98 template<typename PromptAttemptsSpecificationT = Aws::Map<PromptAttempt, PromptAttemptSpecification>>
99 void SetPromptAttemptsSpecification(PromptAttemptsSpecificationT&& value) { m_promptAttemptsSpecificationHasBeenSet = true; m_promptAttemptsSpecification = std::forward<PromptAttemptsSpecificationT>(value); }
100 template<typename PromptAttemptsSpecificationT = Aws::Map<PromptAttempt, PromptAttemptSpecification>>
101 PromptSpecification& WithPromptAttemptsSpecification(PromptAttemptsSpecificationT&& value) { SetPromptAttemptsSpecification(std::forward<PromptAttemptsSpecificationT>(value)); return *this;}
103 m_promptAttemptsSpecificationHasBeenSet = true; m_promptAttemptsSpecification.emplace(key, value); return *this;
104 }
106 private:
107
108 Aws::Vector<MessageGroup> m_messageGroups;
109 bool m_messageGroupsHasBeenSet = false;
110
111 int m_maxRetries{0};
112 bool m_maxRetriesHasBeenSet = false;
113
114 bool m_allowInterrupt{false};
115 bool m_allowInterruptHasBeenSet = false;
116
118 bool m_messageSelectionStrategyHasBeenSet = false;
119
120 Aws::Map<PromptAttempt, PromptAttemptSpecification> m_promptAttemptsSpecification;
121 bool m_promptAttemptsSpecificationHasBeenSet = false;
122 };
123
124} // namespace Model
125} // namespace LexModelsV2
126} // namespace Aws
PromptSpecification & WithMaxRetries(int value)
PromptSpecification & WithMessageGroups(MessageGroupsT &&value)
AWS_LEXMODELSV2_API PromptSpecification(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< MessageGroup > & GetMessageGroups() const
PromptSpecification & WithMessageSelectionStrategy(MessageSelectionStrategy value)
AWS_LEXMODELSV2_API PromptSpecification()=default
AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const
MessageSelectionStrategy GetMessageSelectionStrategy() const
const Aws::Map< PromptAttempt, PromptAttemptSpecification > & GetPromptAttemptsSpecification() const
PromptSpecification & AddMessageGroups(MessageGroupsT &&value)
void SetMessageSelectionStrategy(MessageSelectionStrategy value)
void SetPromptAttemptsSpecification(PromptAttemptsSpecificationT &&value)
PromptSpecification & AddPromptAttemptsSpecification(PromptAttempt key, PromptAttemptSpecification value)
AWS_LEXMODELSV2_API PromptSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
PromptSpecification & WithAllowInterrupt(bool value)
PromptSpecification & WithPromptAttemptsSpecification(PromptAttemptsSpecificationT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue