AWS SDK for C++

AWS SDK for C++ Version 1.11.745

Loading...
Searching...
No Matches
ToolSpecification.h
1
6#pragma once
7#include <aws/bedrock-agent/BedrockAgent_EXPORTS.h>
8#include <aws/bedrock-agent/model/ToolInputSchema.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace BedrockAgent {
21namespace Model {
22
32 public:
33 AWS_BEDROCKAGENT_API ToolSpecification() = default;
36 AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::String& GetName() const { return m_name; }
43 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
44 template <typename NameT = Aws::String>
45 void SetName(NameT&& value) {
46 m_nameHasBeenSet = true;
47 m_name = std::forward<NameT>(value);
48 }
49 template <typename NameT = Aws::String>
51 SetName(std::forward<NameT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetDescription() const { return m_description; }
61 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
62 template <typename DescriptionT = Aws::String>
64 m_descriptionHasBeenSet = true;
65 m_description = std::forward<DescriptionT>(value);
66 }
67 template <typename DescriptionT = Aws::String>
69 SetDescription(std::forward<DescriptionT>(value));
70 return *this;
71 }
73
75
78 inline const ToolInputSchema& GetInputSchema() const { return m_inputSchema; }
79 inline bool InputSchemaHasBeenSet() const { return m_inputSchemaHasBeenSet; }
80 template <typename InputSchemaT = ToolInputSchema>
82 m_inputSchemaHasBeenSet = true;
83 m_inputSchema = std::forward<InputSchemaT>(value);
84 }
85 template <typename InputSchemaT = ToolInputSchema>
87 SetInputSchema(std::forward<InputSchemaT>(value));
88 return *this;
89 }
91 private:
92 Aws::String m_name;
93
94 Aws::String m_description;
95
96 ToolInputSchema m_inputSchema;
97 bool m_nameHasBeenSet = false;
98 bool m_descriptionHasBeenSet = false;
99 bool m_inputSchemaHasBeenSet = false;
100};
101
102} // namespace Model
103} // namespace BedrockAgent
104} // namespace Aws
ToolSpecification & WithName(NameT &&value)
AWS_BEDROCKAGENT_API ToolSpecification(Aws::Utils::Json::JsonView jsonValue)
AWS_BEDROCKAGENT_API ToolSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
ToolSpecification & WithDescription(DescriptionT &&value)
AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const
ToolSpecification & WithInputSchema(InputSchemaT &&value)
const ToolInputSchema & GetInputSchema() const
AWS_BEDROCKAGENT_API ToolSpecification()=default
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue