/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes the default values that are used to create WorkSpaces. For more
* information, see Update
* Directory Details for Your WorkSpaces.See Also:
AWS
* API Reference
Specifies whether the directory is enabled for Amazon WorkDocs.
*/ inline bool GetEnableWorkDocs() const{ return m_enableWorkDocs; } /** *Specifies whether the directory is enabled for Amazon WorkDocs.
*/ inline bool EnableWorkDocsHasBeenSet() const { return m_enableWorkDocsHasBeenSet; } /** *Specifies whether the directory is enabled for Amazon WorkDocs.
*/ inline void SetEnableWorkDocs(bool value) { m_enableWorkDocsHasBeenSet = true; m_enableWorkDocs = value; } /** *Specifies whether the directory is enabled for Amazon WorkDocs.
*/ inline DefaultWorkspaceCreationProperties& WithEnableWorkDocs(bool value) { SetEnableWorkDocs(value); return *this;} /** *Specifies whether to automatically assign an Elastic public IP address to * WorkSpaces in this directory by default. If enabled, the Elastic public IP * address allows outbound internet access from your WorkSpaces when you’re using * an internet gateway in the Amazon VPC in which your WorkSpaces are located. If * you're using a Network Address Translation (NAT) gateway for outbound internet * access from your VPC, or if your WorkSpaces are in public subnets and you * manually assign them Elastic IP addresses, you should disable this setting. This * setting applies to new WorkSpaces that you launch or to existing WorkSpaces that * you rebuild. For more information, see * Configure a VPC for Amazon WorkSpaces.
*/ inline bool GetEnableInternetAccess() const{ return m_enableInternetAccess; } /** *Specifies whether to automatically assign an Elastic public IP address to * WorkSpaces in this directory by default. If enabled, the Elastic public IP * address allows outbound internet access from your WorkSpaces when you’re using * an internet gateway in the Amazon VPC in which your WorkSpaces are located. If * you're using a Network Address Translation (NAT) gateway for outbound internet * access from your VPC, or if your WorkSpaces are in public subnets and you * manually assign them Elastic IP addresses, you should disable this setting. This * setting applies to new WorkSpaces that you launch or to existing WorkSpaces that * you rebuild. For more information, see * Configure a VPC for Amazon WorkSpaces.
*/ inline bool EnableInternetAccessHasBeenSet() const { return m_enableInternetAccessHasBeenSet; } /** *Specifies whether to automatically assign an Elastic public IP address to * WorkSpaces in this directory by default. If enabled, the Elastic public IP * address allows outbound internet access from your WorkSpaces when you’re using * an internet gateway in the Amazon VPC in which your WorkSpaces are located. If * you're using a Network Address Translation (NAT) gateway for outbound internet * access from your VPC, or if your WorkSpaces are in public subnets and you * manually assign them Elastic IP addresses, you should disable this setting. This * setting applies to new WorkSpaces that you launch or to existing WorkSpaces that * you rebuild. For more information, see * Configure a VPC for Amazon WorkSpaces.
*/ inline void SetEnableInternetAccess(bool value) { m_enableInternetAccessHasBeenSet = true; m_enableInternetAccess = value; } /** *Specifies whether to automatically assign an Elastic public IP address to * WorkSpaces in this directory by default. If enabled, the Elastic public IP * address allows outbound internet access from your WorkSpaces when you’re using * an internet gateway in the Amazon VPC in which your WorkSpaces are located. If * you're using a Network Address Translation (NAT) gateway for outbound internet * access from your VPC, or if your WorkSpaces are in public subnets and you * manually assign them Elastic IP addresses, you should disable this setting. This * setting applies to new WorkSpaces that you launch or to existing WorkSpaces that * you rebuild. For more information, see * Configure a VPC for Amazon WorkSpaces.
*/ inline DefaultWorkspaceCreationProperties& WithEnableInternetAccess(bool value) { SetEnableInternetAccess(value); return *this;} /** *The organizational unit (OU) in the directory for the WorkSpace machine * accounts.
*/ inline const Aws::String& GetDefaultOu() const{ return m_defaultOu; } /** *The organizational unit (OU) in the directory for the WorkSpace machine * accounts.
*/ inline bool DefaultOuHasBeenSet() const { return m_defaultOuHasBeenSet; } /** *The organizational unit (OU) in the directory for the WorkSpace machine * accounts.
*/ inline void SetDefaultOu(const Aws::String& value) { m_defaultOuHasBeenSet = true; m_defaultOu = value; } /** *The organizational unit (OU) in the directory for the WorkSpace machine * accounts.
*/ inline void SetDefaultOu(Aws::String&& value) { m_defaultOuHasBeenSet = true; m_defaultOu = std::move(value); } /** *The organizational unit (OU) in the directory for the WorkSpace machine * accounts.
*/ inline void SetDefaultOu(const char* value) { m_defaultOuHasBeenSet = true; m_defaultOu.assign(value); } /** *The organizational unit (OU) in the directory for the WorkSpace machine * accounts.
*/ inline DefaultWorkspaceCreationProperties& WithDefaultOu(const Aws::String& value) { SetDefaultOu(value); return *this;} /** *The organizational unit (OU) in the directory for the WorkSpace machine * accounts.
*/ inline DefaultWorkspaceCreationProperties& WithDefaultOu(Aws::String&& value) { SetDefaultOu(std::move(value)); return *this;} /** *The organizational unit (OU) in the directory for the WorkSpace machine * accounts.
*/ inline DefaultWorkspaceCreationProperties& WithDefaultOu(const char* value) { SetDefaultOu(value); return *this;} /** *The identifier of the default security group to apply to WorkSpaces when they * are created. For more information, see * Security Groups for Your WorkSpaces.
*/ inline const Aws::String& GetCustomSecurityGroupId() const{ return m_customSecurityGroupId; } /** *The identifier of the default security group to apply to WorkSpaces when they * are created. For more information, see * Security Groups for Your WorkSpaces.
*/ inline bool CustomSecurityGroupIdHasBeenSet() const { return m_customSecurityGroupIdHasBeenSet; } /** *The identifier of the default security group to apply to WorkSpaces when they * are created. For more information, see * Security Groups for Your WorkSpaces.
*/ inline void SetCustomSecurityGroupId(const Aws::String& value) { m_customSecurityGroupIdHasBeenSet = true; m_customSecurityGroupId = value; } /** *The identifier of the default security group to apply to WorkSpaces when they * are created. For more information, see * Security Groups for Your WorkSpaces.
*/ inline void SetCustomSecurityGroupId(Aws::String&& value) { m_customSecurityGroupIdHasBeenSet = true; m_customSecurityGroupId = std::move(value); } /** *The identifier of the default security group to apply to WorkSpaces when they * are created. For more information, see * Security Groups for Your WorkSpaces.
*/ inline void SetCustomSecurityGroupId(const char* value) { m_customSecurityGroupIdHasBeenSet = true; m_customSecurityGroupId.assign(value); } /** *The identifier of the default security group to apply to WorkSpaces when they * are created. For more information, see * Security Groups for Your WorkSpaces.
*/ inline DefaultWorkspaceCreationProperties& WithCustomSecurityGroupId(const Aws::String& value) { SetCustomSecurityGroupId(value); return *this;} /** *The identifier of the default security group to apply to WorkSpaces when they * are created. For more information, see * Security Groups for Your WorkSpaces.
*/ inline DefaultWorkspaceCreationProperties& WithCustomSecurityGroupId(Aws::String&& value) { SetCustomSecurityGroupId(std::move(value)); return *this;} /** *The identifier of the default security group to apply to WorkSpaces when they * are created. For more information, see * Security Groups for Your WorkSpaces.
*/ inline DefaultWorkspaceCreationProperties& WithCustomSecurityGroupId(const char* value) { SetCustomSecurityGroupId(value); return *this;} /** *Specifies whether WorkSpace users are local administrators on their * WorkSpaces.
*/ inline bool GetUserEnabledAsLocalAdministrator() const{ return m_userEnabledAsLocalAdministrator; } /** *Specifies whether WorkSpace users are local administrators on their * WorkSpaces.
*/ inline bool UserEnabledAsLocalAdministratorHasBeenSet() const { return m_userEnabledAsLocalAdministratorHasBeenSet; } /** *Specifies whether WorkSpace users are local administrators on their * WorkSpaces.
*/ inline void SetUserEnabledAsLocalAdministrator(bool value) { m_userEnabledAsLocalAdministratorHasBeenSet = true; m_userEnabledAsLocalAdministrator = value; } /** *Specifies whether WorkSpace users are local administrators on their * WorkSpaces.
*/ inline DefaultWorkspaceCreationProperties& WithUserEnabledAsLocalAdministrator(bool value) { SetUserEnabledAsLocalAdministrator(value); return *this;} /** *Specifies whether maintenance mode is enabled for WorkSpaces. For more * information, see WorkSpace * Maintenance.
*/ inline bool GetEnableMaintenanceMode() const{ return m_enableMaintenanceMode; } /** *Specifies whether maintenance mode is enabled for WorkSpaces. For more * information, see WorkSpace * Maintenance.
*/ inline bool EnableMaintenanceModeHasBeenSet() const { return m_enableMaintenanceModeHasBeenSet; } /** *Specifies whether maintenance mode is enabled for WorkSpaces. For more * information, see WorkSpace * Maintenance.
*/ inline void SetEnableMaintenanceMode(bool value) { m_enableMaintenanceModeHasBeenSet = true; m_enableMaintenanceMode = value; } /** *Specifies whether maintenance mode is enabled for WorkSpaces. For more * information, see WorkSpace * Maintenance.
*/ inline DefaultWorkspaceCreationProperties& WithEnableMaintenanceMode(bool value) { SetEnableMaintenanceMode(value); return *this;} private: bool m_enableWorkDocs; bool m_enableWorkDocsHasBeenSet = false; bool m_enableInternetAccess; bool m_enableInternetAccessHasBeenSet = false; Aws::String m_defaultOu; bool m_defaultOuHasBeenSet = false; Aws::String m_customSecurityGroupId; bool m_customSecurityGroupIdHasBeenSet = false; bool m_userEnabledAsLocalAdministrator; bool m_userEnabledAsLocalAdministratorHasBeenSet = false; bool m_enableMaintenanceMode; bool m_enableMaintenanceModeHasBeenSet = false; }; } // namespace Model } // namespace WorkSpaces } // namespace Aws