AWS SDK for C++

AWS SDK for C++ Version 1.11.759

Loading...
Searching...
No Matches
SecurityProfile.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/connect/model/GranularAccessControlConfiguration.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Connect {
24namespace Model {
25
32 public:
33 AWS_CONNECT_API SecurityProfile() = default;
34 AWS_CONNECT_API SecurityProfile(Aws::Utils::Json::JsonView jsonValue);
36 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::String& GetId() const { return m_id; }
43 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
44 template <typename IdT = Aws::String>
45 void SetId(IdT&& value) {
46 m_idHasBeenSet = true;
47 m_id = std::forward<IdT>(value);
48 }
49 template <typename IdT = Aws::String>
50 SecurityProfile& WithId(IdT&& value) {
51 SetId(std::forward<IdT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetOrganizationResourceId() const { return m_organizationResourceId; }
61 inline bool OrganizationResourceIdHasBeenSet() const { return m_organizationResourceIdHasBeenSet; }
62 template <typename OrganizationResourceIdT = Aws::String>
63 void SetOrganizationResourceId(OrganizationResourceIdT&& value) {
64 m_organizationResourceIdHasBeenSet = true;
65 m_organizationResourceId = std::forward<OrganizationResourceIdT>(value);
66 }
67 template <typename OrganizationResourceIdT = Aws::String>
68 SecurityProfile& WithOrganizationResourceId(OrganizationResourceIdT&& value) {
69 SetOrganizationResourceId(std::forward<OrganizationResourceIdT>(value));
70 return *this;
71 }
73
75
78 inline const Aws::String& GetArn() const { return m_arn; }
79 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
80 template <typename ArnT = Aws::String>
81 void SetArn(ArnT&& value) {
82 m_arnHasBeenSet = true;
83 m_arn = std::forward<ArnT>(value);
84 }
85 template <typename ArnT = Aws::String>
86 SecurityProfile& WithArn(ArnT&& value) {
87 SetArn(std::forward<ArnT>(value));
88 return *this;
89 }
91
93
96 inline const Aws::String& GetSecurityProfileName() const { return m_securityProfileName; }
97 inline bool SecurityProfileNameHasBeenSet() const { return m_securityProfileNameHasBeenSet; }
98 template <typename SecurityProfileNameT = Aws::String>
99 void SetSecurityProfileName(SecurityProfileNameT&& value) {
100 m_securityProfileNameHasBeenSet = true;
101 m_securityProfileName = std::forward<SecurityProfileNameT>(value);
102 }
103 template <typename SecurityProfileNameT = Aws::String>
104 SecurityProfile& WithSecurityProfileName(SecurityProfileNameT&& value) {
105 SetSecurityProfileName(std::forward<SecurityProfileNameT>(value));
106 return *this;
107 }
109
111
114 inline const Aws::String& GetDescription() const { return m_description; }
115 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
116 template <typename DescriptionT = Aws::String>
117 void SetDescription(DescriptionT&& value) {
118 m_descriptionHasBeenSet = true;
119 m_description = std::forward<DescriptionT>(value);
120 }
121 template <typename DescriptionT = Aws::String>
122 SecurityProfile& WithDescription(DescriptionT&& value) {
123 SetDescription(std::forward<DescriptionT>(value));
124 return *this;
125 }
127
129
133 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
134 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
135 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
136 void SetTags(TagsT&& value) {
137 m_tagsHasBeenSet = true;
138 m_tags = std::forward<TagsT>(value);
139 }
140 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
141 SecurityProfile& WithTags(TagsT&& value) {
142 SetTags(std::forward<TagsT>(value));
143 return *this;
144 }
145 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
146 SecurityProfile& AddTags(TagsKeyT&& key, TagsValueT&& value) {
147 m_tagsHasBeenSet = true;
148 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
149 return *this;
150 }
152
154
158 inline const Aws::Map<Aws::String, Aws::String>& GetAllowedAccessControlTags() const { return m_allowedAccessControlTags; }
159 inline bool AllowedAccessControlTagsHasBeenSet() const { return m_allowedAccessControlTagsHasBeenSet; }
160 template <typename AllowedAccessControlTagsT = Aws::Map<Aws::String, Aws::String>>
161 void SetAllowedAccessControlTags(AllowedAccessControlTagsT&& value) {
162 m_allowedAccessControlTagsHasBeenSet = true;
163 m_allowedAccessControlTags = std::forward<AllowedAccessControlTagsT>(value);
164 }
165 template <typename AllowedAccessControlTagsT = Aws::Map<Aws::String, Aws::String>>
166 SecurityProfile& WithAllowedAccessControlTags(AllowedAccessControlTagsT&& value) {
167 SetAllowedAccessControlTags(std::forward<AllowedAccessControlTagsT>(value));
168 return *this;
169 }
170 template <typename AllowedAccessControlTagsKeyT = Aws::String, typename AllowedAccessControlTagsValueT = Aws::String>
171 SecurityProfile& AddAllowedAccessControlTags(AllowedAccessControlTagsKeyT&& key, AllowedAccessControlTagsValueT&& value) {
172 m_allowedAccessControlTagsHasBeenSet = true;
173 m_allowedAccessControlTags.emplace(std::forward<AllowedAccessControlTagsKeyT>(key),
174 std::forward<AllowedAccessControlTagsValueT>(value));
175 return *this;
176 }
178
180
184 inline const Aws::Vector<Aws::String>& GetTagRestrictedResources() const { return m_tagRestrictedResources; }
185 inline bool TagRestrictedResourcesHasBeenSet() const { return m_tagRestrictedResourcesHasBeenSet; }
186 template <typename TagRestrictedResourcesT = Aws::Vector<Aws::String>>
187 void SetTagRestrictedResources(TagRestrictedResourcesT&& value) {
188 m_tagRestrictedResourcesHasBeenSet = true;
189 m_tagRestrictedResources = std::forward<TagRestrictedResourcesT>(value);
190 }
191 template <typename TagRestrictedResourcesT = Aws::Vector<Aws::String>>
192 SecurityProfile& WithTagRestrictedResources(TagRestrictedResourcesT&& value) {
193 SetTagRestrictedResources(std::forward<TagRestrictedResourcesT>(value));
194 return *this;
195 }
196 template <typename TagRestrictedResourcesT = Aws::String>
197 SecurityProfile& AddTagRestrictedResources(TagRestrictedResourcesT&& value) {
198 m_tagRestrictedResourcesHasBeenSet = true;
199 m_tagRestrictedResources.emplace_back(std::forward<TagRestrictedResourcesT>(value));
200 return *this;
201 }
203
205
208 inline const Aws::Utils::DateTime& GetLastModifiedTime() const { return m_lastModifiedTime; }
209 inline bool LastModifiedTimeHasBeenSet() const { return m_lastModifiedTimeHasBeenSet; }
210 template <typename LastModifiedTimeT = Aws::Utils::DateTime>
211 void SetLastModifiedTime(LastModifiedTimeT&& value) {
212 m_lastModifiedTimeHasBeenSet = true;
213 m_lastModifiedTime = std::forward<LastModifiedTimeT>(value);
214 }
215 template <typename LastModifiedTimeT = Aws::Utils::DateTime>
216 SecurityProfile& WithLastModifiedTime(LastModifiedTimeT&& value) {
217 SetLastModifiedTime(std::forward<LastModifiedTimeT>(value));
218 return *this;
219 }
221
223
226 inline const Aws::String& GetLastModifiedRegion() const { return m_lastModifiedRegion; }
227 inline bool LastModifiedRegionHasBeenSet() const { return m_lastModifiedRegionHasBeenSet; }
228 template <typename LastModifiedRegionT = Aws::String>
229 void SetLastModifiedRegion(LastModifiedRegionT&& value) {
230 m_lastModifiedRegionHasBeenSet = true;
231 m_lastModifiedRegion = std::forward<LastModifiedRegionT>(value);
232 }
233 template <typename LastModifiedRegionT = Aws::String>
234 SecurityProfile& WithLastModifiedRegion(LastModifiedRegionT&& value) {
235 SetLastModifiedRegion(std::forward<LastModifiedRegionT>(value));
236 return *this;
237 }
239
241
246 inline const Aws::Vector<Aws::String>& GetHierarchyRestrictedResources() const { return m_hierarchyRestrictedResources; }
247 inline bool HierarchyRestrictedResourcesHasBeenSet() const { return m_hierarchyRestrictedResourcesHasBeenSet; }
248 template <typename HierarchyRestrictedResourcesT = Aws::Vector<Aws::String>>
249 void SetHierarchyRestrictedResources(HierarchyRestrictedResourcesT&& value) {
250 m_hierarchyRestrictedResourcesHasBeenSet = true;
251 m_hierarchyRestrictedResources = std::forward<HierarchyRestrictedResourcesT>(value);
252 }
253 template <typename HierarchyRestrictedResourcesT = Aws::Vector<Aws::String>>
254 SecurityProfile& WithHierarchyRestrictedResources(HierarchyRestrictedResourcesT&& value) {
255 SetHierarchyRestrictedResources(std::forward<HierarchyRestrictedResourcesT>(value));
256 return *this;
257 }
258 template <typename HierarchyRestrictedResourcesT = Aws::String>
259 SecurityProfile& AddHierarchyRestrictedResources(HierarchyRestrictedResourcesT&& value) {
260 m_hierarchyRestrictedResourcesHasBeenSet = true;
261 m_hierarchyRestrictedResources.emplace_back(std::forward<HierarchyRestrictedResourcesT>(value));
262 return *this;
263 }
265
267
271 inline const Aws::String& GetAllowedAccessControlHierarchyGroupId() const { return m_allowedAccessControlHierarchyGroupId; }
272 inline bool AllowedAccessControlHierarchyGroupIdHasBeenSet() const { return m_allowedAccessControlHierarchyGroupIdHasBeenSet; }
273 template <typename AllowedAccessControlHierarchyGroupIdT = Aws::String>
274 void SetAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT&& value) {
275 m_allowedAccessControlHierarchyGroupIdHasBeenSet = true;
276 m_allowedAccessControlHierarchyGroupId = std::forward<AllowedAccessControlHierarchyGroupIdT>(value);
277 }
278 template <typename AllowedAccessControlHierarchyGroupIdT = Aws::String>
279 SecurityProfile& WithAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT&& value) {
280 SetAllowedAccessControlHierarchyGroupId(std::forward<AllowedAccessControlHierarchyGroupIdT>(value));
281 return *this;
282 }
284
286
291 return m_granularAccessControlConfiguration;
292 }
293 inline bool GranularAccessControlConfigurationHasBeenSet() const { return m_granularAccessControlConfigurationHasBeenSet; }
294 template <typename GranularAccessControlConfigurationT = GranularAccessControlConfiguration>
295 void SetGranularAccessControlConfiguration(GranularAccessControlConfigurationT&& value) {
296 m_granularAccessControlConfigurationHasBeenSet = true;
297 m_granularAccessControlConfiguration = std::forward<GranularAccessControlConfigurationT>(value);
298 }
299 template <typename GranularAccessControlConfigurationT = GranularAccessControlConfiguration>
300 SecurityProfile& WithGranularAccessControlConfiguration(GranularAccessControlConfigurationT&& value) {
301 SetGranularAccessControlConfiguration(std::forward<GranularAccessControlConfigurationT>(value));
302 return *this;
303 }
305 private:
306 Aws::String m_id;
307
308 Aws::String m_organizationResourceId;
309
310 Aws::String m_arn;
311
312 Aws::String m_securityProfileName;
313
314 Aws::String m_description;
315
317
318 Aws::Map<Aws::String, Aws::String> m_allowedAccessControlTags;
319
320 Aws::Vector<Aws::String> m_tagRestrictedResources;
321
322 Aws::Utils::DateTime m_lastModifiedTime{};
323
324 Aws::String m_lastModifiedRegion;
325
326 Aws::Vector<Aws::String> m_hierarchyRestrictedResources;
327
328 Aws::String m_allowedAccessControlHierarchyGroupId;
329
330 GranularAccessControlConfiguration m_granularAccessControlConfiguration;
331 bool m_idHasBeenSet = false;
332 bool m_organizationResourceIdHasBeenSet = false;
333 bool m_arnHasBeenSet = false;
334 bool m_securityProfileNameHasBeenSet = false;
335 bool m_descriptionHasBeenSet = false;
336 bool m_tagsHasBeenSet = false;
337 bool m_allowedAccessControlTagsHasBeenSet = false;
338 bool m_tagRestrictedResourcesHasBeenSet = false;
339 bool m_lastModifiedTimeHasBeenSet = false;
340 bool m_lastModifiedRegionHasBeenSet = false;
341 bool m_hierarchyRestrictedResourcesHasBeenSet = false;
342 bool m_allowedAccessControlHierarchyGroupIdHasBeenSet = false;
343 bool m_granularAccessControlConfigurationHasBeenSet = false;
344};
345
346} // namespace Model
347} // namespace Connect
348} // namespace Aws
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::String & GetOrganizationResourceId() const
const Aws::String & GetId() const
SecurityProfile & WithOrganizationResourceId(OrganizationResourceIdT &&value)
void SetAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT &&value)
const Aws::String & GetLastModifiedRegion() const
void SetSecurityProfileName(SecurityProfileNameT &&value)
SecurityProfile & WithAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT &&value)
bool AllowedAccessControlHierarchyGroupIdHasBeenSet() const
SecurityProfile & AddTags(TagsKeyT &&key, TagsValueT &&value)
const GranularAccessControlConfiguration & GetGranularAccessControlConfiguration() const
SecurityProfile & AddAllowedAccessControlTags(AllowedAccessControlTagsKeyT &&key, AllowedAccessControlTagsValueT &&value)
SecurityProfile & WithId(IdT &&value)
AWS_CONNECT_API SecurityProfile(Aws::Utils::Json::JsonView jsonValue)
void SetGranularAccessControlConfiguration(GranularAccessControlConfigurationT &&value)
const Aws::String & GetAllowedAccessControlHierarchyGroupId() const
const Aws::Map< Aws::String, Aws::String > & GetAllowedAccessControlTags() const
const Aws::Utils::DateTime & GetLastModifiedTime() const
SecurityProfile & WithSecurityProfileName(SecurityProfileNameT &&value)
void SetOrganizationResourceId(OrganizationResourceIdT &&value)
void SetLastModifiedRegion(LastModifiedRegionT &&value)
SecurityProfile & WithLastModifiedRegion(LastModifiedRegionT &&value)
SecurityProfile & WithLastModifiedTime(LastModifiedTimeT &&value)
SecurityProfile & WithTags(TagsT &&value)
void SetTagRestrictedResources(TagRestrictedResourcesT &&value)
SecurityProfile & WithGranularAccessControlConfiguration(GranularAccessControlConfigurationT &&value)
AWS_CONNECT_API SecurityProfile()=default
const Aws::String & GetArn() const
SecurityProfile & WithHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&value)
const Aws::String & GetSecurityProfileName() const
SecurityProfile & WithArn(ArnT &&value)
const Aws::Vector< Aws::String > & GetHierarchyRestrictedResources() const
void SetLastModifiedTime(LastModifiedTimeT &&value)
SecurityProfile & WithAllowedAccessControlTags(AllowedAccessControlTagsT &&value)
AWS_CONNECT_API SecurityProfile & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&value)
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
SecurityProfile & AddHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&value)
const Aws::Vector< Aws::String > & GetTagRestrictedResources() const
SecurityProfile & WithDescription(DescriptionT &&value)
void SetDescription(DescriptionT &&value)
SecurityProfile & AddTagRestrictedResources(TagRestrictedResourcesT &&value)
const Aws::String & GetDescription() const
SecurityProfile & WithTagRestrictedResources(TagRestrictedResourcesT &&value)
void SetAllowedAccessControlTags(AllowedAccessControlTagsT &&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
Aws::Utils::Json::JsonValue JsonValue