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/core/utils/memory/stl/AWSVector.h>
11#include <aws/kendra/model/Principal.h>
12#include <aws/kendra/model/HierarchicalPrincipal.h>
14#include <aws/core/utils/UUID.h>
34 inline virtual const char*
GetServiceRequestName()
const override {
return "CreateAccessControlConfiguration"; }
48 template<
typename IndexIdT = Aws::String>
49 void SetIndexId(IndexIdT&& value) { m_indexIdHasBeenSet =
true; m_indexId = std::forward<IndexIdT>(value); }
50 template<
typename IndexIdT = Aws::String>
60 template<
typename NameT = Aws::String>
61 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
62 template<
typename NameT = Aws::String>
72 template<
typename DescriptionT = Aws::String>
73 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
74 template<
typename DescriptionT = Aws::String>
86 template<
typename AccessControlListT = Aws::Vector<Principal>>
87 void SetAccessControlList(AccessControlListT&& value) { m_accessControlListHasBeenSet =
true; m_accessControlList = std::forward<AccessControlListT>(value); }
88 template<
typename AccessControlListT = Aws::Vector<Principal>>
90 template<
typename AccessControlListT = Principal>
103 template<
typename HierarchicalAccessControlListT = Aws::Vector<HierarchicalPrincipal>>
104 void SetHierarchicalAccessControlList(HierarchicalAccessControlListT&& value) { m_hierarchicalAccessControlListHasBeenSet =
true; m_hierarchicalAccessControlList = std::forward<HierarchicalAccessControlListT>(value); }
105 template<
typename HierarchicalAccessControlListT = Aws::Vector<HierarchicalPrincipal>>
107 template<
typename HierarchicalAccessControlListT = HierarchicalPrincipal>
120 template<
typename ClientTokenT = Aws::String>
121 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet =
true; m_clientToken = std::forward<ClientTokenT>(value); }
122 template<
typename ClientTokenT = Aws::String>
128 bool m_indexIdHasBeenSet =
false;
131 bool m_nameHasBeenSet =
false;
134 bool m_descriptionHasBeenSet =
false;
137 bool m_accessControlListHasBeenSet =
false;
140 bool m_hierarchicalAccessControlListHasBeenSet =
false;
143 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