AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
ToolConfiguration.h
1
6#pragma once
7#include <aws/core/utils/Document.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/qconnect/QConnect_EXPORTS.h>
11#include <aws/qconnect/model/Annotation.h>
12#include <aws/qconnect/model/ToolInstruction.h>
13#include <aws/qconnect/model/ToolOutputFilter.h>
14#include <aws/qconnect/model/ToolOverrideInputValue.h>
15#include <aws/qconnect/model/ToolType.h>
16#include <aws/qconnect/model/UserInteractionConfiguration.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Json {
23class JsonValue;
24class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace QConnect {
28namespace Model {
29
37 public:
38 AWS_QCONNECT_API ToolConfiguration() = default;
41 AWS_QCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
42
44
47 inline const Aws::String& GetToolName() const { return m_toolName; }
48 inline bool ToolNameHasBeenSet() const { return m_toolNameHasBeenSet; }
49 template <typename ToolNameT = Aws::String>
50 void SetToolName(ToolNameT&& value) {
51 m_toolNameHasBeenSet = true;
52 m_toolName = std::forward<ToolNameT>(value);
53 }
54 template <typename ToolNameT = Aws::String>
56 SetToolName(std::forward<ToolNameT>(value));
57 return *this;
58 }
60
62
65 inline ToolType GetToolType() const { return m_toolType; }
66 inline bool ToolTypeHasBeenSet() const { return m_toolTypeHasBeenSet; }
67 inline void SetToolType(ToolType value) {
68 m_toolTypeHasBeenSet = true;
69 m_toolType = value;
70 }
72 SetToolType(value);
73 return *this;
74 }
76
78
81 inline const Aws::String& GetTitle() const { return m_title; }
82 inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; }
83 template <typename TitleT = Aws::String>
84 void SetTitle(TitleT&& value) {
85 m_titleHasBeenSet = true;
86 m_title = std::forward<TitleT>(value);
87 }
88 template <typename TitleT = Aws::String>
90 SetTitle(std::forward<TitleT>(value));
91 return *this;
92 }
94
96
100 inline const Aws::String& GetToolId() const { return m_toolId; }
101 inline bool ToolIdHasBeenSet() const { return m_toolIdHasBeenSet; }
102 template <typename ToolIdT = Aws::String>
103 void SetToolId(ToolIdT&& value) {
104 m_toolIdHasBeenSet = true;
105 m_toolId = std::forward<ToolIdT>(value);
106 }
107 template <typename ToolIdT = Aws::String>
109 SetToolId(std::forward<ToolIdT>(value));
110 return *this;
111 }
113
115
118 inline const Aws::String& GetDescription() const { return m_description; }
119 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
120 template <typename DescriptionT = Aws::String>
122 m_descriptionHasBeenSet = true;
123 m_description = std::forward<DescriptionT>(value);
124 }
125 template <typename DescriptionT = Aws::String>
127 SetDescription(std::forward<DescriptionT>(value));
128 return *this;
129 }
131
133
136 inline const ToolInstruction& GetInstruction() const { return m_instruction; }
137 inline bool InstructionHasBeenSet() const { return m_instructionHasBeenSet; }
138 template <typename InstructionT = ToolInstruction>
140 m_instructionHasBeenSet = true;
141 m_instruction = std::forward<InstructionT>(value);
142 }
143 template <typename InstructionT = ToolInstruction>
145 SetInstruction(std::forward<InstructionT>(value));
146 return *this;
147 }
149
151
154 inline const Aws::Vector<ToolOverrideInputValue>& GetOverrideInputValues() const { return m_overrideInputValues; }
155 inline bool OverrideInputValuesHasBeenSet() const { return m_overrideInputValuesHasBeenSet; }
156 template <typename OverrideInputValuesT = Aws::Vector<ToolOverrideInputValue>>
158 m_overrideInputValuesHasBeenSet = true;
159 m_overrideInputValues = std::forward<OverrideInputValuesT>(value);
160 }
161 template <typename OverrideInputValuesT = Aws::Vector<ToolOverrideInputValue>>
163 SetOverrideInputValues(std::forward<OverrideInputValuesT>(value));
164 return *this;
165 }
166 template <typename OverrideInputValuesT = ToolOverrideInputValue>
168 m_overrideInputValuesHasBeenSet = true;
169 m_overrideInputValues.emplace_back(std::forward<OverrideInputValuesT>(value));
170 return *this;
171 }
173
175
178 inline const Aws::Vector<ToolOutputFilter>& GetOutputFilters() const { return m_outputFilters; }
179 inline bool OutputFiltersHasBeenSet() const { return m_outputFiltersHasBeenSet; }
180 template <typename OutputFiltersT = Aws::Vector<ToolOutputFilter>>
182 m_outputFiltersHasBeenSet = true;
183 m_outputFilters = std::forward<OutputFiltersT>(value);
184 }
185 template <typename OutputFiltersT = Aws::Vector<ToolOutputFilter>>
187 SetOutputFilters(std::forward<OutputFiltersT>(value));
188 return *this;
189 }
190 template <typename OutputFiltersT = ToolOutputFilter>
192 m_outputFiltersHasBeenSet = true;
193 m_outputFilters.emplace_back(std::forward<OutputFiltersT>(value));
194 return *this;
195 }
197
199
202 inline Aws::Utils::DocumentView GetInputSchema() const { return m_inputSchema; }
203 inline bool InputSchemaHasBeenSet() const { return m_inputSchemaHasBeenSet; }
204 template <typename InputSchemaT = Aws::Utils::Document>
206 m_inputSchemaHasBeenSet = true;
207 m_inputSchema = std::forward<InputSchemaT>(value);
208 }
209 template <typename InputSchemaT = Aws::Utils::Document>
211 SetInputSchema(std::forward<InputSchemaT>(value));
212 return *this;
213 }
215
217
220 inline Aws::Utils::DocumentView GetOutputSchema() const { return m_outputSchema; }
221 inline bool OutputSchemaHasBeenSet() const { return m_outputSchemaHasBeenSet; }
222 template <typename OutputSchemaT = Aws::Utils::Document>
224 m_outputSchemaHasBeenSet = true;
225 m_outputSchema = std::forward<OutputSchemaT>(value);
226 }
227 template <typename OutputSchemaT = Aws::Utils::Document>
229 SetOutputSchema(std::forward<OutputSchemaT>(value));
230 return *this;
231 }
233
235
238 inline const Annotation& GetAnnotations() const { return m_annotations; }
239 inline bool AnnotationsHasBeenSet() const { return m_annotationsHasBeenSet; }
240 template <typename AnnotationsT = Annotation>
242 m_annotationsHasBeenSet = true;
243 m_annotations = std::forward<AnnotationsT>(value);
244 }
245 template <typename AnnotationsT = Annotation>
247 SetAnnotations(std::forward<AnnotationsT>(value));
248 return *this;
249 }
251
253
256 inline const UserInteractionConfiguration& GetUserInteractionConfiguration() const { return m_userInteractionConfiguration; }
257 inline bool UserInteractionConfigurationHasBeenSet() const { return m_userInteractionConfigurationHasBeenSet; }
258 template <typename UserInteractionConfigurationT = UserInteractionConfiguration>
260 m_userInteractionConfigurationHasBeenSet = true;
261 m_userInteractionConfiguration = std::forward<UserInteractionConfigurationT>(value);
262 }
263 template <typename UserInteractionConfigurationT = UserInteractionConfiguration>
265 SetUserInteractionConfiguration(std::forward<UserInteractionConfigurationT>(value));
266 return *this;
267 }
269 private:
270 Aws::String m_toolName;
271
272 ToolType m_toolType{ToolType::NOT_SET};
273
274 Aws::String m_title;
275
276 Aws::String m_toolId;
277
278 Aws::String m_description;
279
280 ToolInstruction m_instruction;
281
282 Aws::Vector<ToolOverrideInputValue> m_overrideInputValues;
283
284 Aws::Vector<ToolOutputFilter> m_outputFilters;
285
286 Aws::Utils::Document m_inputSchema;
287
288 Aws::Utils::Document m_outputSchema;
289
290 Annotation m_annotations;
291
292 UserInteractionConfiguration m_userInteractionConfiguration;
293 bool m_toolNameHasBeenSet = false;
294 bool m_toolTypeHasBeenSet = false;
295 bool m_titleHasBeenSet = false;
296 bool m_toolIdHasBeenSet = false;
297 bool m_descriptionHasBeenSet = false;
298 bool m_instructionHasBeenSet = false;
299 bool m_overrideInputValuesHasBeenSet = false;
300 bool m_outputFiltersHasBeenSet = false;
301 bool m_inputSchemaHasBeenSet = false;
302 bool m_outputSchemaHasBeenSet = false;
303 bool m_annotationsHasBeenSet = false;
304 bool m_userInteractionConfigurationHasBeenSet = false;
305};
306
307} // namespace Model
308} // namespace QConnect
309} // namespace Aws
AWS_QCONNECT_API ToolConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
ToolConfiguration & WithUserInteractionConfiguration(UserInteractionConfigurationT &&value)
ToolConfiguration & WithToolType(ToolType value)
const Aws::Vector< ToolOutputFilter > & GetOutputFilters() const
const Aws::String & GetDescription() const
AWS_QCONNECT_API ToolConfiguration()=default
void SetOutputSchema(OutputSchemaT &&value)
ToolConfiguration & WithInstruction(InstructionT &&value)
void SetOverrideInputValues(OverrideInputValuesT &&value)
const Annotation & GetAnnotations() const
ToolConfiguration & WithAnnotations(AnnotationsT &&value)
Aws::Utils::DocumentView GetInputSchema() const
AWS_QCONNECT_API ToolConfiguration(Aws::Utils::Json::JsonView jsonValue)
void SetAnnotations(AnnotationsT &&value)
ToolConfiguration & WithToolId(ToolIdT &&value)
void SetDescription(DescriptionT &&value)
void SetOutputFilters(OutputFiltersT &&value)
AWS_QCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
ToolConfiguration & WithOutputFilters(OutputFiltersT &&value)
ToolConfiguration & WithOverrideInputValues(OverrideInputValuesT &&value)
ToolConfiguration & WithInputSchema(InputSchemaT &&value)
ToolConfiguration & WithToolName(ToolNameT &&value)
Aws::Utils::DocumentView GetOutputSchema() const
ToolConfiguration & AddOverrideInputValues(OverrideInputValuesT &&value)
ToolConfiguration & WithDescription(DescriptionT &&value)
const ToolInstruction & GetInstruction() const
void SetInputSchema(InputSchemaT &&value)
const UserInteractionConfiguration & GetUserInteractionConfiguration() const
const Aws::Vector< ToolOverrideInputValue > & GetOverrideInputValues() const
void SetUserInteractionConfiguration(UserInteractionConfigurationT &&value)
ToolConfiguration & AddOutputFilters(OutputFiltersT &&value)
const Aws::String & GetToolName() const
ToolConfiguration & WithOutputSchema(OutputSchemaT &&value)
ToolConfiguration & WithTitle(TitleT &&value)
void SetInstruction(InstructionT &&value)
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue