AWS SDK for C++

AWS SDK for C++ Version 1.11.890

Loading...
Searching...
No Matches
KnowledgeBaseConfiguration.h
1
6#pragma once
7#include <aws/bedrock-agent/BedrockAgent_EXPORTS.h>
8#include <aws/bedrock-agent/model/KendraKnowledgeBaseConfiguration.h>
9#include <aws/bedrock-agent/model/KnowledgeBaseType.h>
10#include <aws/bedrock-agent/model/ManagedKnowledgeBaseConfiguration.h>
11#include <aws/bedrock-agent/model/SqlKnowledgeBaseConfiguration.h>
12#include <aws/bedrock-agent/model/VectorKnowledgeBaseConfiguration.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace BedrockAgent {
24namespace Model {
25
33 public:
34 AWS_BEDROCKAGENT_API KnowledgeBaseConfiguration() = default;
37 AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
44 inline KnowledgeBaseType GetType() const { return m_type; }
45 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
46 inline void SetType(KnowledgeBaseType value) {
47 m_typeHasBeenSet = true;
48 m_type = value;
49 }
51 SetType(value);
52 return *this;
53 }
55
57
61 inline const VectorKnowledgeBaseConfiguration& GetVectorKnowledgeBaseConfiguration() const { return m_vectorKnowledgeBaseConfiguration; }
62 inline bool VectorKnowledgeBaseConfigurationHasBeenSet() const { return m_vectorKnowledgeBaseConfigurationHasBeenSet; }
63 template <typename VectorKnowledgeBaseConfigurationT = VectorKnowledgeBaseConfiguration>
65 m_vectorKnowledgeBaseConfigurationHasBeenSet = true;
66 m_vectorKnowledgeBaseConfiguration = std::forward<VectorKnowledgeBaseConfigurationT>(value);
67 }
68 template <typename VectorKnowledgeBaseConfigurationT = VectorKnowledgeBaseConfiguration>
70 SetVectorKnowledgeBaseConfiguration(std::forward<VectorKnowledgeBaseConfigurationT>(value));
71 return *this;
72 }
74
76
82 return m_managedKnowledgeBaseConfiguration;
83 }
84 inline bool ManagedKnowledgeBaseConfigurationHasBeenSet() const { return m_managedKnowledgeBaseConfigurationHasBeenSet; }
85 template <typename ManagedKnowledgeBaseConfigurationT = ManagedKnowledgeBaseConfiguration>
87 m_managedKnowledgeBaseConfigurationHasBeenSet = true;
88 m_managedKnowledgeBaseConfiguration = std::forward<ManagedKnowledgeBaseConfigurationT>(value);
89 }
90 template <typename ManagedKnowledgeBaseConfigurationT = ManagedKnowledgeBaseConfiguration>
92 SetManagedKnowledgeBaseConfiguration(std::forward<ManagedKnowledgeBaseConfigurationT>(value));
93 return *this;
94 }
96
98
101 inline const KendraKnowledgeBaseConfiguration& GetKendraKnowledgeBaseConfiguration() const { return m_kendraKnowledgeBaseConfiguration; }
102 inline bool KendraKnowledgeBaseConfigurationHasBeenSet() const { return m_kendraKnowledgeBaseConfigurationHasBeenSet; }
103 template <typename KendraKnowledgeBaseConfigurationT = KendraKnowledgeBaseConfiguration>
105 m_kendraKnowledgeBaseConfigurationHasBeenSet = true;
106 m_kendraKnowledgeBaseConfiguration = std::forward<KendraKnowledgeBaseConfigurationT>(value);
107 }
108 template <typename KendraKnowledgeBaseConfigurationT = KendraKnowledgeBaseConfiguration>
110 SetKendraKnowledgeBaseConfiguration(std::forward<KendraKnowledgeBaseConfigurationT>(value));
111 return *this;
112 }
114
116
120 inline const SqlKnowledgeBaseConfiguration& GetSqlKnowledgeBaseConfiguration() const { return m_sqlKnowledgeBaseConfiguration; }
121 inline bool SqlKnowledgeBaseConfigurationHasBeenSet() const { return m_sqlKnowledgeBaseConfigurationHasBeenSet; }
122 template <typename SqlKnowledgeBaseConfigurationT = SqlKnowledgeBaseConfiguration>
124 m_sqlKnowledgeBaseConfigurationHasBeenSet = true;
125 m_sqlKnowledgeBaseConfiguration = std::forward<SqlKnowledgeBaseConfigurationT>(value);
126 }
127 template <typename SqlKnowledgeBaseConfigurationT = SqlKnowledgeBaseConfiguration>
129 SetSqlKnowledgeBaseConfiguration(std::forward<SqlKnowledgeBaseConfigurationT>(value));
130 return *this;
131 }
133 private:
135
136 VectorKnowledgeBaseConfiguration m_vectorKnowledgeBaseConfiguration;
137
138 ManagedKnowledgeBaseConfiguration m_managedKnowledgeBaseConfiguration;
139
140 KendraKnowledgeBaseConfiguration m_kendraKnowledgeBaseConfiguration;
141
142 SqlKnowledgeBaseConfiguration m_sqlKnowledgeBaseConfiguration;
143 bool m_typeHasBeenSet = false;
144 bool m_vectorKnowledgeBaseConfigurationHasBeenSet = false;
145 bool m_managedKnowledgeBaseConfigurationHasBeenSet = false;
146 bool m_kendraKnowledgeBaseConfigurationHasBeenSet = false;
147 bool m_sqlKnowledgeBaseConfigurationHasBeenSet = false;
148};
149
150} // namespace Model
151} // namespace BedrockAgent
152} // namespace Aws
KnowledgeBaseConfiguration & WithManagedKnowledgeBaseConfiguration(ManagedKnowledgeBaseConfigurationT &&value)
KnowledgeBaseConfiguration & WithType(KnowledgeBaseType value)
AWS_BEDROCKAGENT_API KnowledgeBaseConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetKendraKnowledgeBaseConfiguration(KendraKnowledgeBaseConfigurationT &&value)
void SetManagedKnowledgeBaseConfiguration(ManagedKnowledgeBaseConfigurationT &&value)
AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetVectorKnowledgeBaseConfiguration(VectorKnowledgeBaseConfigurationT &&value)
AWS_BEDROCKAGENT_API KnowledgeBaseConfiguration()=default
const ManagedKnowledgeBaseConfiguration & GetManagedKnowledgeBaseConfiguration() const
AWS_BEDROCKAGENT_API KnowledgeBaseConfiguration(Aws::Utils::Json::JsonView jsonValue)
void SetSqlKnowledgeBaseConfiguration(SqlKnowledgeBaseConfigurationT &&value)
const VectorKnowledgeBaseConfiguration & GetVectorKnowledgeBaseConfiguration() const
KnowledgeBaseConfiguration & WithKendraKnowledgeBaseConfiguration(KendraKnowledgeBaseConfigurationT &&value)
const KendraKnowledgeBaseConfiguration & GetKendraKnowledgeBaseConfiguration() const
KnowledgeBaseConfiguration & WithSqlKnowledgeBaseConfiguration(SqlKnowledgeBaseConfigurationT &&value)
const SqlKnowledgeBaseConfiguration & GetSqlKnowledgeBaseConfiguration() const
KnowledgeBaseConfiguration & WithVectorKnowledgeBaseConfiguration(VectorKnowledgeBaseConfigurationT &&value)
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
Aws::Utils::Json::JsonValue JsonValue