AWS SDK for C++

AWS SDK for C++ Version 1.11.845

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
78 return m_managedKnowledgeBaseConfiguration;
79 }
80 inline bool ManagedKnowledgeBaseConfigurationHasBeenSet() const { return m_managedKnowledgeBaseConfigurationHasBeenSet; }
81 template <typename ManagedKnowledgeBaseConfigurationT = ManagedKnowledgeBaseConfiguration>
83 m_managedKnowledgeBaseConfigurationHasBeenSet = true;
84 m_managedKnowledgeBaseConfiguration = std::forward<ManagedKnowledgeBaseConfigurationT>(value);
85 }
86 template <typename ManagedKnowledgeBaseConfigurationT = ManagedKnowledgeBaseConfiguration>
88 SetManagedKnowledgeBaseConfiguration(std::forward<ManagedKnowledgeBaseConfigurationT>(value));
89 return *this;
90 }
92
94
97 inline const KendraKnowledgeBaseConfiguration& GetKendraKnowledgeBaseConfiguration() const { return m_kendraKnowledgeBaseConfiguration; }
98 inline bool KendraKnowledgeBaseConfigurationHasBeenSet() const { return m_kendraKnowledgeBaseConfigurationHasBeenSet; }
99 template <typename KendraKnowledgeBaseConfigurationT = KendraKnowledgeBaseConfiguration>
101 m_kendraKnowledgeBaseConfigurationHasBeenSet = true;
102 m_kendraKnowledgeBaseConfiguration = std::forward<KendraKnowledgeBaseConfigurationT>(value);
103 }
104 template <typename KendraKnowledgeBaseConfigurationT = KendraKnowledgeBaseConfiguration>
106 SetKendraKnowledgeBaseConfiguration(std::forward<KendraKnowledgeBaseConfigurationT>(value));
107 return *this;
108 }
110
112
116 inline const SqlKnowledgeBaseConfiguration& GetSqlKnowledgeBaseConfiguration() const { return m_sqlKnowledgeBaseConfiguration; }
117 inline bool SqlKnowledgeBaseConfigurationHasBeenSet() const { return m_sqlKnowledgeBaseConfigurationHasBeenSet; }
118 template <typename SqlKnowledgeBaseConfigurationT = SqlKnowledgeBaseConfiguration>
120 m_sqlKnowledgeBaseConfigurationHasBeenSet = true;
121 m_sqlKnowledgeBaseConfiguration = std::forward<SqlKnowledgeBaseConfigurationT>(value);
122 }
123 template <typename SqlKnowledgeBaseConfigurationT = SqlKnowledgeBaseConfiguration>
125 SetSqlKnowledgeBaseConfiguration(std::forward<SqlKnowledgeBaseConfigurationT>(value));
126 return *this;
127 }
129 private:
131
132 VectorKnowledgeBaseConfiguration m_vectorKnowledgeBaseConfiguration;
133
134 ManagedKnowledgeBaseConfiguration m_managedKnowledgeBaseConfiguration;
135
136 KendraKnowledgeBaseConfiguration m_kendraKnowledgeBaseConfiguration;
137
138 SqlKnowledgeBaseConfiguration m_sqlKnowledgeBaseConfiguration;
139 bool m_typeHasBeenSet = false;
140 bool m_vectorKnowledgeBaseConfigurationHasBeenSet = false;
141 bool m_managedKnowledgeBaseConfigurationHasBeenSet = false;
142 bool m_kendraKnowledgeBaseConfigurationHasBeenSet = false;
143 bool m_sqlKnowledgeBaseConfigurationHasBeenSet = false;
144};
145
146} // namespace Model
147} // namespace BedrockAgent
148} // 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