7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/kendra/KendraRequest.h>
11#include <aws/kendra/Kendra_EXPORTS.h>
12#include <aws/kendra/model/HierarchicalPrincipal.h>
13#include <aws/kendra/model/Principal.h>
31 inline virtual const char*
GetServiceRequestName()
const override {
return "CreateAccessControlConfiguration"; }
44 template <
typename IndexIdT = Aws::String>
46 m_indexIdHasBeenSet =
true;
47 m_indexId = std::forward<IndexIdT>(value);
49 template <
typename IndexIdT = Aws::String>
62 template <
typename NameT = Aws::String>
64 m_nameHasBeenSet =
true;
65 m_name = std::forward<NameT>(value);
67 template <
typename NameT = Aws::String>
69 SetName(std::forward<NameT>(value));
80 template <
typename DescriptionT = Aws::String>
82 m_descriptionHasBeenSet =
true;
83 m_description = std::forward<DescriptionT>(value);
85 template <
typename DescriptionT = Aws::String>
100 template <
typename AccessControlListT = Aws::Vector<Principal>>
102 m_accessControlListHasBeenSet =
true;
103 m_accessControlList = std::forward<AccessControlListT>(value);
105 template <
typename AccessControlListT = Aws::Vector<Principal>>
110 template <
typename AccessControlListT = Principal>
112 m_accessControlListHasBeenSet =
true;
113 m_accessControlList.emplace_back(std::forward<AccessControlListT>(value));
127 template <
typename HierarchicalAccessControlListT = Aws::Vector<HierarchicalPrincipal>>
129 m_hierarchicalAccessControlListHasBeenSet =
true;
130 m_hierarchicalAccessControlList = std::forward<HierarchicalAccessControlListT>(value);
132 template <
typename HierarchicalAccessControlListT = Aws::Vector<HierarchicalPrincipal>>
137 template <
typename HierarchicalAccessControlListT = HierarchicalPrincipal>
139 m_hierarchicalAccessControlListHasBeenSet =
true;
140 m_hierarchicalAccessControlList.emplace_back(std::forward<HierarchicalAccessControlListT>(value));
154 template <
typename ClientTokenT = Aws::String>
156 m_clientTokenHasBeenSet =
true;
157 m_clientToken = std::forward<ClientTokenT>(value);
159 template <
typename ClientTokenT = Aws::String>
177 bool m_indexIdHasBeenSet =
false;
178 bool m_nameHasBeenSet =
false;
179 bool m_descriptionHasBeenSet =
false;
180 bool m_accessControlListHasBeenSet =
false;
181 bool m_hierarchicalAccessControlListHasBeenSet =
false;
182 bool m_clientTokenHasBeenSet =
true;
static Aws::Utils::UUID PseudoRandomUUID()
AWS_KENDRA_API CreateAccessControlConfigurationRequest()=default
void SetAccessControlList(AccessControlListT &&value)
const Aws::String & GetName() const
CreateAccessControlConfigurationRequest & WithAccessControlList(AccessControlListT &&value)
void SetIndexId(IndexIdT &&value)
bool ClientTokenHasBeenSet() const
const Aws::Vector< Principal > & GetAccessControlList() const
const Aws::String & GetDescription() const
const Aws::Vector< HierarchicalPrincipal > & GetHierarchicalAccessControlList() const
void SetName(NameT &&value)
CreateAccessControlConfigurationRequest & WithHierarchicalAccessControlList(HierarchicalAccessControlListT &&value)
CreateAccessControlConfigurationRequest & WithClientToken(ClientTokenT &&value)
virtual const char * GetServiceRequestName() const override
void SetHierarchicalAccessControlList(HierarchicalAccessControlListT &&value)
bool AccessControlListHasBeenSet() const
bool HierarchicalAccessControlListHasBeenSet() const
bool NameHasBeenSet() const
bool IndexIdHasBeenSet() const
AWS_KENDRA_API Aws::String SerializePayload() const override
bool DescriptionHasBeenSet() const
CreateAccessControlConfigurationRequest & WithDescription(DescriptionT &&value)
const Aws::String & GetClientToken() const
CreateAccessControlConfigurationRequest & WithIndexId(IndexIdT &&value)
void SetClientToken(ClientTokenT &&value)
CreateAccessControlConfigurationRequest & AddHierarchicalAccessControlList(HierarchicalAccessControlListT &&value)
AWS_KENDRA_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateAccessControlConfigurationRequest & WithName(NameT &&value)
CreateAccessControlConfigurationRequest & AddAccessControlList(AccessControlListT &&value)
void SetDescription(DescriptionT &&value)
const Aws::String & GetIndexId() 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