AWS SDK for C++

AWS SDK for C++ Version 1.11.644

Loading...
Searching...
No Matches
DirectoryDescription.h
1
6#pragma once
7#include <aws/ds/DirectoryService_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/ds/model/DirectorySize.h>
10#include <aws/ds/model/DirectoryEdition.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/ds/model/DirectoryStage.h>
13#include <aws/ds/model/ShareStatus.h>
14#include <aws/ds/model/ShareMethod.h>
15#include <aws/core/utils/DateTime.h>
16#include <aws/ds/model/DirectoryType.h>
17#include <aws/ds/model/DirectoryVpcSettingsDescription.h>
18#include <aws/ds/model/DirectoryConnectSettingsDescription.h>
19#include <aws/ds/model/RadiusSettings.h>
20#include <aws/ds/model/RadiusStatus.h>
21#include <aws/ds/model/OwnerDirectoryDescription.h>
22#include <aws/ds/model/RegionsInfo.h>
23#include <aws/ds/model/OSVersion.h>
24#include <aws/ds/model/HybridSettingsDescription.h>
25#include <utility>
26
27namespace Aws
28{
29namespace Utils
30{
31namespace Json
32{
33 class JsonValue;
34 class JsonView;
35} // namespace Json
36} // namespace Utils
37namespace DirectoryService
38{
39namespace Model
40{
41
49 {
50 public:
51 AWS_DIRECTORYSERVICE_API DirectoryDescription() = default;
52 AWS_DIRECTORYSERVICE_API DirectoryDescription(Aws::Utils::Json::JsonView jsonValue);
53 AWS_DIRECTORYSERVICE_API DirectoryDescription& operator=(Aws::Utils::Json::JsonView jsonValue);
54 AWS_DIRECTORYSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const;
55
56
58
61 inline const Aws::String& GetDirectoryId() const { return m_directoryId; }
62 inline bool DirectoryIdHasBeenSet() const { return m_directoryIdHasBeenSet; }
63 template<typename DirectoryIdT = Aws::String>
64 void SetDirectoryId(DirectoryIdT&& value) { m_directoryIdHasBeenSet = true; m_directoryId = std::forward<DirectoryIdT>(value); }
65 template<typename DirectoryIdT = Aws::String>
66 DirectoryDescription& WithDirectoryId(DirectoryIdT&& value) { SetDirectoryId(std::forward<DirectoryIdT>(value)); return *this;}
68
70
73 inline const Aws::String& GetName() const { return m_name; }
74 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
75 template<typename NameT = Aws::String>
76 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
77 template<typename NameT = Aws::String>
78 DirectoryDescription& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
80
82
85 inline const Aws::String& GetShortName() const { return m_shortName; }
86 inline bool ShortNameHasBeenSet() const { return m_shortNameHasBeenSet; }
87 template<typename ShortNameT = Aws::String>
88 void SetShortName(ShortNameT&& value) { m_shortNameHasBeenSet = true; m_shortName = std::forward<ShortNameT>(value); }
89 template<typename ShortNameT = Aws::String>
90 DirectoryDescription& WithShortName(ShortNameT&& value) { SetShortName(std::forward<ShortNameT>(value)); return *this;}
92
94
97 inline DirectorySize GetSize() const { return m_size; }
98 inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; }
99 inline void SetSize(DirectorySize value) { m_sizeHasBeenSet = true; m_size = value; }
100 inline DirectoryDescription& WithSize(DirectorySize value) { SetSize(value); return *this;}
102
104
107 inline DirectoryEdition GetEdition() const { return m_edition; }
108 inline bool EditionHasBeenSet() const { return m_editionHasBeenSet; }
109 inline void SetEdition(DirectoryEdition value) { m_editionHasBeenSet = true; m_edition = value; }
110 inline DirectoryDescription& WithEdition(DirectoryEdition value) { SetEdition(value); return *this;}
112
114
118 inline const Aws::String& GetAlias() const { return m_alias; }
119 inline bool AliasHasBeenSet() const { return m_aliasHasBeenSet; }
120 template<typename AliasT = Aws::String>
121 void SetAlias(AliasT&& value) { m_aliasHasBeenSet = true; m_alias = std::forward<AliasT>(value); }
122 template<typename AliasT = Aws::String>
123 DirectoryDescription& WithAlias(AliasT&& value) { SetAlias(std::forward<AliasT>(value)); return *this;}
125
127
133 inline const Aws::String& GetAccessUrl() const { return m_accessUrl; }
134 inline bool AccessUrlHasBeenSet() const { return m_accessUrlHasBeenSet; }
135 template<typename AccessUrlT = Aws::String>
136 void SetAccessUrl(AccessUrlT&& value) { m_accessUrlHasBeenSet = true; m_accessUrl = std::forward<AccessUrlT>(value); }
137 template<typename AccessUrlT = Aws::String>
138 DirectoryDescription& WithAccessUrl(AccessUrlT&& value) { SetAccessUrl(std::forward<AccessUrlT>(value)); return *this;}
140
142
145 inline const Aws::String& GetDescription() const { return m_description; }
146 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
147 template<typename DescriptionT = Aws::String>
148 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
149 template<typename DescriptionT = Aws::String>
150 DirectoryDescription& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
152
154
161 inline const Aws::Vector<Aws::String>& GetDnsIpAddrs() const { return m_dnsIpAddrs; }
162 inline bool DnsIpAddrsHasBeenSet() const { return m_dnsIpAddrsHasBeenSet; }
163 template<typename DnsIpAddrsT = Aws::Vector<Aws::String>>
164 void SetDnsIpAddrs(DnsIpAddrsT&& value) { m_dnsIpAddrsHasBeenSet = true; m_dnsIpAddrs = std::forward<DnsIpAddrsT>(value); }
165 template<typename DnsIpAddrsT = Aws::Vector<Aws::String>>
166 DirectoryDescription& WithDnsIpAddrs(DnsIpAddrsT&& value) { SetDnsIpAddrs(std::forward<DnsIpAddrsT>(value)); return *this;}
167 template<typename DnsIpAddrsT = Aws::String>
168 DirectoryDescription& AddDnsIpAddrs(DnsIpAddrsT&& value) { m_dnsIpAddrsHasBeenSet = true; m_dnsIpAddrs.emplace_back(std::forward<DnsIpAddrsT>(value)); return *this; }
170
172
175 inline DirectoryStage GetStage() const { return m_stage; }
176 inline bool StageHasBeenSet() const { return m_stageHasBeenSet; }
177 inline void SetStage(DirectoryStage value) { m_stageHasBeenSet = true; m_stage = value; }
178 inline DirectoryDescription& WithStage(DirectoryStage value) { SetStage(value); return *this;}
180
182
185 inline ShareStatus GetShareStatus() const { return m_shareStatus; }
186 inline bool ShareStatusHasBeenSet() const { return m_shareStatusHasBeenSet; }
187 inline void SetShareStatus(ShareStatus value) { m_shareStatusHasBeenSet = true; m_shareStatus = value; }
188 inline DirectoryDescription& WithShareStatus(ShareStatus value) { SetShareStatus(value); return *this;}
190
192
198 inline ShareMethod GetShareMethod() const { return m_shareMethod; }
199 inline bool ShareMethodHasBeenSet() const { return m_shareMethodHasBeenSet; }
200 inline void SetShareMethod(ShareMethod value) { m_shareMethodHasBeenSet = true; m_shareMethod = value; }
201 inline DirectoryDescription& WithShareMethod(ShareMethod value) { SetShareMethod(value); return *this;}
203
205
211 inline const Aws::String& GetShareNotes() const { return m_shareNotes; }
212 inline bool ShareNotesHasBeenSet() const { return m_shareNotesHasBeenSet; }
213 template<typename ShareNotesT = Aws::String>
214 void SetShareNotes(ShareNotesT&& value) { m_shareNotesHasBeenSet = true; m_shareNotes = std::forward<ShareNotesT>(value); }
215 template<typename ShareNotesT = Aws::String>
216 DirectoryDescription& WithShareNotes(ShareNotesT&& value) { SetShareNotes(std::forward<ShareNotesT>(value)); return *this;}
218
220
223 inline const Aws::Utils::DateTime& GetLaunchTime() const { return m_launchTime; }
224 inline bool LaunchTimeHasBeenSet() const { return m_launchTimeHasBeenSet; }
225 template<typename LaunchTimeT = Aws::Utils::DateTime>
226 void SetLaunchTime(LaunchTimeT&& value) { m_launchTimeHasBeenSet = true; m_launchTime = std::forward<LaunchTimeT>(value); }
227 template<typename LaunchTimeT = Aws::Utils::DateTime>
228 DirectoryDescription& WithLaunchTime(LaunchTimeT&& value) { SetLaunchTime(std::forward<LaunchTimeT>(value)); return *this;}
230
232
235 inline const Aws::Utils::DateTime& GetStageLastUpdatedDateTime() const { return m_stageLastUpdatedDateTime; }
236 inline bool StageLastUpdatedDateTimeHasBeenSet() const { return m_stageLastUpdatedDateTimeHasBeenSet; }
237 template<typename StageLastUpdatedDateTimeT = Aws::Utils::DateTime>
238 void SetStageLastUpdatedDateTime(StageLastUpdatedDateTimeT&& value) { m_stageLastUpdatedDateTimeHasBeenSet = true; m_stageLastUpdatedDateTime = std::forward<StageLastUpdatedDateTimeT>(value); }
239 template<typename StageLastUpdatedDateTimeT = Aws::Utils::DateTime>
240 DirectoryDescription& WithStageLastUpdatedDateTime(StageLastUpdatedDateTimeT&& value) { SetStageLastUpdatedDateTime(std::forward<StageLastUpdatedDateTimeT>(value)); return *this;}
242
244
247 inline DirectoryType GetType() const { return m_type; }
248 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
249 inline void SetType(DirectoryType value) { m_typeHasBeenSet = true; m_type = value; }
250 inline DirectoryDescription& WithType(DirectoryType value) { SetType(value); return *this;}
252
254
259 inline const DirectoryVpcSettingsDescription& GetVpcSettings() const { return m_vpcSettings; }
260 inline bool VpcSettingsHasBeenSet() const { return m_vpcSettingsHasBeenSet; }
261 template<typename VpcSettingsT = DirectoryVpcSettingsDescription>
262 void SetVpcSettings(VpcSettingsT&& value) { m_vpcSettingsHasBeenSet = true; m_vpcSettings = std::forward<VpcSettingsT>(value); }
263 template<typename VpcSettingsT = DirectoryVpcSettingsDescription>
264 DirectoryDescription& WithVpcSettings(VpcSettingsT&& value) { SetVpcSettings(std::forward<VpcSettingsT>(value)); return *this;}
266
268
273 inline const DirectoryConnectSettingsDescription& GetConnectSettings() const { return m_connectSettings; }
274 inline bool ConnectSettingsHasBeenSet() const { return m_connectSettingsHasBeenSet; }
275 template<typename ConnectSettingsT = DirectoryConnectSettingsDescription>
276 void SetConnectSettings(ConnectSettingsT&& value) { m_connectSettingsHasBeenSet = true; m_connectSettings = std::forward<ConnectSettingsT>(value); }
277 template<typename ConnectSettingsT = DirectoryConnectSettingsDescription>
278 DirectoryDescription& WithConnectSettings(ConnectSettingsT&& value) { SetConnectSettings(std::forward<ConnectSettingsT>(value)); return *this;}
280
282
286 inline const RadiusSettings& GetRadiusSettings() const { return m_radiusSettings; }
287 inline bool RadiusSettingsHasBeenSet() const { return m_radiusSettingsHasBeenSet; }
288 template<typename RadiusSettingsT = RadiusSettings>
289 void SetRadiusSettings(RadiusSettingsT&& value) { m_radiusSettingsHasBeenSet = true; m_radiusSettings = std::forward<RadiusSettingsT>(value); }
290 template<typename RadiusSettingsT = RadiusSettings>
291 DirectoryDescription& WithRadiusSettings(RadiusSettingsT&& value) { SetRadiusSettings(std::forward<RadiusSettingsT>(value)); return *this;}
293
295
298 inline RadiusStatus GetRadiusStatus() const { return m_radiusStatus; }
299 inline bool RadiusStatusHasBeenSet() const { return m_radiusStatusHasBeenSet; }
300 inline void SetRadiusStatus(RadiusStatus value) { m_radiusStatusHasBeenSet = true; m_radiusStatus = value; }
303
305
308 inline const Aws::String& GetStageReason() const { return m_stageReason; }
309 inline bool StageReasonHasBeenSet() const { return m_stageReasonHasBeenSet; }
310 template<typename StageReasonT = Aws::String>
311 void SetStageReason(StageReasonT&& value) { m_stageReasonHasBeenSet = true; m_stageReason = std::forward<StageReasonT>(value); }
312 template<typename StageReasonT = Aws::String>
313 DirectoryDescription& WithStageReason(StageReasonT&& value) { SetStageReason(std::forward<StageReasonT>(value)); return *this;}
315
317
321 inline bool GetSsoEnabled() const { return m_ssoEnabled; }
322 inline bool SsoEnabledHasBeenSet() const { return m_ssoEnabledHasBeenSet; }
323 inline void SetSsoEnabled(bool value) { m_ssoEnabledHasBeenSet = true; m_ssoEnabled = value; }
324 inline DirectoryDescription& WithSsoEnabled(bool value) { SetSsoEnabled(value); return *this;}
326
328
332 inline int GetDesiredNumberOfDomainControllers() const { return m_desiredNumberOfDomainControllers; }
333 inline bool DesiredNumberOfDomainControllersHasBeenSet() const { return m_desiredNumberOfDomainControllersHasBeenSet; }
334 inline void SetDesiredNumberOfDomainControllers(int value) { m_desiredNumberOfDomainControllersHasBeenSet = true; m_desiredNumberOfDomainControllers = value; }
337
339
343 inline const OwnerDirectoryDescription& GetOwnerDirectoryDescription() const { return m_ownerDirectoryDescription; }
344 inline bool OwnerDirectoryDescriptionHasBeenSet() const { return m_ownerDirectoryDescriptionHasBeenSet; }
345 template<typename OwnerDirectoryDescriptionT = OwnerDirectoryDescription>
346 void SetOwnerDirectoryDescription(OwnerDirectoryDescriptionT&& value) { m_ownerDirectoryDescriptionHasBeenSet = true; m_ownerDirectoryDescription = std::forward<OwnerDirectoryDescriptionT>(value); }
347 template<typename OwnerDirectoryDescriptionT = OwnerDirectoryDescription>
348 DirectoryDescription& WithOwnerDirectoryDescription(OwnerDirectoryDescriptionT&& value) { SetOwnerDirectoryDescription(std::forward<OwnerDirectoryDescriptionT>(value)); return *this;}
350
352
355 inline const RegionsInfo& GetRegionsInfo() const { return m_regionsInfo; }
356 inline bool RegionsInfoHasBeenSet() const { return m_regionsInfoHasBeenSet; }
357 template<typename RegionsInfoT = RegionsInfo>
358 void SetRegionsInfo(RegionsInfoT&& value) { m_regionsInfoHasBeenSet = true; m_regionsInfo = std::forward<RegionsInfoT>(value); }
359 template<typename RegionsInfoT = RegionsInfo>
360 DirectoryDescription& WithRegionsInfo(RegionsInfoT&& value) { SetRegionsInfo(std::forward<RegionsInfoT>(value)); return *this;}
362
364
367 inline OSVersion GetOsVersion() const { return m_osVersion; }
368 inline bool OsVersionHasBeenSet() const { return m_osVersionHasBeenSet; }
369 inline void SetOsVersion(OSVersion value) { m_osVersionHasBeenSet = true; m_osVersion = value; }
370 inline DirectoryDescription& WithOsVersion(OSVersion value) { SetOsVersion(value); return *this;}
372
374
379 inline const HybridSettingsDescription& GetHybridSettings() const { return m_hybridSettings; }
380 inline bool HybridSettingsHasBeenSet() const { return m_hybridSettingsHasBeenSet; }
381 template<typename HybridSettingsT = HybridSettingsDescription>
382 void SetHybridSettings(HybridSettingsT&& value) { m_hybridSettingsHasBeenSet = true; m_hybridSettings = std::forward<HybridSettingsT>(value); }
383 template<typename HybridSettingsT = HybridSettingsDescription>
384 DirectoryDescription& WithHybridSettings(HybridSettingsT&& value) { SetHybridSettings(std::forward<HybridSettingsT>(value)); return *this;}
386 private:
387
388 Aws::String m_directoryId;
389 bool m_directoryIdHasBeenSet = false;
390
391 Aws::String m_name;
392 bool m_nameHasBeenSet = false;
393
394 Aws::String m_shortName;
395 bool m_shortNameHasBeenSet = false;
396
398 bool m_sizeHasBeenSet = false;
399
401 bool m_editionHasBeenSet = false;
402
403 Aws::String m_alias;
404 bool m_aliasHasBeenSet = false;
405
406 Aws::String m_accessUrl;
407 bool m_accessUrlHasBeenSet = false;
408
409 Aws::String m_description;
410 bool m_descriptionHasBeenSet = false;
411
412 Aws::Vector<Aws::String> m_dnsIpAddrs;
413 bool m_dnsIpAddrsHasBeenSet = false;
414
416 bool m_stageHasBeenSet = false;
417
418 ShareStatus m_shareStatus{ShareStatus::NOT_SET};
419 bool m_shareStatusHasBeenSet = false;
420
421 ShareMethod m_shareMethod{ShareMethod::NOT_SET};
422 bool m_shareMethodHasBeenSet = false;
423
424 Aws::String m_shareNotes;
425 bool m_shareNotesHasBeenSet = false;
426
427 Aws::Utils::DateTime m_launchTime{};
428 bool m_launchTimeHasBeenSet = false;
429
430 Aws::Utils::DateTime m_stageLastUpdatedDateTime{};
431 bool m_stageLastUpdatedDateTimeHasBeenSet = false;
432
434 bool m_typeHasBeenSet = false;
435
436 DirectoryVpcSettingsDescription m_vpcSettings;
437 bool m_vpcSettingsHasBeenSet = false;
438
439 DirectoryConnectSettingsDescription m_connectSettings;
440 bool m_connectSettingsHasBeenSet = false;
441
442 RadiusSettings m_radiusSettings;
443 bool m_radiusSettingsHasBeenSet = false;
444
445 RadiusStatus m_radiusStatus{RadiusStatus::NOT_SET};
446 bool m_radiusStatusHasBeenSet = false;
447
448 Aws::String m_stageReason;
449 bool m_stageReasonHasBeenSet = false;
450
451 bool m_ssoEnabled{false};
452 bool m_ssoEnabledHasBeenSet = false;
453
454 int m_desiredNumberOfDomainControllers{0};
455 bool m_desiredNumberOfDomainControllersHasBeenSet = false;
456
457 OwnerDirectoryDescription m_ownerDirectoryDescription;
458 bool m_ownerDirectoryDescriptionHasBeenSet = false;
459
460 RegionsInfo m_regionsInfo;
461 bool m_regionsInfoHasBeenSet = false;
462
463 OSVersion m_osVersion{OSVersion::NOT_SET};
464 bool m_osVersionHasBeenSet = false;
465
466 HybridSettingsDescription m_hybridSettings;
467 bool m_hybridSettingsHasBeenSet = false;
468 };
469
470} // namespace Model
471} // namespace DirectoryService
472} // namespace Aws
const Aws::Utils::DateTime & GetStageLastUpdatedDateTime() const
const Aws::Vector< Aws::String > & GetDnsIpAddrs() const
DirectoryDescription & WithHybridSettings(HybridSettingsT &&value)
DirectoryDescription & WithDnsIpAddrs(DnsIpAddrsT &&value)
AWS_DIRECTORYSERVICE_API DirectoryDescription & operator=(Aws::Utils::Json::JsonView jsonValue)
DirectoryDescription & WithStageReason(StageReasonT &&value)
void SetStageLastUpdatedDateTime(StageLastUpdatedDateTimeT &&value)
AWS_DIRECTORYSERVICE_API DirectoryDescription()=default
DirectoryDescription & WithDirectoryId(DirectoryIdT &&value)
DirectoryDescription & WithStage(DirectoryStage value)
DirectoryDescription & WithOwnerDirectoryDescription(OwnerDirectoryDescriptionT &&value)
DirectoryDescription & WithEdition(DirectoryEdition value)
DirectoryDescription & AddDnsIpAddrs(DnsIpAddrsT &&value)
DirectoryDescription & WithConnectSettings(ConnectSettingsT &&value)
DirectoryDescription & WithShortName(ShortNameT &&value)
AWS_DIRECTORYSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
DirectoryDescription & WithShareStatus(ShareStatus value)
DirectoryDescription & WithShareMethod(ShareMethod value)
DirectoryDescription & WithLaunchTime(LaunchTimeT &&value)
DirectoryDescription & WithDescription(DescriptionT &&value)
DirectoryDescription & WithVpcSettings(VpcSettingsT &&value)
const DirectoryConnectSettingsDescription & GetConnectSettings() const
DirectoryDescription & WithAccessUrl(AccessUrlT &&value)
DirectoryDescription & WithShareNotes(ShareNotesT &&value)
DirectoryDescription & WithStageLastUpdatedDateTime(StageLastUpdatedDateTimeT &&value)
const OwnerDirectoryDescription & GetOwnerDirectoryDescription() const
DirectoryDescription & WithOsVersion(OSVersion value)
DirectoryDescription & WithAlias(AliasT &&value)
DirectoryDescription & WithRadiusStatus(RadiusStatus value)
DirectoryDescription & WithRadiusSettings(RadiusSettingsT &&value)
DirectoryDescription & WithType(DirectoryType value)
DirectoryDescription & WithDesiredNumberOfDomainControllers(int value)
const DirectoryVpcSettingsDescription & GetVpcSettings() const
void SetOwnerDirectoryDescription(OwnerDirectoryDescriptionT &&value)
DirectoryDescription & WithRegionsInfo(RegionsInfoT &&value)
const Aws::Utils::DateTime & GetLaunchTime() const
const HybridSettingsDescription & GetHybridSettings() const
DirectoryDescription & WithName(NameT &&value)
DirectoryDescription & WithSize(DirectorySize value)
AWS_DIRECTORYSERVICE_API DirectoryDescription(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue