7#include <aws/workspaces/WorkSpaces_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/workspaces/model/WorkspaceDirectoryType.h>
11#include <aws/workspaces/model/WorkspaceDirectoryState.h>
12#include <aws/workspaces/model/DefaultWorkspaceCreationProperties.h>
13#include <aws/workspaces/model/WorkspaceAccessProperties.h>
14#include <aws/workspaces/model/Tenancy.h>
15#include <aws/workspaces/model/SelfservicePermissions.h>
16#include <aws/workspaces/model/SamlProperties.h>
17#include <aws/workspaces/model/CertificateBasedAuthProperties.h>
18#include <aws/workspaces/model/EndpointEncryptionMode.h>
19#include <aws/workspaces/model/MicrosoftEntraConfig.h>
20#include <aws/workspaces/model/UserIdentityType.h>
21#include <aws/workspaces/model/WorkspaceType.h>
22#include <aws/workspaces/model/IDCConfig.h>
23#include <aws/workspaces/model/ActiveDirectoryConfig.h>
24#include <aws/workspaces/model/StreamingProperties.h>
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>
75 template<
typename AliasT = Aws::String>
76 void SetAlias(AliasT&& value) { m_aliasHasBeenSet =
true; m_alias = std::forward<AliasT>(value); }
77 template<
typename AliasT = Aws::String>
87 template<
typename DirectoryNameT = Aws::String>
88 void SetDirectoryName(DirectoryNameT&& value) { m_directoryNameHasBeenSet =
true; m_directoryName = std::forward<DirectoryNameT>(value); }
89 template<
typename DirectoryNameT = Aws::String>
100 template<
typename RegistrationCodeT = Aws::String>
101 void SetRegistrationCode(RegistrationCodeT&& value) { m_registrationCodeHasBeenSet =
true; m_registrationCode = std::forward<RegistrationCodeT>(value); }
102 template<
typename RegistrationCodeT = Aws::String>
112 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
113 void SetSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet =
true; m_subnetIds = std::forward<SubnetIdsT>(value); }
114 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
116 template<
typename SubnetIdsT = Aws::String>
126 template<
typename DnsIpAddressesT = Aws::Vector<Aws::String>>
127 void SetDnsIpAddresses(DnsIpAddressesT&& value) { m_dnsIpAddressesHasBeenSet =
true; m_dnsIpAddresses = std::forward<DnsIpAddressesT>(value); }
128 template<
typename DnsIpAddressesT = Aws::Vector<Aws::String>>
130 template<
typename DnsIpAddressesT = Aws::String>
140 template<
typename CustomerUserNameT = Aws::String>
141 void SetCustomerUserName(CustomerUserNameT&& value) { m_customerUserNameHasBeenSet =
true; m_customerUserName = std::forward<CustomerUserNameT>(value); }
142 template<
typename CustomerUserNameT = Aws::String>
154 template<
typename IamRoleIdT = Aws::String>
155 void SetIamRoleId(IamRoleIdT&& value) { m_iamRoleIdHasBeenSet =
true; m_iamRoleId = std::forward<IamRoleIdT>(value); }
156 template<
typename IamRoleIdT = Aws::String>
176 template<
typename WorkspaceSecurityGroupIdT = Aws::String>
177 void SetWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT&& value) { m_workspaceSecurityGroupIdHasBeenSet =
true; m_workspaceSecurityGroupId = std::forward<WorkspaceSecurityGroupIdT>(value); }
178 template<
typename WorkspaceSecurityGroupIdT = Aws::String>
205 template<
typename WorkspaceCreationPropertiesT = DefaultWorkspaceCreationProperties>
206 void SetWorkspaceCreationProperties(WorkspaceCreationPropertiesT&& value) { m_workspaceCreationPropertiesHasBeenSet =
true; m_workspaceCreationProperties = std::forward<WorkspaceCreationPropertiesT>(value); }
207 template<
typename WorkspaceCreationPropertiesT = DefaultWorkspaceCreationProperties>
218 template<
typename IpGroupIdsT = Aws::Vector<Aws::String>>
219 void SetIpGroupIds(IpGroupIdsT&& value) { m_ipGroupIdsHasBeenSet =
true; m_ipGroupIds = std::forward<IpGroupIdsT>(value); }
220 template<
typename IpGroupIdsT = Aws::Vector<Aws::String>>
222 template<
typename IpGroupIdsT = Aws::String>
233 template<
typename WorkspaceAccessPropertiesT = WorkspaceAccessProperties>
234 void SetWorkspaceAccessProperties(WorkspaceAccessPropertiesT&& value) { m_workspaceAccessPropertiesHasBeenSet =
true; m_workspaceAccessProperties = std::forward<WorkspaceAccessPropertiesT>(value); }
235 template<
typename WorkspaceAccessPropertiesT = WorkspaceAccessProperties>
259 template<
typename SelfservicePermissionsT = SelfservicePermissions>
260 void SetSelfservicePermissions(SelfservicePermissionsT&& value) { m_selfservicePermissionsHasBeenSet =
true; m_selfservicePermissions = std::forward<SelfservicePermissionsT>(value); }
261 template<
typename SelfservicePermissionsT = SelfservicePermissions>
273 template<
typename SamlPropertiesT = SamlProperties>
274 void SetSamlProperties(SamlPropertiesT&& value) { m_samlPropertiesHasBeenSet =
true; m_samlProperties = std::forward<SamlPropertiesT>(value); }
275 template<
typename SamlPropertiesT = SamlProperties>
287 template<
typename CertificateBasedAuthPropertiesT = CertificateBasedAuthProperties>
288 void SetCertificateBasedAuthProperties(CertificateBasedAuthPropertiesT&& value) { m_certificateBasedAuthPropertiesHasBeenSet =
true; m_certificateBasedAuthProperties = std::forward<CertificateBasedAuthPropertiesT>(value); }
289 template<
typename CertificateBasedAuthPropertiesT = CertificateBasedAuthProperties>
310 template<
typename MicrosoftEntraConfigT = MicrosoftEntraConfig>
311 void SetMicrosoftEntraConfig(MicrosoftEntraConfigT&& value) { m_microsoftEntraConfigHasBeenSet =
true; m_microsoftEntraConfig = std::forward<MicrosoftEntraConfigT>(value); }
312 template<
typename MicrosoftEntraConfigT = MicrosoftEntraConfig>
322 template<
typename WorkspaceDirectoryNameT = Aws::String>
323 void SetWorkspaceDirectoryName(WorkspaceDirectoryNameT&& value) { m_workspaceDirectoryNameHasBeenSet =
true; m_workspaceDirectoryName = std::forward<WorkspaceDirectoryNameT>(value); }
324 template<
typename WorkspaceDirectoryNameT = Aws::String>
334 template<
typename WorkspaceDirectoryDescriptionT = Aws::String>
335 void SetWorkspaceDirectoryDescription(WorkspaceDirectoryDescriptionT&& value) { m_workspaceDirectoryDescriptionHasBeenSet =
true; m_workspaceDirectoryDescription = std::forward<WorkspaceDirectoryDescriptionT>(value); }
336 template<
typename WorkspaceDirectoryDescriptionT = Aws::String>
366 template<
typename IDCConfigT = IDCConfig>
367 void SetIDCConfig(IDCConfigT&& value) { m_iDCConfigHasBeenSet =
true; m_iDCConfig = std::forward<IDCConfigT>(value); }
368 template<
typename IDCConfigT = IDCConfig>
378 template<
typename ActiveDirectoryConfigT = ActiveDirectoryConfig>
379 void SetActiveDirectoryConfig(ActiveDirectoryConfigT&& value) { m_activeDirectoryConfigHasBeenSet =
true; m_activeDirectoryConfig = std::forward<ActiveDirectoryConfigT>(value); }
380 template<
typename ActiveDirectoryConfigT = ActiveDirectoryConfig>
390 template<
typename StreamingPropertiesT = StreamingProperties>
391 void SetStreamingProperties(StreamingPropertiesT&& value) { m_streamingPropertiesHasBeenSet =
true; m_streamingProperties = std::forward<StreamingPropertiesT>(value); }
392 template<
typename StreamingPropertiesT = StreamingProperties>
402 template<
typename ErrorMessageT = Aws::String>
403 void SetErrorMessage(ErrorMessageT&& value) { m_errorMessageHasBeenSet =
true; m_errorMessage = std::forward<ErrorMessageT>(value); }
404 template<
typename ErrorMessageT = Aws::String>
410 bool m_directoryIdHasBeenSet =
false;
413 bool m_aliasHasBeenSet =
false;
416 bool m_directoryNameHasBeenSet =
false;
419 bool m_registrationCodeHasBeenSet =
false;
422 bool m_subnetIdsHasBeenSet =
false;
425 bool m_dnsIpAddressesHasBeenSet =
false;
428 bool m_customerUserNameHasBeenSet =
false;
431 bool m_iamRoleIdHasBeenSet =
false;
434 bool m_directoryTypeHasBeenSet =
false;
437 bool m_workspaceSecurityGroupIdHasBeenSet =
false;
440 bool m_stateHasBeenSet =
false;
442 DefaultWorkspaceCreationProperties m_workspaceCreationProperties;
443 bool m_workspaceCreationPropertiesHasBeenSet =
false;
446 bool m_ipGroupIdsHasBeenSet =
false;
448 WorkspaceAccessProperties m_workspaceAccessProperties;
449 bool m_workspaceAccessPropertiesHasBeenSet =
false;
452 bool m_tenancyHasBeenSet =
false;
454 SelfservicePermissions m_selfservicePermissions;
455 bool m_selfservicePermissionsHasBeenSet =
false;
457 SamlProperties m_samlProperties;
458 bool m_samlPropertiesHasBeenSet =
false;
460 CertificateBasedAuthProperties m_certificateBasedAuthProperties;
461 bool m_certificateBasedAuthPropertiesHasBeenSet =
false;
464 bool m_endpointEncryptionModeHasBeenSet =
false;
466 MicrosoftEntraConfig m_microsoftEntraConfig;
467 bool m_microsoftEntraConfigHasBeenSet =
false;
470 bool m_workspaceDirectoryNameHasBeenSet =
false;
473 bool m_workspaceDirectoryDescriptionHasBeenSet =
false;
476 bool m_userIdentityTypeHasBeenSet =
false;
479 bool m_workspaceTypeHasBeenSet =
false;
481 IDCConfig m_iDCConfig;
482 bool m_iDCConfigHasBeenSet =
false;
484 ActiveDirectoryConfig m_activeDirectoryConfig;
485 bool m_activeDirectoryConfigHasBeenSet =
false;
487 StreamingProperties m_streamingProperties;
488 bool m_streamingPropertiesHasBeenSet =
false;
491 bool m_errorMessageHasBeenSet =
false;
void SetWorkspaceDirectoryDescription(WorkspaceDirectoryDescriptionT &&value)
WorkspaceDirectory & WithActiveDirectoryConfig(ActiveDirectoryConfigT &&value)
bool WorkspaceAccessPropertiesHasBeenSet() const
void SetSamlProperties(SamlPropertiesT &&value)
WorkspaceDirectory & WithWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT &&value)
const Aws::String & GetRegistrationCode() const
WorkspaceDirectoryState GetState() const
void SetWorkspaceAccessProperties(WorkspaceAccessPropertiesT &&value)
AWS_WORKSPACES_API WorkspaceDirectory()=default
void SetWorkspaceDirectoryName(WorkspaceDirectoryNameT &&value)
void SetEndpointEncryptionMode(EndpointEncryptionMode value)
void SetIamRoleId(IamRoleIdT &&value)
const Aws::String & GetAlias() const
WorkspaceDirectory & WithDirectoryType(WorkspaceDirectoryType value)
const CertificateBasedAuthProperties & GetCertificateBasedAuthProperties() const
void SetDirectoryType(WorkspaceDirectoryType value)
WorkspaceDirectory & WithSamlProperties(SamlPropertiesT &&value)
WorkspaceDirectory & AddDnsIpAddresses(DnsIpAddressesT &&value)
bool ActiveDirectoryConfigHasBeenSet() const
bool DirectoryTypeHasBeenSet() const
const ActiveDirectoryConfig & GetActiveDirectoryConfig() const
bool ErrorMessageHasBeenSet() const
void SetRegistrationCode(RegistrationCodeT &&value)
WorkspaceDirectory & WithSubnetIds(SubnetIdsT &&value)
WorkspaceDirectory & WithSelfservicePermissions(SelfservicePermissionsT &&value)
WorkspaceDirectory & WithCustomerUserName(CustomerUserNameT &&value)
WorkspaceDirectory & WithUserIdentityType(UserIdentityType value)
const IDCConfig & GetIDCConfig() const
void SetTenancy(Tenancy value)
void SetIDCConfig(IDCConfigT &&value)
WorkspaceDirectory & WithDnsIpAddresses(DnsIpAddressesT &&value)
void SetErrorMessage(ErrorMessageT &&value)
bool SelfservicePermissionsHasBeenSet() const
void SetSelfservicePermissions(SelfservicePermissionsT &&value)
void SetDirectoryName(DirectoryNameT &&value)
WorkspaceDirectory & WithWorkspaceAccessProperties(WorkspaceAccessPropertiesT &&value)
WorkspaceDirectory & WithDirectoryId(DirectoryIdT &&value)
bool CustomerUserNameHasBeenSet() const
const Aws::Vector< Aws::String > & GetIpGroupIds() const
void SetDnsIpAddresses(DnsIpAddressesT &&value)
const Aws::Vector< Aws::String > & GetSubnetIds() const
void SetIpGroupIds(IpGroupIdsT &&value)
bool TenancyHasBeenSet() const
void SetState(WorkspaceDirectoryState value)
bool MicrosoftEntraConfigHasBeenSet() const
WorkspaceDirectory & WithStreamingProperties(StreamingPropertiesT &&value)
WorkspaceDirectory & WithWorkspaceCreationProperties(WorkspaceCreationPropertiesT &&value)
const WorkspaceAccessProperties & GetWorkspaceAccessProperties() const
WorkspaceDirectory & AddSubnetIds(SubnetIdsT &&value)
const Aws::String & GetIamRoleId() const
bool EndpointEncryptionModeHasBeenSet() const
void SetSubnetIds(SubnetIdsT &&value)
WorkspaceDirectory & WithWorkspaceDirectoryName(WorkspaceDirectoryNameT &&value)
const MicrosoftEntraConfig & GetMicrosoftEntraConfig() const
bool StreamingPropertiesHasBeenSet() const
void SetStreamingProperties(StreamingPropertiesT &&value)
const Aws::String & GetCustomerUserName() const
void SetActiveDirectoryConfig(ActiveDirectoryConfigT &&value)
WorkspaceDirectory & WithDirectoryName(DirectoryNameT &&value)
const Aws::String & GetDirectoryId() const
WorkspaceDirectory & WithIDCConfig(IDCConfigT &&value)
bool IamRoleIdHasBeenSet() const
bool RegistrationCodeHasBeenSet() const
WorkspaceDirectory & WithWorkspaceType(WorkspaceType value)
void SetWorkspaceCreationProperties(WorkspaceCreationPropertiesT &&value)
const DefaultWorkspaceCreationProperties & GetWorkspaceCreationProperties() const
bool WorkspaceDirectoryNameHasBeenSet() const
WorkspaceDirectory & WithWorkspaceDirectoryDescription(WorkspaceDirectoryDescriptionT &&value)
AWS_WORKSPACES_API WorkspaceDirectory(Aws::Utils::Json::JsonView jsonValue)
WorkspaceDirectory & WithEndpointEncryptionMode(EndpointEncryptionMode value)
bool DirectoryIdHasBeenSet() const
bool WorkspaceTypeHasBeenSet() const
bool IDCConfigHasBeenSet() const
WorkspaceDirectory & WithRegistrationCode(RegistrationCodeT &&value)
bool SubnetIdsHasBeenSet() const
bool WorkspaceDirectoryDescriptionHasBeenSet() const
const SamlProperties & GetSamlProperties() const
WorkspaceDirectory & WithMicrosoftEntraConfig(MicrosoftEntraConfigT &&value)
bool AliasHasBeenSet() const
WorkspaceDirectory & WithIpGroupIds(IpGroupIdsT &&value)
void SetDirectoryId(DirectoryIdT &&value)
void SetUserIdentityType(UserIdentityType value)
WorkspaceDirectory & WithState(WorkspaceDirectoryState value)
bool WorkspaceSecurityGroupIdHasBeenSet() const
WorkspaceDirectory & WithCertificateBasedAuthProperties(CertificateBasedAuthPropertiesT &&value)
WorkspaceDirectory & AddIpGroupIds(IpGroupIdsT &&value)
void SetCustomerUserName(CustomerUserNameT &&value)
EndpointEncryptionMode GetEndpointEncryptionMode() const
WorkspaceDirectory & WithAlias(AliasT &&value)
bool CertificateBasedAuthPropertiesHasBeenSet() const
WorkspaceDirectory & WithTenancy(Tenancy value)
WorkspaceDirectoryType GetDirectoryType() const
const Aws::String & GetWorkspaceSecurityGroupId() const
const Aws::String & GetWorkspaceDirectoryDescription() const
bool IpGroupIdsHasBeenSet() const
const StreamingProperties & GetStreamingProperties() const
AWS_WORKSPACES_API Aws::Utils::Json::JsonValue Jsonize() const
bool DirectoryNameHasBeenSet() const
const Aws::String & GetDirectoryName() const
WorkspaceType GetWorkspaceType() const
const SelfservicePermissions & GetSelfservicePermissions() const
WorkspaceDirectory & WithErrorMessage(ErrorMessageT &&value)
bool WorkspaceCreationPropertiesHasBeenSet() const
bool DnsIpAddressesHasBeenSet() const
bool StateHasBeenSet() const
void SetWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT &&value)
WorkspaceDirectory & WithIamRoleId(IamRoleIdT &&value)
AWS_WORKSPACES_API WorkspaceDirectory & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetWorkspaceType(WorkspaceType value)
bool SamlPropertiesHasBeenSet() const
void SetMicrosoftEntraConfig(MicrosoftEntraConfigT &&value)
const Aws::Vector< Aws::String > & GetDnsIpAddresses() const
Tenancy GetTenancy() const
const Aws::String & GetWorkspaceDirectoryName() const
void SetAlias(AliasT &&value)
bool UserIdentityTypeHasBeenSet() const
const Aws::String & GetErrorMessage() const
UserIdentityType GetUserIdentityType() const
void SetCertificateBasedAuthProperties(CertificateBasedAuthPropertiesT &&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