AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateIndexRequest.h
1
6#pragma once
7#include <aws/kendra/Kendra_EXPORTS.h>
8#include <aws/kendra/KendraRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/kendra/model/IndexEdition.h>
11#include <aws/kendra/model/ServerSideEncryptionConfiguration.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/kendra/model/UserContextPolicy.h>
14#include <aws/kendra/model/UserGroupResolutionConfiguration.h>
15#include <aws/kendra/model/Tag.h>
16#include <aws/kendra/model/UserTokenConfiguration.h>
17#include <utility>
18#include <aws/core/utils/UUID.h>
19
20namespace Aws
21{
22namespace kendra
23{
24namespace Model
25{
26
30 {
31 public:
32 AWS_KENDRA_API CreateIndexRequest() = default;
33
34 // Service request name is the Operation name which will send this request out,
35 // each operation should has unique request name, so that we can get operation's name from this request.
36 // Note: this is not true for response, multiple operations may have the same response name,
37 // so we can not get operation's name from response.
38 inline virtual const char* GetServiceRequestName() const override { return "CreateIndex"; }
39
40 AWS_KENDRA_API Aws::String SerializePayload() const override;
41
43
44
46
49 inline const Aws::String& GetName() const { return m_name; }
50 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
51 template<typename NameT = Aws::String>
52 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
53 template<typename NameT = Aws::String>
54 CreateIndexRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
56
58
70 inline IndexEdition GetEdition() const { return m_edition; }
71 inline bool EditionHasBeenSet() const { return m_editionHasBeenSet; }
72 inline void SetEdition(IndexEdition value) { m_editionHasBeenSet = true; m_edition = value; }
73 inline CreateIndexRequest& WithEdition(IndexEdition value) { SetEdition(value); return *this;}
75
77
83 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
84 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
85 template<typename RoleArnT = Aws::String>
86 void SetRoleArn(RoleArnT&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::forward<RoleArnT>(value); }
87 template<typename RoleArnT = Aws::String>
88 CreateIndexRequest& WithRoleArn(RoleArnT&& value) { SetRoleArn(std::forward<RoleArnT>(value)); return *this;}
90
92
97 inline const ServerSideEncryptionConfiguration& GetServerSideEncryptionConfiguration() const { return m_serverSideEncryptionConfiguration; }
98 inline bool ServerSideEncryptionConfigurationHasBeenSet() const { return m_serverSideEncryptionConfigurationHasBeenSet; }
99 template<typename ServerSideEncryptionConfigurationT = ServerSideEncryptionConfiguration>
100 void SetServerSideEncryptionConfiguration(ServerSideEncryptionConfigurationT&& value) { m_serverSideEncryptionConfigurationHasBeenSet = true; m_serverSideEncryptionConfiguration = std::forward<ServerSideEncryptionConfigurationT>(value); }
101 template<typename ServerSideEncryptionConfigurationT = ServerSideEncryptionConfiguration>
102 CreateIndexRequest& WithServerSideEncryptionConfiguration(ServerSideEncryptionConfigurationT&& value) { SetServerSideEncryptionConfiguration(std::forward<ServerSideEncryptionConfigurationT>(value)); return *this;}
104
106
109 inline const Aws::String& GetDescription() const { return m_description; }
110 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
111 template<typename DescriptionT = Aws::String>
112 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
113 template<typename DescriptionT = Aws::String>
114 CreateIndexRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
116
118
123 inline const Aws::String& GetClientToken() const { return m_clientToken; }
124 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
125 template<typename ClientTokenT = Aws::String>
126 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
127 template<typename ClientTokenT = Aws::String>
128 CreateIndexRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
130
132
138 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
139 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
140 template<typename TagsT = Aws::Vector<Tag>>
141 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
142 template<typename TagsT = Aws::Vector<Tag>>
143 CreateIndexRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
144 template<typename TagsT = Tag>
145 CreateIndexRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
147
149
155 inline const Aws::Vector<UserTokenConfiguration>& GetUserTokenConfigurations() const { return m_userTokenConfigurations; }
156 inline bool UserTokenConfigurationsHasBeenSet() const { return m_userTokenConfigurationsHasBeenSet; }
157 template<typename UserTokenConfigurationsT = Aws::Vector<UserTokenConfiguration>>
158 void SetUserTokenConfigurations(UserTokenConfigurationsT&& value) { m_userTokenConfigurationsHasBeenSet = true; m_userTokenConfigurations = std::forward<UserTokenConfigurationsT>(value); }
159 template<typename UserTokenConfigurationsT = Aws::Vector<UserTokenConfiguration>>
160 CreateIndexRequest& WithUserTokenConfigurations(UserTokenConfigurationsT&& value) { SetUserTokenConfigurations(std::forward<UserTokenConfigurationsT>(value)); return *this;}
161 template<typename UserTokenConfigurationsT = UserTokenConfiguration>
162 CreateIndexRequest& AddUserTokenConfigurations(UserTokenConfigurationsT&& value) { m_userTokenConfigurationsHasBeenSet = true; m_userTokenConfigurations.emplace_back(std::forward<UserTokenConfigurationsT>(value)); return *this; }
164
166
182 inline UserContextPolicy GetUserContextPolicy() const { return m_userContextPolicy; }
183 inline bool UserContextPolicyHasBeenSet() const { return m_userContextPolicyHasBeenSet; }
184 inline void SetUserContextPolicy(UserContextPolicy value) { m_userContextPolicyHasBeenSet = true; m_userContextPolicy = value; }
187
189
198 inline const UserGroupResolutionConfiguration& GetUserGroupResolutionConfiguration() const { return m_userGroupResolutionConfiguration; }
199 inline bool UserGroupResolutionConfigurationHasBeenSet() const { return m_userGroupResolutionConfigurationHasBeenSet; }
200 template<typename UserGroupResolutionConfigurationT = UserGroupResolutionConfiguration>
201 void SetUserGroupResolutionConfiguration(UserGroupResolutionConfigurationT&& value) { m_userGroupResolutionConfigurationHasBeenSet = true; m_userGroupResolutionConfiguration = std::forward<UserGroupResolutionConfigurationT>(value); }
202 template<typename UserGroupResolutionConfigurationT = UserGroupResolutionConfiguration>
203 CreateIndexRequest& WithUserGroupResolutionConfiguration(UserGroupResolutionConfigurationT&& value) { SetUserGroupResolutionConfiguration(std::forward<UserGroupResolutionConfigurationT>(value)); return *this;}
205 private:
206
207 Aws::String m_name;
208 bool m_nameHasBeenSet = false;
209
211 bool m_editionHasBeenSet = false;
212
213 Aws::String m_roleArn;
214 bool m_roleArnHasBeenSet = false;
215
216 ServerSideEncryptionConfiguration m_serverSideEncryptionConfiguration;
217 bool m_serverSideEncryptionConfigurationHasBeenSet = false;
218
219 Aws::String m_description;
220 bool m_descriptionHasBeenSet = false;
221
223 bool m_clientTokenHasBeenSet = true;
224
225 Aws::Vector<Tag> m_tags;
226 bool m_tagsHasBeenSet = false;
227
228 Aws::Vector<UserTokenConfiguration> m_userTokenConfigurations;
229 bool m_userTokenConfigurationsHasBeenSet = false;
230
232 bool m_userContextPolicyHasBeenSet = false;
233
234 UserGroupResolutionConfiguration m_userGroupResolutionConfiguration;
235 bool m_userGroupResolutionConfigurationHasBeenSet = false;
236 };
237
238} // namespace Model
239} // namespace kendra
240} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
void SetClientToken(ClientTokenT &&value)
CreateIndexRequest & WithUserContextPolicy(UserContextPolicy value)
AWS_KENDRA_API CreateIndexRequest()=default
void SetUserTokenConfigurations(UserTokenConfigurationsT &&value)
CreateIndexRequest & WithEdition(IndexEdition value)
void SetServerSideEncryptionConfiguration(ServerSideEncryptionConfigurationT &&value)
const Aws::Vector< Tag > & GetTags() const
CreateIndexRequest & WithDescription(DescriptionT &&value)
CreateIndexRequest & WithUserGroupResolutionConfiguration(UserGroupResolutionConfigurationT &&value)
CreateIndexRequest & WithUserTokenConfigurations(UserTokenConfigurationsT &&value)
CreateIndexRequest & WithClientToken(ClientTokenT &&value)
const ServerSideEncryptionConfiguration & GetServerSideEncryptionConfiguration() const
void SetDescription(DescriptionT &&value)
virtual const char * GetServiceRequestName() const override
const Aws::String & GetRoleArn() const
CreateIndexRequest & AddTags(TagsT &&value)
const Aws::Vector< UserTokenConfiguration > & GetUserTokenConfigurations() const
CreateIndexRequest & WithTags(TagsT &&value)
void SetUserContextPolicy(UserContextPolicy value)
CreateIndexRequest & WithServerSideEncryptionConfiguration(ServerSideEncryptionConfigurationT &&value)
AWS_KENDRA_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
UserContextPolicy GetUserContextPolicy() const
const UserGroupResolutionConfiguration & GetUserGroupResolutionConfiguration() const
const Aws::String & GetDescription() const
CreateIndexRequest & AddUserTokenConfigurations(UserTokenConfigurationsT &&value)
CreateIndexRequest & WithRoleArn(RoleArnT &&value)
AWS_KENDRA_API Aws::String SerializePayload() const override
void SetUserGroupResolutionConfiguration(UserGroupResolutionConfigurationT &&value)
CreateIndexRequest & WithName(NameT &&value)
const Aws::String & GetClientToken() const
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector