AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
UpdateAccessControlConfigurationRequest.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/core/utils/memory/stl/AWSVector.h>
11#include <aws/kendra/model/Principal.h>
12#include <aws/kendra/model/HierarchicalPrincipal.h>
13#include <utility>
14
15namespace Aws
16{
17namespace kendra
18{
19namespace Model
20{
21
25 {
26 public:
27 AWS_KENDRA_API UpdateAccessControlConfigurationRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "UpdateAccessControlConfiguration"; }
34
35 AWS_KENDRA_API Aws::String SerializePayload() const override;
36
38
39
41
44 inline const Aws::String& GetIndexId() const { return m_indexId; }
45 inline bool IndexIdHasBeenSet() const { return m_indexIdHasBeenSet; }
46 template<typename IndexIdT = Aws::String>
47 void SetIndexId(IndexIdT&& value) { m_indexIdHasBeenSet = true; m_indexId = std::forward<IndexIdT>(value); }
48 template<typename IndexIdT = Aws::String>
49 UpdateAccessControlConfigurationRequest& WithIndexId(IndexIdT&& value) { SetIndexId(std::forward<IndexIdT>(value)); return *this;}
51
53
56 inline const Aws::String& GetId() const { return m_id; }
57 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
58 template<typename IdT = Aws::String>
59 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
60 template<typename IdT = Aws::String>
61 UpdateAccessControlConfigurationRequest& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
63
65
68 inline const Aws::String& GetName() const { return m_name; }
69 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
70 template<typename NameT = Aws::String>
71 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
72 template<typename NameT = Aws::String>
73 UpdateAccessControlConfigurationRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
75
77
80 inline const Aws::String& GetDescription() const { return m_description; }
81 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
82 template<typename DescriptionT = Aws::String>
83 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
84 template<typename DescriptionT = Aws::String>
85 UpdateAccessControlConfigurationRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
87
89
95 inline const Aws::Vector<Principal>& GetAccessControlList() const { return m_accessControlList; }
96 inline bool AccessControlListHasBeenSet() const { return m_accessControlListHasBeenSet; }
97 template<typename AccessControlListT = Aws::Vector<Principal>>
98 void SetAccessControlList(AccessControlListT&& value) { m_accessControlListHasBeenSet = true; m_accessControlList = std::forward<AccessControlListT>(value); }
99 template<typename AccessControlListT = Aws::Vector<Principal>>
100 UpdateAccessControlConfigurationRequest& WithAccessControlList(AccessControlListT&& value) { SetAccessControlList(std::forward<AccessControlListT>(value)); return *this;}
101 template<typename AccessControlListT = Principal>
102 UpdateAccessControlConfigurationRequest& AddAccessControlList(AccessControlListT&& value) { m_accessControlListHasBeenSet = true; m_accessControlList.emplace_back(std::forward<AccessControlListT>(value)); return *this; }
104
106
112 inline const Aws::Vector<HierarchicalPrincipal>& GetHierarchicalAccessControlList() const { return m_hierarchicalAccessControlList; }
113 inline bool HierarchicalAccessControlListHasBeenSet() const { return m_hierarchicalAccessControlListHasBeenSet; }
114 template<typename HierarchicalAccessControlListT = Aws::Vector<HierarchicalPrincipal>>
115 void SetHierarchicalAccessControlList(HierarchicalAccessControlListT&& value) { m_hierarchicalAccessControlListHasBeenSet = true; m_hierarchicalAccessControlList = std::forward<HierarchicalAccessControlListT>(value); }
116 template<typename HierarchicalAccessControlListT = Aws::Vector<HierarchicalPrincipal>>
117 UpdateAccessControlConfigurationRequest& WithHierarchicalAccessControlList(HierarchicalAccessControlListT&& value) { SetHierarchicalAccessControlList(std::forward<HierarchicalAccessControlListT>(value)); return *this;}
118 template<typename HierarchicalAccessControlListT = HierarchicalPrincipal>
119 UpdateAccessControlConfigurationRequest& AddHierarchicalAccessControlList(HierarchicalAccessControlListT&& value) { m_hierarchicalAccessControlListHasBeenSet = true; m_hierarchicalAccessControlList.emplace_back(std::forward<HierarchicalAccessControlListT>(value)); return *this; }
121 private:
122
123 Aws::String m_indexId;
124 bool m_indexIdHasBeenSet = false;
125
126 Aws::String m_id;
127 bool m_idHasBeenSet = false;
128
129 Aws::String m_name;
130 bool m_nameHasBeenSet = false;
131
132 Aws::String m_description;
133 bool m_descriptionHasBeenSet = false;
134
135 Aws::Vector<Principal> m_accessControlList;
136 bool m_accessControlListHasBeenSet = false;
137
138 Aws::Vector<HierarchicalPrincipal> m_hierarchicalAccessControlList;
139 bool m_hierarchicalAccessControlListHasBeenSet = false;
140 };
141
142} // namespace Model
143} // namespace kendra
144} // namespace Aws
const Aws::Vector< HierarchicalPrincipal > & GetHierarchicalAccessControlList() const
UpdateAccessControlConfigurationRequest & WithIndexId(IndexIdT &&value)
UpdateAccessControlConfigurationRequest & AddAccessControlList(AccessControlListT &&value)
AWS_KENDRA_API Aws::String SerializePayload() const override
UpdateAccessControlConfigurationRequest & WithAccessControlList(AccessControlListT &&value)
UpdateAccessControlConfigurationRequest & AddHierarchicalAccessControlList(HierarchicalAccessControlListT &&value)
UpdateAccessControlConfigurationRequest & WithHierarchicalAccessControlList(HierarchicalAccessControlListT &&value)
UpdateAccessControlConfigurationRequest & WithDescription(DescriptionT &&value)
AWS_KENDRA_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
UpdateAccessControlConfigurationRequest & WithName(NameT &&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