AWS SDK for C++

AWS SDK for C++ Version 1.11.902

Loading...
Searching...
No Matches
UpdateSecurityProfileRequest.h
1
6#pragma once
7#include <aws/connect/ConnectRequest.h>
8#include <aws/connect/Connect_EXPORTS.h>
9#include <aws/connect/model/AIAgent.h>
10#include <aws/connect/model/Application.h>
11#include <aws/connect/model/FlowModule.h>
12#include <aws/connect/model/GranularAccessControlConfiguration.h>
13#include <aws/core/utils/memory/stl/AWSMap.h>
14#include <aws/core/utils/memory/stl/AWSString.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Connect {
21namespace Model {
22
26 public:
27 AWS_CONNECT_API UpdateSecurityProfileRequest() = 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 "UpdateSecurityProfile"; }
34
35 AWS_CONNECT_API Aws::String SerializePayload() const override;
36
38
41 inline const Aws::String& GetDescription() const { return m_description; }
42 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
43 template <typename DescriptionT = Aws::String>
44 void SetDescription(DescriptionT&& value) {
45 m_descriptionHasBeenSet = true;
46 m_description = std::forward<DescriptionT>(value);
47 }
48 template <typename DescriptionT = Aws::String>
50 SetDescription(std::forward<DescriptionT>(value));
51 return *this;
52 }
54
56
62 inline const Aws::Vector<Aws::String>& GetPermissions() const { return m_permissions; }
63 inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; }
64 template <typename PermissionsT = Aws::Vector<Aws::String>>
65 void SetPermissions(PermissionsT&& value) {
66 m_permissionsHasBeenSet = true;
67 m_permissions = std::forward<PermissionsT>(value);
68 }
69 template <typename PermissionsT = Aws::Vector<Aws::String>>
71 SetPermissions(std::forward<PermissionsT>(value));
72 return *this;
73 }
74 template <typename PermissionsT = Aws::String>
76 m_permissionsHasBeenSet = true;
77 m_permissions.emplace_back(std::forward<PermissionsT>(value));
78 return *this;
79 }
81
83
86 inline const Aws::String& GetSecurityProfileId() const { return m_securityProfileId; }
87 inline bool SecurityProfileIdHasBeenSet() const { return m_securityProfileIdHasBeenSet; }
88 template <typename SecurityProfileIdT = Aws::String>
89 void SetSecurityProfileId(SecurityProfileIdT&& value) {
90 m_securityProfileIdHasBeenSet = true;
91 m_securityProfileId = std::forward<SecurityProfileIdT>(value);
92 }
93 template <typename SecurityProfileIdT = Aws::String>
95 SetSecurityProfileId(std::forward<SecurityProfileIdT>(value));
96 return *this;
97 }
99
101
106 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
107 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
108 template <typename InstanceIdT = Aws::String>
109 void SetInstanceId(InstanceIdT&& value) {
110 m_instanceIdHasBeenSet = true;
111 m_instanceId = std::forward<InstanceIdT>(value);
112 }
113 template <typename InstanceIdT = Aws::String>
115 SetInstanceId(std::forward<InstanceIdT>(value));
116 return *this;
117 }
119
121
125 inline const Aws::Map<Aws::String, Aws::String>& GetAllowedAccessControlTags() const { return m_allowedAccessControlTags; }
126 inline bool AllowedAccessControlTagsHasBeenSet() const { return m_allowedAccessControlTagsHasBeenSet; }
127 template <typename AllowedAccessControlTagsT = Aws::Map<Aws::String, Aws::String>>
128 void SetAllowedAccessControlTags(AllowedAccessControlTagsT&& value) {
129 m_allowedAccessControlTagsHasBeenSet = true;
130 m_allowedAccessControlTags = std::forward<AllowedAccessControlTagsT>(value);
131 }
132 template <typename AllowedAccessControlTagsT = Aws::Map<Aws::String, Aws::String>>
133 UpdateSecurityProfileRequest& WithAllowedAccessControlTags(AllowedAccessControlTagsT&& value) {
134 SetAllowedAccessControlTags(std::forward<AllowedAccessControlTagsT>(value));
135 return *this;
136 }
137 template <typename AllowedAccessControlTagsKeyT = Aws::String, typename AllowedAccessControlTagsValueT = Aws::String>
138 UpdateSecurityProfileRequest& AddAllowedAccessControlTags(AllowedAccessControlTagsKeyT&& key, AllowedAccessControlTagsValueT&& value) {
139 m_allowedAccessControlTagsHasBeenSet = true;
140 m_allowedAccessControlTags.emplace(std::forward<AllowedAccessControlTagsKeyT>(key),
141 std::forward<AllowedAccessControlTagsValueT>(value));
142 return *this;
143 }
145
147
151 inline const Aws::Vector<Aws::String>& GetTagRestrictedResources() const { return m_tagRestrictedResources; }
152 inline bool TagRestrictedResourcesHasBeenSet() const { return m_tagRestrictedResourcesHasBeenSet; }
153 template <typename TagRestrictedResourcesT = Aws::Vector<Aws::String>>
154 void SetTagRestrictedResources(TagRestrictedResourcesT&& value) {
155 m_tagRestrictedResourcesHasBeenSet = true;
156 m_tagRestrictedResources = std::forward<TagRestrictedResourcesT>(value);
157 }
158 template <typename TagRestrictedResourcesT = Aws::Vector<Aws::String>>
160 SetTagRestrictedResources(std::forward<TagRestrictedResourcesT>(value));
161 return *this;
162 }
163 template <typename TagRestrictedResourcesT = Aws::String>
164 UpdateSecurityProfileRequest& AddTagRestrictedResources(TagRestrictedResourcesT&& value) {
165 m_tagRestrictedResourcesHasBeenSet = true;
166 m_tagRestrictedResources.emplace_back(std::forward<TagRestrictedResourcesT>(value));
167 return *this;
168 }
170
172
175 inline const Aws::Vector<Application>& GetApplications() const { return m_applications; }
176 inline bool ApplicationsHasBeenSet() const { return m_applicationsHasBeenSet; }
177 template <typename ApplicationsT = Aws::Vector<Application>>
178 void SetApplications(ApplicationsT&& value) {
179 m_applicationsHasBeenSet = true;
180 m_applications = std::forward<ApplicationsT>(value);
181 }
182 template <typename ApplicationsT = Aws::Vector<Application>>
184 SetApplications(std::forward<ApplicationsT>(value));
185 return *this;
186 }
187 template <typename ApplicationsT = Application>
189 m_applicationsHasBeenSet = true;
190 m_applications.emplace_back(std::forward<ApplicationsT>(value));
191 return *this;
192 }
194
196
201 inline const Aws::Vector<Aws::String>& GetHierarchyRestrictedResources() const { return m_hierarchyRestrictedResources; }
202 inline bool HierarchyRestrictedResourcesHasBeenSet() const { return m_hierarchyRestrictedResourcesHasBeenSet; }
203 template <typename HierarchyRestrictedResourcesT = Aws::Vector<Aws::String>>
204 void SetHierarchyRestrictedResources(HierarchyRestrictedResourcesT&& value) {
205 m_hierarchyRestrictedResourcesHasBeenSet = true;
206 m_hierarchyRestrictedResources = std::forward<HierarchyRestrictedResourcesT>(value);
207 }
208 template <typename HierarchyRestrictedResourcesT = Aws::Vector<Aws::String>>
209 UpdateSecurityProfileRequest& WithHierarchyRestrictedResources(HierarchyRestrictedResourcesT&& value) {
210 SetHierarchyRestrictedResources(std::forward<HierarchyRestrictedResourcesT>(value));
211 return *this;
212 }
213 template <typename HierarchyRestrictedResourcesT = Aws::String>
214 UpdateSecurityProfileRequest& AddHierarchyRestrictedResources(HierarchyRestrictedResourcesT&& value) {
215 m_hierarchyRestrictedResourcesHasBeenSet = true;
216 m_hierarchyRestrictedResources.emplace_back(std::forward<HierarchyRestrictedResourcesT>(value));
217 return *this;
218 }
220
222
226 inline const Aws::String& GetAllowedAccessControlHierarchyGroupId() const { return m_allowedAccessControlHierarchyGroupId; }
227 inline bool AllowedAccessControlHierarchyGroupIdHasBeenSet() const { return m_allowedAccessControlHierarchyGroupIdHasBeenSet; }
228 template <typename AllowedAccessControlHierarchyGroupIdT = Aws::String>
229 void SetAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT&& value) {
230 m_allowedAccessControlHierarchyGroupIdHasBeenSet = true;
231 m_allowedAccessControlHierarchyGroupId = std::forward<AllowedAccessControlHierarchyGroupIdT>(value);
232 }
233 template <typename AllowedAccessControlHierarchyGroupIdT = Aws::String>
234 UpdateSecurityProfileRequest& WithAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT&& value) {
235 SetAllowedAccessControlHierarchyGroupId(std::forward<AllowedAccessControlHierarchyGroupIdT>(value));
236 return *this;
237 }
239
241
244 inline const Aws::Vector<FlowModule>& GetAllowedFlowModules() const { return m_allowedFlowModules; }
245 inline bool AllowedFlowModulesHasBeenSet() const { return m_allowedFlowModulesHasBeenSet; }
246 template <typename AllowedFlowModulesT = Aws::Vector<FlowModule>>
247 void SetAllowedFlowModules(AllowedFlowModulesT&& value) {
248 m_allowedFlowModulesHasBeenSet = true;
249 m_allowedFlowModules = std::forward<AllowedFlowModulesT>(value);
250 }
251 template <typename AllowedFlowModulesT = Aws::Vector<FlowModule>>
253 SetAllowedFlowModules(std::forward<AllowedFlowModulesT>(value));
254 return *this;
255 }
256 template <typename AllowedFlowModulesT = FlowModule>
258 m_allowedFlowModulesHasBeenSet = true;
259 m_allowedFlowModules.emplace_back(std::forward<AllowedFlowModulesT>(value));
260 return *this;
261 }
263
265
268 inline const Aws::Vector<AIAgent>& GetAllowedAIAgents() const { return m_allowedAIAgents; }
269 inline bool AllowedAIAgentsHasBeenSet() const { return m_allowedAIAgentsHasBeenSet; }
270 template <typename AllowedAIAgentsT = Aws::Vector<AIAgent>>
271 void SetAllowedAIAgents(AllowedAIAgentsT&& value) {
272 m_allowedAIAgentsHasBeenSet = true;
273 m_allowedAIAgents = std::forward<AllowedAIAgentsT>(value);
274 }
275 template <typename AllowedAIAgentsT = Aws::Vector<AIAgent>>
277 SetAllowedAIAgents(std::forward<AllowedAIAgentsT>(value));
278 return *this;
279 }
280 template <typename AllowedAIAgentsT = AIAgent>
282 m_allowedAIAgentsHasBeenSet = true;
283 m_allowedAIAgents.emplace_back(std::forward<AllowedAIAgentsT>(value));
284 return *this;
285 }
287
289
294 return m_granularAccessControlConfiguration;
295 }
296 inline bool GranularAccessControlConfigurationHasBeenSet() const { return m_granularAccessControlConfigurationHasBeenSet; }
297 template <typename GranularAccessControlConfigurationT = GranularAccessControlConfiguration>
298 void SetGranularAccessControlConfiguration(GranularAccessControlConfigurationT&& value) {
299 m_granularAccessControlConfigurationHasBeenSet = true;
300 m_granularAccessControlConfiguration = std::forward<GranularAccessControlConfigurationT>(value);
301 }
302 template <typename GranularAccessControlConfigurationT = GranularAccessControlConfiguration>
303 UpdateSecurityProfileRequest& WithGranularAccessControlConfiguration(GranularAccessControlConfigurationT&& value) {
304 SetGranularAccessControlConfiguration(std::forward<GranularAccessControlConfigurationT>(value));
305 return *this;
306 }
308 private:
309 Aws::String m_description;
310
311 Aws::Vector<Aws::String> m_permissions;
312
313 Aws::String m_securityProfileId;
314
315 Aws::String m_instanceId;
316
317 Aws::Map<Aws::String, Aws::String> m_allowedAccessControlTags;
318
319 Aws::Vector<Aws::String> m_tagRestrictedResources;
320
321 Aws::Vector<Application> m_applications;
322
323 Aws::Vector<Aws::String> m_hierarchyRestrictedResources;
324
325 Aws::String m_allowedAccessControlHierarchyGroupId;
326
327 Aws::Vector<FlowModule> m_allowedFlowModules;
328
329 Aws::Vector<AIAgent> m_allowedAIAgents;
330
331 GranularAccessControlConfiguration m_granularAccessControlConfiguration;
332 bool m_descriptionHasBeenSet = false;
333 bool m_permissionsHasBeenSet = false;
334 bool m_securityProfileIdHasBeenSet = false;
335 bool m_instanceIdHasBeenSet = false;
336 bool m_allowedAccessControlTagsHasBeenSet = false;
337 bool m_tagRestrictedResourcesHasBeenSet = false;
338 bool m_applicationsHasBeenSet = false;
339 bool m_hierarchyRestrictedResourcesHasBeenSet = false;
340 bool m_allowedAccessControlHierarchyGroupIdHasBeenSet = false;
341 bool m_allowedFlowModulesHasBeenSet = false;
342 bool m_allowedAIAgentsHasBeenSet = false;
343 bool m_granularAccessControlConfigurationHasBeenSet = false;
344};
345
346} // namespace Model
347} // namespace Connect
348} // namespace Aws
UpdateSecurityProfileRequest & WithPermissions(PermissionsT &&value)
UpdateSecurityProfileRequest & WithGranularAccessControlConfiguration(GranularAccessControlConfigurationT &&value)
UpdateSecurityProfileRequest & WithTagRestrictedResources(TagRestrictedResourcesT &&value)
AWS_CONNECT_API UpdateSecurityProfileRequest()=default
void SetAllowedAccessControlTags(AllowedAccessControlTagsT &&value)
const GranularAccessControlConfiguration & GetGranularAccessControlConfiguration() const
UpdateSecurityProfileRequest & AddApplications(ApplicationsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAllowedAccessControlTags() const
UpdateSecurityProfileRequest & WithApplications(ApplicationsT &&value)
UpdateSecurityProfileRequest & AddTagRestrictedResources(TagRestrictedResourcesT &&value)
void SetHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&value)
UpdateSecurityProfileRequest & WithHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&value)
const Aws::Vector< FlowModule > & GetAllowedFlowModules() const
void SetGranularAccessControlConfiguration(GranularAccessControlConfigurationT &&value)
UpdateSecurityProfileRequest & WithAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT &&value)
const Aws::Vector< Application > & GetApplications() const
UpdateSecurityProfileRequest & AddAllowedAIAgents(AllowedAIAgentsT &&value)
UpdateSecurityProfileRequest & WithAllowedAIAgents(AllowedAIAgentsT &&value)
UpdateSecurityProfileRequest & WithAllowedFlowModules(AllowedFlowModulesT &&value)
UpdateSecurityProfileRequest & WithDescription(DescriptionT &&value)
UpdateSecurityProfileRequest & AddPermissions(PermissionsT &&value)
const Aws::Vector< Aws::String > & GetHierarchyRestrictedResources() const
virtual const char * GetServiceRequestName() const override
UpdateSecurityProfileRequest & AddAllowedFlowModules(AllowedFlowModulesT &&value)
AWS_CONNECT_API Aws::String SerializePayload() const override
UpdateSecurityProfileRequest & WithSecurityProfileId(SecurityProfileIdT &&value)
const Aws::Vector< Aws::String > & GetPermissions() const
void SetTagRestrictedResources(TagRestrictedResourcesT &&value)
const Aws::Vector< Aws::String > & GetTagRestrictedResources() const
void SetAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT &&value)
UpdateSecurityProfileRequest & AddAllowedAccessControlTags(AllowedAccessControlTagsKeyT &&key, AllowedAccessControlTagsValueT &&value)
UpdateSecurityProfileRequest & WithInstanceId(InstanceIdT &&value)
UpdateSecurityProfileRequest & WithAllowedAccessControlTags(AllowedAccessControlTagsT &&value)
UpdateSecurityProfileRequest & AddHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector