7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ds/DirectoryService_EXPORTS.h>
11#include <aws/ds/model/DirectoryConnectSettingsDescription.h>
12#include <aws/ds/model/DirectoryEdition.h>
13#include <aws/ds/model/DirectorySize.h>
14#include <aws/ds/model/DirectoryStage.h>
15#include <aws/ds/model/DirectoryType.h>
16#include <aws/ds/model/DirectoryVpcSettingsDescription.h>
17#include <aws/ds/model/HybridSettingsDescription.h>
18#include <aws/ds/model/NetworkType.h>
19#include <aws/ds/model/OSVersion.h>
20#include <aws/ds/model/OwnerDirectoryDescription.h>
21#include <aws/ds/model/RadiusSettings.h>
22#include <aws/ds/model/RadiusStatus.h>
23#include <aws/ds/model/RegionsInfo.h>
24#include <aws/ds/model/ShareMethod.h>
25#include <aws/ds/model/ShareStatus.h>
36namespace DirectoryService {
58 template <
typename DirectoryIdT = Aws::String>
60 m_directoryIdHasBeenSet =
true;
61 m_directoryId = std::forward<DirectoryIdT>(value);
63 template <
typename DirectoryIdT = Aws::String>
76 template <
typename NameT = Aws::String>
78 m_nameHasBeenSet =
true;
79 m_name = std::forward<NameT>(value);
81 template <
typename NameT = Aws::String>
83 SetName(std::forward<NameT>(value));
94 template <
typename ShortNameT = Aws::String>
96 m_shortNameHasBeenSet =
true;
97 m_shortName = std::forward<ShortNameT>(value);
99 template <
typename ShortNameT = Aws::String>
113 m_sizeHasBeenSet =
true;
129 m_editionHasBeenSet =
true;
145 template <
typename AliasT = Aws::String>
147 m_aliasHasBeenSet =
true;
148 m_alias = std::forward<AliasT>(value);
150 template <
typename AliasT = Aws::String>
152 SetAlias(std::forward<AliasT>(value));
166 template <
typename AccessUrlT = Aws::String>
168 m_accessUrlHasBeenSet =
true;
169 m_accessUrl = std::forward<AccessUrlT>(value);
171 template <
typename AccessUrlT = Aws::String>
184 template <
typename DescriptionT = Aws::String>
186 m_descriptionHasBeenSet =
true;
187 m_description = std::forward<DescriptionT>(value);
189 template <
typename DescriptionT = Aws::String>
205 template <
typename DnsIpAddrsT = Aws::Vector<Aws::String>>
207 m_dnsIpAddrsHasBeenSet =
true;
208 m_dnsIpAddrs = std::forward<DnsIpAddrsT>(value);
210 template <
typename DnsIpAddrsT = Aws::Vector<Aws::String>>
215 template <
typename DnsIpAddrsT = Aws::String>
217 m_dnsIpAddrsHasBeenSet =
true;
218 m_dnsIpAddrs.emplace_back(std::forward<DnsIpAddrsT>(value));
233 template <
typename DnsIpv6AddrsT = Aws::Vector<Aws::String>>
235 m_dnsIpv6AddrsHasBeenSet =
true;
236 m_dnsIpv6Addrs = std::forward<DnsIpv6AddrsT>(value);
238 template <
typename DnsIpv6AddrsT = Aws::Vector<Aws::String>>
243 template <
typename DnsIpv6AddrsT = Aws::String>
245 m_dnsIpv6AddrsHasBeenSet =
true;
246 m_dnsIpv6Addrs.emplace_back(std::forward<DnsIpv6AddrsT>(value));
258 m_stageHasBeenSet =
true;
274 m_shareStatusHasBeenSet =
true;
275 m_shareStatus = value;
293 m_shareMethodHasBeenSet =
true;
294 m_shareMethod = value;
311 template <
typename ShareNotesT = Aws::String>
313 m_shareNotesHasBeenSet =
true;
314 m_shareNotes = std::forward<ShareNotesT>(value);
316 template <
typename ShareNotesT = Aws::String>
329 template <
typename LaunchTimeT = Aws::Utils::DateTime>
331 m_launchTimeHasBeenSet =
true;
332 m_launchTime = std::forward<LaunchTimeT>(value);
334 template <
typename LaunchTimeT = Aws::Utils::DateTime>
347 template <
typename StageLastUpdatedDateTimeT = Aws::Utils::DateTime>
349 m_stageLastUpdatedDateTimeHasBeenSet =
true;
350 m_stageLastUpdatedDateTime = std::forward<StageLastUpdatedDateTimeT>(value);
352 template <
typename StageLastUpdatedDateTimeT = Aws::Utils::DateTime>
366 m_typeHasBeenSet =
true;
383 template <
typename VpcSettingsT = DirectoryVpcSettingsDescription>
385 m_vpcSettingsHasBeenSet =
true;
386 m_vpcSettings = std::forward<VpcSettingsT>(value);
388 template <
typename VpcSettingsT = DirectoryVpcSettingsDescription>
403 template <
typename ConnectSettingsT = DirectoryConnectSettingsDescription>
405 m_connectSettingsHasBeenSet =
true;
406 m_connectSettings = std::forward<ConnectSettingsT>(value);
408 template <
typename ConnectSettingsT = DirectoryConnectSettingsDescription>
422 template <
typename RadiusSettingsT = RadiusSettings>
424 m_radiusSettingsHasBeenSet =
true;
425 m_radiusSettings = std::forward<RadiusSettingsT>(value);
427 template <
typename RadiusSettingsT = RadiusSettings>
441 m_radiusStatusHasBeenSet =
true;
442 m_radiusStatus = value;
456 template <
typename StageReasonT = Aws::String>
458 m_stageReasonHasBeenSet =
true;
459 m_stageReason = std::forward<StageReasonT>(value);
461 template <
typename StageReasonT = Aws::String>
476 m_ssoEnabledHasBeenSet =
true;
477 m_ssoEnabled = value;
493 m_desiredNumberOfDomainControllersHasBeenSet =
true;
494 m_desiredNumberOfDomainControllers = value;
509 template <
typename OwnerDirectoryDescriptionT = OwnerDirectoryDescription>
511 m_ownerDirectoryDescriptionHasBeenSet =
true;
512 m_ownerDirectoryDescription = std::forward<OwnerDirectoryDescriptionT>(value);
514 template <
typename OwnerDirectoryDescriptionT = OwnerDirectoryDescription>
527 template <
typename RegionsInfoT = RegionsInfo>
529 m_regionsInfoHasBeenSet =
true;
530 m_regionsInfo = std::forward<RegionsInfoT>(value);
532 template <
typename RegionsInfoT = RegionsInfo>
546 m_osVersionHasBeenSet =
true;
563 template <
typename Hybr
idSettingsT = Hybr
idSettingsDescription>
565 m_hybridSettingsHasBeenSet =
true;
566 m_hybridSettings = std::forward<HybridSettingsT>(value);
568 template <
typename Hybr
idSettingsT = Hybr
idSettingsDescription>
582 m_networkTypeHasBeenSet =
true;
583 m_networkType = value;
625 DirectoryVpcSettingsDescription m_vpcSettings;
627 DirectoryConnectSettingsDescription m_connectSettings;
629 RadiusSettings m_radiusSettings;
635 bool m_ssoEnabled{
false};
637 int m_desiredNumberOfDomainControllers{0};
639 OwnerDirectoryDescription m_ownerDirectoryDescription;
641 RegionsInfo m_regionsInfo;
645 HybridSettingsDescription m_hybridSettings;
648 bool m_directoryIdHasBeenSet =
false;
649 bool m_nameHasBeenSet =
false;
650 bool m_shortNameHasBeenSet =
false;
651 bool m_sizeHasBeenSet =
false;
652 bool m_editionHasBeenSet =
false;
653 bool m_aliasHasBeenSet =
false;
654 bool m_accessUrlHasBeenSet =
false;
655 bool m_descriptionHasBeenSet =
false;
656 bool m_dnsIpAddrsHasBeenSet =
false;
657 bool m_dnsIpv6AddrsHasBeenSet =
false;
658 bool m_stageHasBeenSet =
false;
659 bool m_shareStatusHasBeenSet =
false;
660 bool m_shareMethodHasBeenSet =
false;
661 bool m_shareNotesHasBeenSet =
false;
662 bool m_launchTimeHasBeenSet =
false;
663 bool m_stageLastUpdatedDateTimeHasBeenSet =
false;
664 bool m_typeHasBeenSet =
false;
665 bool m_vpcSettingsHasBeenSet =
false;
666 bool m_connectSettingsHasBeenSet =
false;
667 bool m_radiusSettingsHasBeenSet =
false;
668 bool m_radiusStatusHasBeenSet =
false;
669 bool m_stageReasonHasBeenSet =
false;
670 bool m_ssoEnabledHasBeenSet =
false;
671 bool m_desiredNumberOfDomainControllersHasBeenSet =
false;
672 bool m_ownerDirectoryDescriptionHasBeenSet =
false;
673 bool m_regionsInfoHasBeenSet =
false;
674 bool m_osVersionHasBeenSet =
false;
675 bool m_hybridSettingsHasBeenSet =
false;
676 bool m_networkTypeHasBeenSet =
false;
const Aws::Utils::DateTime & GetStageLastUpdatedDateTime() const
void SetShareStatus(ShareStatus value)
const RadiusSettings & GetRadiusSettings() const
const Aws::Vector< Aws::String > & GetDnsIpAddrs() const
DirectoryEdition GetEdition() const
DirectoryType GetType() const
bool LaunchTimeHasBeenSet() const
RadiusStatus GetRadiusStatus() const
bool SizeHasBeenSet() const
DirectoryDescription & WithHybridSettings(HybridSettingsT &&value)
bool ConnectSettingsHasBeenSet() const
void SetStage(DirectoryStage value)
bool NameHasBeenSet() const
void SetAccessUrl(AccessUrlT &&value)
DirectoryDescription & WithDnsIpAddrs(DnsIpAddrsT &&value)
void SetDirectoryId(DirectoryIdT &&value)
bool OwnerDirectoryDescriptionHasBeenSet() const
AWS_DIRECTORYSERVICE_API DirectoryDescription & operator=(Aws::Utils::Json::JsonView jsonValue)
int GetDesiredNumberOfDomainControllers() const
const Aws::String & GetShareNotes() const
void SetType(DirectoryType value)
const Aws::String & GetAlias() const
void SetAlias(AliasT &&value)
DirectoryDescription & WithStageReason(StageReasonT &&value)
void SetRegionsInfo(RegionsInfoT &&value)
void SetHybridSettings(HybridSettingsT &&value)
void SetShortName(ShortNameT &&value)
DirectoryDescription & WithDnsIpv6Addrs(DnsIpv6AddrsT &&value)
DirectoryDescription & AddDnsIpv6Addrs(DnsIpv6AddrsT &&value)
void SetConnectSettings(ConnectSettingsT &&value)
void SetStageLastUpdatedDateTime(StageLastUpdatedDateTimeT &&value)
bool ShareMethodHasBeenSet() const
bool TypeHasBeenSet() const
AWS_DIRECTORYSERVICE_API DirectoryDescription()=default
void SetDnsIpAddrs(DnsIpAddrsT &&value)
bool DirectoryIdHasBeenSet() const
void SetNetworkType(NetworkType value)
void SetSsoEnabled(bool value)
void SetOsVersion(OSVersion value)
bool AccessUrlHasBeenSet() const
void SetDnsIpv6Addrs(DnsIpv6AddrsT &&value)
DirectoryDescription & WithDirectoryId(DirectoryIdT &&value)
void SetName(NameT &&value)
DirectoryDescription & WithNetworkType(NetworkType value)
DirectoryDescription & WithStage(DirectoryStage value)
bool RadiusSettingsHasBeenSet() const
bool SsoEnabledHasBeenSet() const
DirectoryDescription & WithOwnerDirectoryDescription(OwnerDirectoryDescriptionT &&value)
void SetDescription(DescriptionT &&value)
bool DesiredNumberOfDomainControllersHasBeenSet() const
bool ShortNameHasBeenSet() const
bool StageHasBeenSet() const
DirectoryDescription & WithEdition(DirectoryEdition value)
const Aws::String & GetName() const
bool DnsIpAddrsHasBeenSet() const
DirectoryDescription & AddDnsIpAddrs(DnsIpAddrsT &&value)
bool DnsIpv6AddrsHasBeenSet() const
ShareMethod GetShareMethod() const
bool ShareNotesHasBeenSet() const
DirectoryDescription & WithConnectSettings(ConnectSettingsT &&value)
const Aws::String & GetStageReason() const
DirectoryDescription & WithShortName(ShortNameT &&value)
AWS_DIRECTORYSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
bool GetSsoEnabled() const
void SetShareMethod(ShareMethod value)
const Aws::Vector< Aws::String > & GetDnsIpv6Addrs() const
bool EditionHasBeenSet() const
const RegionsInfo & GetRegionsInfo() const
DirectoryDescription & WithShareStatus(ShareStatus value)
bool NetworkTypeHasBeenSet() const
DirectoryStage GetStage() const
bool RadiusStatusHasBeenSet() const
DirectoryDescription & WithShareMethod(ShareMethod value)
DirectorySize GetSize() const
DirectoryDescription & WithLaunchTime(LaunchTimeT &&value)
DirectoryDescription & WithDescription(DescriptionT &&value)
DirectoryDescription & WithVpcSettings(VpcSettingsT &&value)
const DirectoryConnectSettingsDescription & GetConnectSettings() const
DirectoryDescription & WithAccessUrl(AccessUrlT &&value)
void SetDesiredNumberOfDomainControllers(int value)
DirectoryDescription & WithShareNotes(ShareNotesT &&value)
void SetStageReason(StageReasonT &&value)
void SetEdition(DirectoryEdition value)
bool VpcSettingsHasBeenSet() const
const Aws::String & GetDirectoryId() const
bool StageLastUpdatedDateTimeHasBeenSet() const
bool ShareStatusHasBeenSet() const
bool HybridSettingsHasBeenSet() const
DirectoryDescription & WithStageLastUpdatedDateTime(StageLastUpdatedDateTimeT &&value)
const OwnerDirectoryDescription & GetOwnerDirectoryDescription() const
const Aws::String & GetDescription() const
void SetLaunchTime(LaunchTimeT &&value)
void SetRadiusStatus(RadiusStatus value)
const Aws::String & GetShortName() const
void SetSize(DirectorySize value)
ShareStatus GetShareStatus() const
DirectoryDescription & WithOsVersion(OSVersion value)
bool AliasHasBeenSet() const
DirectoryDescription & WithAlias(AliasT &&value)
void SetRadiusSettings(RadiusSettingsT &&value)
DirectoryDescription & WithRadiusStatus(RadiusStatus value)
DirectoryDescription & WithRadiusSettings(RadiusSettingsT &&value)
bool OsVersionHasBeenSet() const
DirectoryDescription & WithType(DirectoryType value)
DirectoryDescription & WithDesiredNumberOfDomainControllers(int value)
const DirectoryVpcSettingsDescription & GetVpcSettings() const
void SetVpcSettings(VpcSettingsT &&value)
NetworkType GetNetworkType() const
void SetOwnerDirectoryDescription(OwnerDirectoryDescriptionT &&value)
DirectoryDescription & WithRegionsInfo(RegionsInfoT &&value)
DirectoryDescription & WithSsoEnabled(bool value)
void SetShareNotes(ShareNotesT &&value)
const Aws::Utils::DateTime & GetLaunchTime() const
const HybridSettingsDescription & GetHybridSettings() const
const Aws::String & GetAccessUrl() const
DirectoryDescription & WithName(NameT &&value)
bool DescriptionHasBeenSet() const
DirectoryDescription & WithSize(DirectorySize value)
bool StageReasonHasBeenSet() const
AWS_DIRECTORYSERVICE_API DirectoryDescription(Aws::Utils::Json::JsonView jsonValue)
bool RegionsInfoHasBeenSet() const
OSVersion GetOsVersion() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue