AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
MobileDeviceAccessRule.h
1
6#pragma once
7#include <aws/workmail/WorkMail_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/workmail/model/MobileDeviceAccessRuleEffect.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/DateTime.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace WorkMail
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_WORKMAIL_API MobileDeviceAccessRule() = default;
41 AWS_WORKMAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const Aws::String& GetMobileDeviceAccessRuleId() const { return m_mobileDeviceAccessRuleId; }
49 inline bool MobileDeviceAccessRuleIdHasBeenSet() const { return m_mobileDeviceAccessRuleIdHasBeenSet; }
50 template<typename MobileDeviceAccessRuleIdT = Aws::String>
51 void SetMobileDeviceAccessRuleId(MobileDeviceAccessRuleIdT&& value) { m_mobileDeviceAccessRuleIdHasBeenSet = true; m_mobileDeviceAccessRuleId = std::forward<MobileDeviceAccessRuleIdT>(value); }
52 template<typename MobileDeviceAccessRuleIdT = Aws::String>
53 MobileDeviceAccessRule& WithMobileDeviceAccessRuleId(MobileDeviceAccessRuleIdT&& value) { SetMobileDeviceAccessRuleId(std::forward<MobileDeviceAccessRuleIdT>(value)); return *this;}
55
57
60 inline const Aws::String& GetName() const { return m_name; }
61 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
62 template<typename NameT = Aws::String>
63 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
64 template<typename NameT = Aws::String>
65 MobileDeviceAccessRule& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
67
69
72 inline const Aws::String& GetDescription() const { return m_description; }
73 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
74 template<typename DescriptionT = Aws::String>
75 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
76 template<typename DescriptionT = Aws::String>
77 MobileDeviceAccessRule& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
79
81
85 inline MobileDeviceAccessRuleEffect GetEffect() const { return m_effect; }
86 inline bool EffectHasBeenSet() const { return m_effectHasBeenSet; }
87 inline void SetEffect(MobileDeviceAccessRuleEffect value) { m_effectHasBeenSet = true; m_effect = value; }
90
92
95 inline const Aws::Vector<Aws::String>& GetDeviceTypes() const { return m_deviceTypes; }
96 inline bool DeviceTypesHasBeenSet() const { return m_deviceTypesHasBeenSet; }
97 template<typename DeviceTypesT = Aws::Vector<Aws::String>>
98 void SetDeviceTypes(DeviceTypesT&& value) { m_deviceTypesHasBeenSet = true; m_deviceTypes = std::forward<DeviceTypesT>(value); }
99 template<typename DeviceTypesT = Aws::Vector<Aws::String>>
100 MobileDeviceAccessRule& WithDeviceTypes(DeviceTypesT&& value) { SetDeviceTypes(std::forward<DeviceTypesT>(value)); return *this;}
101 template<typename DeviceTypesT = Aws::String>
102 MobileDeviceAccessRule& AddDeviceTypes(DeviceTypesT&& value) { m_deviceTypesHasBeenSet = true; m_deviceTypes.emplace_back(std::forward<DeviceTypesT>(value)); return *this; }
104
106
110 inline const Aws::Vector<Aws::String>& GetNotDeviceTypes() const { return m_notDeviceTypes; }
111 inline bool NotDeviceTypesHasBeenSet() const { return m_notDeviceTypesHasBeenSet; }
112 template<typename NotDeviceTypesT = Aws::Vector<Aws::String>>
113 void SetNotDeviceTypes(NotDeviceTypesT&& value) { m_notDeviceTypesHasBeenSet = true; m_notDeviceTypes = std::forward<NotDeviceTypesT>(value); }
114 template<typename NotDeviceTypesT = Aws::Vector<Aws::String>>
115 MobileDeviceAccessRule& WithNotDeviceTypes(NotDeviceTypesT&& value) { SetNotDeviceTypes(std::forward<NotDeviceTypesT>(value)); return *this;}
116 template<typename NotDeviceTypesT = Aws::String>
117 MobileDeviceAccessRule& AddNotDeviceTypes(NotDeviceTypesT&& value) { m_notDeviceTypesHasBeenSet = true; m_notDeviceTypes.emplace_back(std::forward<NotDeviceTypesT>(value)); return *this; }
119
121
124 inline const Aws::Vector<Aws::String>& GetDeviceModels() const { return m_deviceModels; }
125 inline bool DeviceModelsHasBeenSet() const { return m_deviceModelsHasBeenSet; }
126 template<typename DeviceModelsT = Aws::Vector<Aws::String>>
127 void SetDeviceModels(DeviceModelsT&& value) { m_deviceModelsHasBeenSet = true; m_deviceModels = std::forward<DeviceModelsT>(value); }
128 template<typename DeviceModelsT = Aws::Vector<Aws::String>>
129 MobileDeviceAccessRule& WithDeviceModels(DeviceModelsT&& value) { SetDeviceModels(std::forward<DeviceModelsT>(value)); return *this;}
130 template<typename DeviceModelsT = Aws::String>
131 MobileDeviceAccessRule& AddDeviceModels(DeviceModelsT&& value) { m_deviceModelsHasBeenSet = true; m_deviceModels.emplace_back(std::forward<DeviceModelsT>(value)); return *this; }
133
135
139 inline const Aws::Vector<Aws::String>& GetNotDeviceModels() const { return m_notDeviceModels; }
140 inline bool NotDeviceModelsHasBeenSet() const { return m_notDeviceModelsHasBeenSet; }
141 template<typename NotDeviceModelsT = Aws::Vector<Aws::String>>
142 void SetNotDeviceModels(NotDeviceModelsT&& value) { m_notDeviceModelsHasBeenSet = true; m_notDeviceModels = std::forward<NotDeviceModelsT>(value); }
143 template<typename NotDeviceModelsT = Aws::Vector<Aws::String>>
144 MobileDeviceAccessRule& WithNotDeviceModels(NotDeviceModelsT&& value) { SetNotDeviceModels(std::forward<NotDeviceModelsT>(value)); return *this;}
145 template<typename NotDeviceModelsT = Aws::String>
146 MobileDeviceAccessRule& AddNotDeviceModels(NotDeviceModelsT&& value) { m_notDeviceModelsHasBeenSet = true; m_notDeviceModels.emplace_back(std::forward<NotDeviceModelsT>(value)); return *this; }
148
150
153 inline const Aws::Vector<Aws::String>& GetDeviceOperatingSystems() const { return m_deviceOperatingSystems; }
154 inline bool DeviceOperatingSystemsHasBeenSet() const { return m_deviceOperatingSystemsHasBeenSet; }
155 template<typename DeviceOperatingSystemsT = Aws::Vector<Aws::String>>
156 void SetDeviceOperatingSystems(DeviceOperatingSystemsT&& value) { m_deviceOperatingSystemsHasBeenSet = true; m_deviceOperatingSystems = std::forward<DeviceOperatingSystemsT>(value); }
157 template<typename DeviceOperatingSystemsT = Aws::Vector<Aws::String>>
158 MobileDeviceAccessRule& WithDeviceOperatingSystems(DeviceOperatingSystemsT&& value) { SetDeviceOperatingSystems(std::forward<DeviceOperatingSystemsT>(value)); return *this;}
159 template<typename DeviceOperatingSystemsT = Aws::String>
160 MobileDeviceAccessRule& AddDeviceOperatingSystems(DeviceOperatingSystemsT&& value) { m_deviceOperatingSystemsHasBeenSet = true; m_deviceOperatingSystems.emplace_back(std::forward<DeviceOperatingSystemsT>(value)); return *this; }
162
164
168 inline const Aws::Vector<Aws::String>& GetNotDeviceOperatingSystems() const { return m_notDeviceOperatingSystems; }
169 inline bool NotDeviceOperatingSystemsHasBeenSet() const { return m_notDeviceOperatingSystemsHasBeenSet; }
170 template<typename NotDeviceOperatingSystemsT = Aws::Vector<Aws::String>>
171 void SetNotDeviceOperatingSystems(NotDeviceOperatingSystemsT&& value) { m_notDeviceOperatingSystemsHasBeenSet = true; m_notDeviceOperatingSystems = std::forward<NotDeviceOperatingSystemsT>(value); }
172 template<typename NotDeviceOperatingSystemsT = Aws::Vector<Aws::String>>
173 MobileDeviceAccessRule& WithNotDeviceOperatingSystems(NotDeviceOperatingSystemsT&& value) { SetNotDeviceOperatingSystems(std::forward<NotDeviceOperatingSystemsT>(value)); return *this;}
174 template<typename NotDeviceOperatingSystemsT = Aws::String>
175 MobileDeviceAccessRule& AddNotDeviceOperatingSystems(NotDeviceOperatingSystemsT&& value) { m_notDeviceOperatingSystemsHasBeenSet = true; m_notDeviceOperatingSystems.emplace_back(std::forward<NotDeviceOperatingSystemsT>(value)); return *this; }
177
179
182 inline const Aws::Vector<Aws::String>& GetDeviceUserAgents() const { return m_deviceUserAgents; }
183 inline bool DeviceUserAgentsHasBeenSet() const { return m_deviceUserAgentsHasBeenSet; }
184 template<typename DeviceUserAgentsT = Aws::Vector<Aws::String>>
185 void SetDeviceUserAgents(DeviceUserAgentsT&& value) { m_deviceUserAgentsHasBeenSet = true; m_deviceUserAgents = std::forward<DeviceUserAgentsT>(value); }
186 template<typename DeviceUserAgentsT = Aws::Vector<Aws::String>>
187 MobileDeviceAccessRule& WithDeviceUserAgents(DeviceUserAgentsT&& value) { SetDeviceUserAgents(std::forward<DeviceUserAgentsT>(value)); return *this;}
188 template<typename DeviceUserAgentsT = Aws::String>
189 MobileDeviceAccessRule& AddDeviceUserAgents(DeviceUserAgentsT&& value) { m_deviceUserAgentsHasBeenSet = true; m_deviceUserAgents.emplace_back(std::forward<DeviceUserAgentsT>(value)); return *this; }
191
193
197 inline const Aws::Vector<Aws::String>& GetNotDeviceUserAgents() const { return m_notDeviceUserAgents; }
198 inline bool NotDeviceUserAgentsHasBeenSet() const { return m_notDeviceUserAgentsHasBeenSet; }
199 template<typename NotDeviceUserAgentsT = Aws::Vector<Aws::String>>
200 void SetNotDeviceUserAgents(NotDeviceUserAgentsT&& value) { m_notDeviceUserAgentsHasBeenSet = true; m_notDeviceUserAgents = std::forward<NotDeviceUserAgentsT>(value); }
201 template<typename NotDeviceUserAgentsT = Aws::Vector<Aws::String>>
202 MobileDeviceAccessRule& WithNotDeviceUserAgents(NotDeviceUserAgentsT&& value) { SetNotDeviceUserAgents(std::forward<NotDeviceUserAgentsT>(value)); return *this;}
203 template<typename NotDeviceUserAgentsT = Aws::String>
204 MobileDeviceAccessRule& AddNotDeviceUserAgents(NotDeviceUserAgentsT&& value) { m_notDeviceUserAgentsHasBeenSet = true; m_notDeviceUserAgents.emplace_back(std::forward<NotDeviceUserAgentsT>(value)); return *this; }
206
208
211 inline const Aws::Utils::DateTime& GetDateCreated() const { return m_dateCreated; }
212 inline bool DateCreatedHasBeenSet() const { return m_dateCreatedHasBeenSet; }
213 template<typename DateCreatedT = Aws::Utils::DateTime>
214 void SetDateCreated(DateCreatedT&& value) { m_dateCreatedHasBeenSet = true; m_dateCreated = std::forward<DateCreatedT>(value); }
215 template<typename DateCreatedT = Aws::Utils::DateTime>
216 MobileDeviceAccessRule& WithDateCreated(DateCreatedT&& value) { SetDateCreated(std::forward<DateCreatedT>(value)); return *this;}
218
220
223 inline const Aws::Utils::DateTime& GetDateModified() const { return m_dateModified; }
224 inline bool DateModifiedHasBeenSet() const { return m_dateModifiedHasBeenSet; }
225 template<typename DateModifiedT = Aws::Utils::DateTime>
226 void SetDateModified(DateModifiedT&& value) { m_dateModifiedHasBeenSet = true; m_dateModified = std::forward<DateModifiedT>(value); }
227 template<typename DateModifiedT = Aws::Utils::DateTime>
228 MobileDeviceAccessRule& WithDateModified(DateModifiedT&& value) { SetDateModified(std::forward<DateModifiedT>(value)); return *this;}
230 private:
231
232 Aws::String m_mobileDeviceAccessRuleId;
233 bool m_mobileDeviceAccessRuleIdHasBeenSet = false;
234
235 Aws::String m_name;
236 bool m_nameHasBeenSet = false;
237
238 Aws::String m_description;
239 bool m_descriptionHasBeenSet = false;
240
242 bool m_effectHasBeenSet = false;
243
244 Aws::Vector<Aws::String> m_deviceTypes;
245 bool m_deviceTypesHasBeenSet = false;
246
247 Aws::Vector<Aws::String> m_notDeviceTypes;
248 bool m_notDeviceTypesHasBeenSet = false;
249
250 Aws::Vector<Aws::String> m_deviceModels;
251 bool m_deviceModelsHasBeenSet = false;
252
253 Aws::Vector<Aws::String> m_notDeviceModels;
254 bool m_notDeviceModelsHasBeenSet = false;
255
256 Aws::Vector<Aws::String> m_deviceOperatingSystems;
257 bool m_deviceOperatingSystemsHasBeenSet = false;
258
259 Aws::Vector<Aws::String> m_notDeviceOperatingSystems;
260 bool m_notDeviceOperatingSystemsHasBeenSet = false;
261
262 Aws::Vector<Aws::String> m_deviceUserAgents;
263 bool m_deviceUserAgentsHasBeenSet = false;
264
265 Aws::Vector<Aws::String> m_notDeviceUserAgents;
266 bool m_notDeviceUserAgentsHasBeenSet = false;
267
268 Aws::Utils::DateTime m_dateCreated{};
269 bool m_dateCreatedHasBeenSet = false;
270
271 Aws::Utils::DateTime m_dateModified{};
272 bool m_dateModifiedHasBeenSet = false;
273 };
274
275} // namespace Model
276} // namespace WorkMail
277} // namespace Aws
AWS_WORKMAIL_API MobileDeviceAccessRule()=default
AWS_WORKMAIL_API MobileDeviceAccessRule(Aws::Utils::Json::JsonView jsonValue)
void SetDeviceUserAgents(DeviceUserAgentsT &&value)
const Aws::Vector< Aws::String > & GetNotDeviceOperatingSystems() const
const Aws::Vector< Aws::String > & GetNotDeviceTypes() const
MobileDeviceAccessRule & WithDeviceOperatingSystems(DeviceOperatingSystemsT &&value)
void SetNotDeviceOperatingSystems(NotDeviceOperatingSystemsT &&value)
AWS_WORKMAIL_API MobileDeviceAccessRule & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetDeviceOperatingSystems(DeviceOperatingSystemsT &&value)
MobileDeviceAccessRule & WithName(NameT &&value)
MobileDeviceAccessRule & WithDescription(DescriptionT &&value)
MobileDeviceAccessRule & WithDeviceUserAgents(DeviceUserAgentsT &&value)
const Aws::Utils::DateTime & GetDateCreated() const
MobileDeviceAccessRule & WithNotDeviceUserAgents(NotDeviceUserAgentsT &&value)
MobileDeviceAccessRule & WithDeviceModels(DeviceModelsT &&value)
const Aws::Utils::DateTime & GetDateModified() const
MobileDeviceAccessRule & WithMobileDeviceAccessRuleId(MobileDeviceAccessRuleIdT &&value)
const Aws::Vector< Aws::String > & GetDeviceTypes() const
MobileDeviceAccessRule & WithDateCreated(DateCreatedT &&value)
const Aws::Vector< Aws::String > & GetNotDeviceUserAgents() const
const Aws::Vector< Aws::String > & GetNotDeviceModels() const
void SetMobileDeviceAccessRuleId(MobileDeviceAccessRuleIdT &&value)
MobileDeviceAccessRule & AddNotDeviceUserAgents(NotDeviceUserAgentsT &&value)
MobileDeviceAccessRule & AddNotDeviceOperatingSystems(NotDeviceOperatingSystemsT &&value)
MobileDeviceAccessRule & WithNotDeviceModels(NotDeviceModelsT &&value)
MobileDeviceAccessRule & AddDeviceTypes(DeviceTypesT &&value)
MobileDeviceAccessRule & WithDeviceTypes(DeviceTypesT &&value)
MobileDeviceAccessRule & AddNotDeviceModels(NotDeviceModelsT &&value)
const Aws::Vector< Aws::String > & GetDeviceUserAgents() const
MobileDeviceAccessRule & AddDeviceOperatingSystems(DeviceOperatingSystemsT &&value)
MobileDeviceAccessRule & WithDateModified(DateModifiedT &&value)
AWS_WORKMAIL_API Aws::Utils::Json::JsonValue Jsonize() const
MobileDeviceAccessRule & WithEffect(MobileDeviceAccessRuleEffect value)
MobileDeviceAccessRule & AddNotDeviceTypes(NotDeviceTypesT &&value)
const Aws::Vector< Aws::String > & GetDeviceModels() const
MobileDeviceAccessRule & AddDeviceModels(DeviceModelsT &&value)
MobileDeviceAccessRuleEffect GetEffect() const
MobileDeviceAccessRule & WithNotDeviceOperatingSystems(NotDeviceOperatingSystemsT &&value)
const Aws::Vector< Aws::String > & GetDeviceOperatingSystems() const
MobileDeviceAccessRule & WithNotDeviceTypes(NotDeviceTypesT &&value)
MobileDeviceAccessRule & AddDeviceUserAgents(DeviceUserAgentsT &&value)
void SetEffect(MobileDeviceAccessRuleEffect value)
void SetNotDeviceUserAgents(NotDeviceUserAgentsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue