7#include <aws/core/utils/memory/stl/AWSString.h> 
    8#include <aws/core/utils/memory/stl/AWSVector.h> 
    9#include <aws/kendra/KendraRequest.h> 
   10#include <aws/kendra/Kendra_EXPORTS.h> 
   11#include <aws/kendra/model/HierarchicalPrincipal.h> 
   12#include <aws/kendra/model/Principal.h> 
   30  inline virtual const char* 
GetServiceRequestName()
 const override { 
return "UpdateAccessControlConfiguration"; }
 
   42  template <
typename IndexIdT = Aws::String>
 
   44    m_indexIdHasBeenSet = 
true;
 
   45    m_indexId = std::forward<IndexIdT>(value);
 
   47  template <
typename IndexIdT = Aws::String>
 
   60  template <
typename IdT = Aws::String>
 
   62    m_idHasBeenSet = 
true;
 
   63    m_id = std::forward<IdT>(value);
 
   65  template <
typename IdT = Aws::String>
 
   67    SetId(std::forward<IdT>(value));
 
   78  template <
typename NameT = Aws::String>
 
   80    m_nameHasBeenSet = 
true;
 
   81    m_name = std::forward<NameT>(value);
 
   83  template <
typename NameT = Aws::String>
 
   85    SetName(std::forward<NameT>(value));
 
   96  template <
typename DescriptionT = Aws::String>
 
   98    m_descriptionHasBeenSet = 
true;
 
   99    m_description = std::forward<DescriptionT>(value);
 
  101  template <
typename DescriptionT = Aws::String>
 
  117  template <
typename AccessControlListT = Aws::Vector<Principal>>
 
  119    m_accessControlListHasBeenSet = 
true;
 
  120    m_accessControlList = std::forward<AccessControlListT>(value);
 
  122  template <
typename AccessControlListT = Aws::Vector<Principal>>
 
  127  template <
typename AccessControlListT = Principal>
 
  129    m_accessControlListHasBeenSet = 
true;
 
  130    m_accessControlList.emplace_back(std::forward<AccessControlListT>(value));
 
  144  template <
typename HierarchicalAccessControlListT = Aws::Vector<HierarchicalPrincipal>>
 
  146    m_hierarchicalAccessControlListHasBeenSet = 
true;
 
  147    m_hierarchicalAccessControlList = std::forward<HierarchicalAccessControlListT>(value);
 
  149  template <
typename HierarchicalAccessControlListT = Aws::Vector<HierarchicalPrincipal>>
 
  154  template <
typename HierarchicalAccessControlListT = HierarchicalPrincipal>
 
  156    m_hierarchicalAccessControlListHasBeenSet = 
true;
 
  157    m_hierarchicalAccessControlList.emplace_back(std::forward<HierarchicalAccessControlListT>(value));
 
  163  bool m_indexIdHasBeenSet = 
false;
 
  166  bool m_idHasBeenSet = 
false;
 
  169  bool m_nameHasBeenSet = 
false;
 
  172  bool m_descriptionHasBeenSet = 
false;
 
  175  bool m_accessControlListHasBeenSet = 
false;
 
  178  bool m_hierarchicalAccessControlListHasBeenSet = 
false;
 
bool NameHasBeenSet() const
 
const Aws::Vector< HierarchicalPrincipal > & GetHierarchicalAccessControlList() const
 
bool IndexIdHasBeenSet() const
 
virtual const char * GetServiceRequestName() const override
 
UpdateAccessControlConfigurationRequest & WithIndexId(IndexIdT &&value)
 
const Aws::String & GetName() const
 
void SetDescription(DescriptionT &&value)
 
void SetIndexId(IndexIdT &&value)
 
const Aws::String & GetId() const
 
UpdateAccessControlConfigurationRequest & AddAccessControlList(AccessControlListT &&value)
 
AWS_KENDRA_API Aws::String SerializePayload() const override
 
UpdateAccessControlConfigurationRequest & WithAccessControlList(AccessControlListT &&value)
 
UpdateAccessControlConfigurationRequest & AddHierarchicalAccessControlList(HierarchicalAccessControlListT &&value)
 
const Aws::String & GetDescription() const
 
const Aws::String & GetIndexId() const
 
bool AccessControlListHasBeenSet() const
 
UpdateAccessControlConfigurationRequest & WithHierarchicalAccessControlList(HierarchicalAccessControlListT &&value)
 
UpdateAccessControlConfigurationRequest & WithId(IdT &&value)
 
const Aws::Vector< Principal > & GetAccessControlList() const
 
bool DescriptionHasBeenSet() const
 
UpdateAccessControlConfigurationRequest & WithDescription(DescriptionT &&value)
 
void SetName(NameT &&value)
 
AWS_KENDRA_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
 
AWS_KENDRA_API UpdateAccessControlConfigurationRequest()=default
 
bool HierarchicalAccessControlListHasBeenSet() const
 
void SetHierarchicalAccessControlList(HierarchicalAccessControlListT &&value)
 
bool IdHasBeenSet() const
 
UpdateAccessControlConfigurationRequest & WithName(NameT &&value)
 
void SetAccessControlList(AccessControlListT &&value)
 
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