/*
* 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 UpdateUserSettings operation.
/// Updates the user settings.
///
public partial class UpdateUserSettingsRequest : AmazonWorkSpacesWebRequest
{
private string _clientToken;
private EnabledType _copyAllowed;
private int? _disconnectTimeoutInMinutes;
private EnabledType _downloadAllowed;
private int? _idleDisconnectTimeoutInMinutes;
private EnabledType _pasteAllowed;
private EnabledType _printAllowed;
private EnabledType _uploadAllowed;
private string _userSettingsArn;
///
/// 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 return 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.
///
///
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.
///
///
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.
///
///
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.
///
///
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 UploadAllowed.
///
/// Specifies whether the user can upload files from the local device to the streaming
/// session.
///
///
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;
}
///
/// Gets and sets the property UserSettingsArn.
///
/// The ARN of the user settings.
///
///
[AWSProperty(Required=true, Min=20, Max=2048)]
public string UserSettingsArn
{
get { return this._userSettingsArn; }
set { this._userSettingsArn = value; }
}
// Check to see if UserSettingsArn property is set
internal bool IsSetUserSettingsArn()
{
return this._userSettingsArn != null;
}
}
}