AWS SDK for C++

AWS SDK for C++ Version 1.11.818

Loading...
Searching...
No Matches
CreateCustomModelRequest.h
1
6#pragma once
7#include <aws/bedrock/BedrockRequest.h>
8#include <aws/bedrock/Bedrock_EXPORTS.h>
9#include <aws/bedrock/model/CustomModelDataSource.h>
10#include <aws/bedrock/model/ModelDataSource.h>
11#include <aws/bedrock/model/Tag.h>
12#include <aws/core/utils/UUID.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Bedrock {
20namespace Model {
21
25 public:
26 AWS_BEDROCK_API CreateCustomModelRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "CreateCustomModel"; }
33
34 AWS_BEDROCK_API Aws::String SerializePayload() const override;
35
37
40 inline const Aws::String& GetModelName() const { return m_modelName; }
41 inline bool ModelNameHasBeenSet() const { return m_modelNameHasBeenSet; }
42 template <typename ModelNameT = Aws::String>
43 void SetModelName(ModelNameT&& value) {
44 m_modelNameHasBeenSet = true;
45 m_modelName = std::forward<ModelNameT>(value);
46 }
47 template <typename ModelNameT = Aws::String>
49 SetModelName(std::forward<ModelNameT>(value));
50 return *this;
51 }
53
55
59 inline const ModelDataSource& GetModelSourceConfig() const { return m_modelSourceConfig; }
60 inline bool ModelSourceConfigHasBeenSet() const { return m_modelSourceConfigHasBeenSet; }
61 template <typename ModelSourceConfigT = ModelDataSource>
63 m_modelSourceConfigHasBeenSet = true;
64 m_modelSourceConfig = std::forward<ModelSourceConfigT>(value);
65 }
66 template <typename ModelSourceConfigT = ModelDataSource>
68 SetModelSourceConfig(std::forward<ModelSourceConfigT>(value));
69 return *this;
70 }
72
74
81 inline const CustomModelDataSource& GetCustomModelDataSource() const { return m_customModelDataSource; }
82 inline bool CustomModelDataSourceHasBeenSet() const { return m_customModelDataSourceHasBeenSet; }
83 template <typename CustomModelDataSourceT = CustomModelDataSource>
85 m_customModelDataSourceHasBeenSet = true;
86 m_customModelDataSource = std::forward<CustomModelDataSourceT>(value);
87 }
88 template <typename CustomModelDataSourceT = CustomModelDataSource>
90 SetCustomModelDataSource(std::forward<CustomModelDataSourceT>(value));
91 return *this;
92 }
94
96
105 inline const Aws::String& GetModelKmsKeyArn() const { return m_modelKmsKeyArn; }
106 inline bool ModelKmsKeyArnHasBeenSet() const { return m_modelKmsKeyArnHasBeenSet; }
107 template <typename ModelKmsKeyArnT = Aws::String>
109 m_modelKmsKeyArnHasBeenSet = true;
110 m_modelKmsKeyArn = std::forward<ModelKmsKeyArnT>(value);
111 }
112 template <typename ModelKmsKeyArnT = Aws::String>
114 SetModelKmsKeyArn(std::forward<ModelKmsKeyArnT>(value));
115 return *this;
116 }
118
120
132 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
133 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
134 template <typename RoleArnT = Aws::String>
135 void SetRoleArn(RoleArnT&& value) {
136 m_roleArnHasBeenSet = true;
137 m_roleArn = std::forward<RoleArnT>(value);
138 }
139 template <typename RoleArnT = Aws::String>
141 SetRoleArn(std::forward<RoleArnT>(value));
142 return *this;
143 }
145
147
156 inline const Aws::Vector<Tag>& GetModelTags() const { return m_modelTags; }
157 inline bool ModelTagsHasBeenSet() const { return m_modelTagsHasBeenSet; }
158 template <typename ModelTagsT = Aws::Vector<Tag>>
159 void SetModelTags(ModelTagsT&& value) {
160 m_modelTagsHasBeenSet = true;
161 m_modelTags = std::forward<ModelTagsT>(value);
162 }
163 template <typename ModelTagsT = Aws::Vector<Tag>>
165 SetModelTags(std::forward<ModelTagsT>(value));
166 return *this;
167 }
168 template <typename ModelTagsT = Tag>
170 m_modelTagsHasBeenSet = true;
171 m_modelTags.emplace_back(std::forward<ModelTagsT>(value));
172 return *this;
173 }
175
177
184 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
185 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
186 template <typename ClientRequestTokenT = Aws::String>
188 m_clientRequestTokenHasBeenSet = true;
189 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
190 }
191 template <typename ClientRequestTokenT = Aws::String>
193 SetClientRequestToken(std::forward<ClientRequestTokenT>(value));
194 return *this;
195 }
197 private:
198 Aws::String m_modelName;
199
200 ModelDataSource m_modelSourceConfig;
201
202 CustomModelDataSource m_customModelDataSource;
203
204 Aws::String m_modelKmsKeyArn;
205
206 Aws::String m_roleArn;
207
208 Aws::Vector<Tag> m_modelTags;
209
210 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
211 bool m_modelNameHasBeenSet = false;
212 bool m_modelSourceConfigHasBeenSet = false;
213 bool m_customModelDataSourceHasBeenSet = false;
214 bool m_modelKmsKeyArnHasBeenSet = false;
215 bool m_roleArnHasBeenSet = false;
216 bool m_modelTagsHasBeenSet = false;
217 bool m_clientRequestTokenHasBeenSet = true;
218};
219
220} // namespace Model
221} // namespace Bedrock
222} // namespace Aws
CreateCustomModelRequest & WithModelName(ModelNameT &&value)
CreateCustomModelRequest & WithClientRequestToken(ClientRequestTokenT &&value)
CreateCustomModelRequest & WithRoleArn(RoleArnT &&value)
void SetModelSourceConfig(ModelSourceConfigT &&value)
CreateCustomModelRequest & WithModelSourceConfig(ModelSourceConfigT &&value)
AWS_BEDROCK_API CreateCustomModelRequest()=default
CreateCustomModelRequest & AddModelTags(ModelTagsT &&value)
CreateCustomModelRequest & WithModelKmsKeyArn(ModelKmsKeyArnT &&value)
void SetClientRequestToken(ClientRequestTokenT &&value)
AWS_BEDROCK_API Aws::String SerializePayload() const override
CreateCustomModelRequest & WithCustomModelDataSource(CustomModelDataSourceT &&value)
CreateCustomModelRequest & WithModelTags(ModelTagsT &&value)
const CustomModelDataSource & GetCustomModelDataSource() const
virtual const char * GetServiceRequestName() const override
void SetCustomModelDataSource(CustomModelDataSourceT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
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