/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the workspaces-2015-04-08.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.WorkSpaces.Model { /// /// Describes a directory that is used with Amazon WorkSpaces. /// public partial class WorkspaceDirectory { private string _alias; private CertificateBasedAuthProperties _certificateBasedAuthProperties; private string _customerUserName; private string _directoryId; private string _directoryName; private WorkspaceDirectoryType _directoryType; private List _dnsIpAddresses = new List(); private string _iamRoleId; private List _ipGroupIds = new List(); private string _registrationCode; private SamlProperties _samlProperties; private SelfservicePermissions _selfservicePermissions; private WorkspaceDirectoryState _state; private List _subnetIds = new List(); private Tenancy _tenancy; private WorkspaceAccessProperties _workspaceAccessProperties; private DefaultWorkspaceCreationProperties _workspaceCreationProperties; private string _workspaceSecurityGroupId; /// /// Gets and sets the property Alias. /// /// The directory alias. /// /// public string Alias { get { return this._alias; } set { this._alias = value; } } // Check to see if Alias property is set internal bool IsSetAlias() { return this._alias != null; } /// /// Gets and sets the property CertificateBasedAuthProperties. /// /// The certificate-based authentication properties used to authenticate SAML 2.0 Identity /// Provider (IdP) user identities to Active Directory for WorkSpaces login. /// /// public CertificateBasedAuthProperties CertificateBasedAuthProperties { get { return this._certificateBasedAuthProperties; } set { this._certificateBasedAuthProperties = value; } } // Check to see if CertificateBasedAuthProperties property is set internal bool IsSetCertificateBasedAuthProperties() { return this._certificateBasedAuthProperties != null; } /// /// Gets and sets the property CustomerUserName. /// /// The user name for the service account. /// /// [AWSProperty(Min=1, Max=63)] public string CustomerUserName { get { return this._customerUserName; } set { this._customerUserName = value; } } // Check to see if CustomerUserName property is set internal bool IsSetCustomerUserName() { return this._customerUserName != null; } /// /// Gets and sets the property DirectoryId. /// /// The directory identifier. /// /// [AWSProperty(Min=10, Max=65)] public string DirectoryId { get { return this._directoryId; } set { this._directoryId = value; } } // Check to see if DirectoryId property is set internal bool IsSetDirectoryId() { return this._directoryId != null; } /// /// Gets and sets the property DirectoryName. /// /// The name of the directory. /// /// public string DirectoryName { get { return this._directoryName; } set { this._directoryName = value; } } // Check to see if DirectoryName property is set internal bool IsSetDirectoryName() { return this._directoryName != null; } /// /// Gets and sets the property DirectoryType. /// /// The directory type. /// /// public WorkspaceDirectoryType DirectoryType { get { return this._directoryType; } set { this._directoryType = value; } } // Check to see if DirectoryType property is set internal bool IsSetDirectoryType() { return this._directoryType != null; } /// /// Gets and sets the property DnsIpAddresses. /// /// The IP addresses of the DNS servers for the directory. /// /// public List DnsIpAddresses { get { return this._dnsIpAddresses; } set { this._dnsIpAddresses = value; } } // Check to see if DnsIpAddresses property is set internal bool IsSetDnsIpAddresses() { return this._dnsIpAddresses != null && this._dnsIpAddresses.Count > 0; } /// /// Gets and sets the property IamRoleId. /// /// The identifier of the IAM role. This is the role that allows Amazon WorkSpaces to /// make calls to other services, such as Amazon EC2, on your behalf. /// /// public string IamRoleId { get { return this._iamRoleId; } set { this._iamRoleId = value; } } // Check to see if IamRoleId property is set internal bool IsSetIamRoleId() { return this._iamRoleId != null; } /// /// Gets and sets the property IpGroupIds. /// /// The identifiers of the IP access control groups associated with the directory. /// /// public List IpGroupIds { get { return this._ipGroupIds; } set { this._ipGroupIds = value; } } // Check to see if IpGroupIds property is set internal bool IsSetIpGroupIds() { return this._ipGroupIds != null && this._ipGroupIds.Count > 0; } /// /// Gets and sets the property RegistrationCode. /// /// The registration code for the directory. This is the code that users enter in their /// Amazon WorkSpaces client application to connect to the directory. /// /// [AWSProperty(Min=1, Max=20)] public string RegistrationCode { get { return this._registrationCode; } set { this._registrationCode = value; } } // Check to see if RegistrationCode property is set internal bool IsSetRegistrationCode() { return this._registrationCode != null; } /// /// Gets and sets the property SamlProperties. /// /// Describes the enablement status, user access URL, and relay state parameter name that /// are used for configuring federation with an SAML 2.0 identity provider. /// /// public SamlProperties SamlProperties { get { return this._samlProperties; } set { this._samlProperties = value; } } // Check to see if SamlProperties property is set internal bool IsSetSamlProperties() { return this._samlProperties != null; } /// /// Gets and sets the property SelfservicePermissions. /// /// The default self-service permissions for WorkSpaces in the directory. /// /// public SelfservicePermissions SelfservicePermissions { get { return this._selfservicePermissions; } set { this._selfservicePermissions = value; } } // Check to see if SelfservicePermissions property is set internal bool IsSetSelfservicePermissions() { return this._selfservicePermissions != null; } /// /// Gets and sets the property State. /// /// The state of the directory's registration with Amazon WorkSpaces. After a directory /// is deregistered, the DEREGISTERED state is returned very briefly before /// the directory metadata is cleaned up, so this state is rarely returned. To confirm /// that a directory is deregistered, check for the directory ID by using /// DescribeWorkspaceDirectories. If the directory ID isn't returned, then the directory /// has been successfully deregistered. /// /// public WorkspaceDirectoryState State { get { return this._state; } set { this._state = value; } } // Check to see if State property is set internal bool IsSetState() { return this._state != null; } /// /// Gets and sets the property SubnetIds. /// /// The identifiers of the subnets used with the directory. /// /// [AWSProperty(Max=2)] public List SubnetIds { get { return this._subnetIds; } set { this._subnetIds = value; } } // Check to see if SubnetIds property is set internal bool IsSetSubnetIds() { return this._subnetIds != null && this._subnetIds.Count > 0; } /// /// Gets and sets the property Tenancy. /// /// Specifies whether the directory is dedicated or shared. To use Bring Your Own License /// (BYOL), this value must be set to DEDICATED. For more information, see /// Bring /// Your Own Windows Desktop Images. /// /// public Tenancy Tenancy { get { return this._tenancy; } set { this._tenancy = value; } } // Check to see if Tenancy property is set internal bool IsSetTenancy() { return this._tenancy != null; } /// /// Gets and sets the property WorkspaceAccessProperties. /// /// The devices and operating systems that users can use to access WorkSpaces. /// /// public WorkspaceAccessProperties WorkspaceAccessProperties { get { return this._workspaceAccessProperties; } set { this._workspaceAccessProperties = value; } } // Check to see if WorkspaceAccessProperties property is set internal bool IsSetWorkspaceAccessProperties() { return this._workspaceAccessProperties != null; } /// /// Gets and sets the property WorkspaceCreationProperties. /// /// The default creation properties for all WorkSpaces in the directory. /// /// public DefaultWorkspaceCreationProperties WorkspaceCreationProperties { get { return this._workspaceCreationProperties; } set { this._workspaceCreationProperties = value; } } // Check to see if WorkspaceCreationProperties property is set internal bool IsSetWorkspaceCreationProperties() { return this._workspaceCreationProperties != null; } /// /// Gets and sets the property WorkspaceSecurityGroupId. /// /// The identifier of the security group that is assigned to new WorkSpaces. /// /// [AWSProperty(Min=11, Max=20)] public string WorkspaceSecurityGroupId { get { return this._workspaceSecurityGroupId; } set { this._workspaceSecurityGroupId = value; } } // Check to see if WorkspaceSecurityGroupId property is set internal bool IsSetWorkspaceSecurityGroupId() { return this._workspaceSecurityGroupId != null; } } }