/* * 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-web-2020-07-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.WorkSpacesWeb.Model { /// /// Container for the parameters to the CreateUserSettings operation. /// Creates a user settings resource that can be associated with a web portal. Once associated /// with a web portal, user settings control how users can transfer data between a streaming /// session and the their local devices. /// public partial class CreateUserSettingsRequest : AmazonWorkSpacesWebRequest { private string _clientToken; private EnabledType _copyAllowed; private int? _disconnectTimeoutInMinutes; private EnabledType _downloadAllowed; private int? _idleDisconnectTimeoutInMinutes; private EnabledType _pasteAllowed; private EnabledType _printAllowed; private List _tags = new List(); private EnabledType _uploadAllowed; /// /// Gets and sets the property ClientToken. /// /// A unique, case-sensitive identifier that you provide to ensure the idempotency of /// the request. Idempotency ensures that an API request completes only once. With an /// idempotent request, if the original request completes successfully, subsequent retries /// with the same client token returns the result from the original successful request. /// /// /// /// /// If you do not specify a client token, one is automatically generated by the AWS SDK. /// /// [AWSProperty(Min=1, Max=512)] public string ClientToken { get { return this._clientToken; } set { this._clientToken = value; } } // Check to see if ClientToken property is set internal bool IsSetClientToken() { return this._clientToken != null; } /// /// Gets and sets the property CopyAllowed. /// /// Specifies whether the user can copy text from the streaming session to the local device. /// /// [AWSProperty(Required=true)] public EnabledType CopyAllowed { get { return this._copyAllowed; } set { this._copyAllowed = value; } } // Check to see if CopyAllowed property is set internal bool IsSetCopyAllowed() { return this._copyAllowed != null; } /// /// Gets and sets the property DisconnectTimeoutInMinutes. /// /// The amount of time that a streaming session remains active after users disconnect. /// /// [AWSProperty(Min=1, Max=600)] public int DisconnectTimeoutInMinutes { get { return this._disconnectTimeoutInMinutes.GetValueOrDefault(); } set { this._disconnectTimeoutInMinutes = value; } } // Check to see if DisconnectTimeoutInMinutes property is set internal bool IsSetDisconnectTimeoutInMinutes() { return this._disconnectTimeoutInMinutes.HasValue; } /// /// Gets and sets the property DownloadAllowed. /// /// Specifies whether the user can download files from the streaming session to the local /// device. /// /// [AWSProperty(Required=true)] public EnabledType DownloadAllowed { get { return this._downloadAllowed; } set { this._downloadAllowed = value; } } // Check to see if DownloadAllowed property is set internal bool IsSetDownloadAllowed() { return this._downloadAllowed != null; } /// /// Gets and sets the property IdleDisconnectTimeoutInMinutes. /// /// The amount of time that users can be idle (inactive) before they are disconnected /// from their streaming session and the disconnect timeout interval begins. /// /// [AWSProperty(Min=0, Max=60)] public int IdleDisconnectTimeoutInMinutes { get { return this._idleDisconnectTimeoutInMinutes.GetValueOrDefault(); } set { this._idleDisconnectTimeoutInMinutes = value; } } // Check to see if IdleDisconnectTimeoutInMinutes property is set internal bool IsSetIdleDisconnectTimeoutInMinutes() { return this._idleDisconnectTimeoutInMinutes.HasValue; } /// /// Gets and sets the property PasteAllowed. /// /// Specifies whether the user can paste text from the local device to the streaming session. /// /// [AWSProperty(Required=true)] public EnabledType PasteAllowed { get { return this._pasteAllowed; } set { this._pasteAllowed = value; } } // Check to see if PasteAllowed property is set internal bool IsSetPasteAllowed() { return this._pasteAllowed != null; } /// /// Gets and sets the property PrintAllowed. /// /// Specifies whether the user can print to the local device. /// /// [AWSProperty(Required=true)] public EnabledType PrintAllowed { get { return this._printAllowed; } set { this._printAllowed = value; } } // Check to see if PrintAllowed property is set internal bool IsSetPrintAllowed() { return this._printAllowed != null; } /// /// Gets and sets the property Tags. /// /// The tags to add to the user settings resource. A tag is a key-value pair. /// /// [AWSProperty(Min=0, Max=200)] public List Tags { get { return this._tags; } set { this._tags = value; } } // Check to see if Tags property is set internal bool IsSetTags() { return this._tags != null && this._tags.Count > 0; } /// /// Gets and sets the property UploadAllowed. /// /// Specifies whether the user can upload files from the local device to the streaming /// session. /// /// [AWSProperty(Required=true)] public EnabledType UploadAllowed { get { return this._uploadAllowed; } set { this._uploadAllowed = value; } } // Check to see if UploadAllowed property is set internal bool IsSetUploadAllowed() { return this._uploadAllowed != null; } } }