/*
* 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 appstream-2016-12-01.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.AppStream.Model
{
///
/// Container for the parameters to the UpdateStack operation.
/// Updates the specified fields for the specified stack.
///
public partial class UpdateStackRequest : AmazonAppStreamRequest
{
private List _accessEndpoints = new List();
private ApplicationSettings _applicationSettings;
private List _attributesToDelete = new List();
private bool? _deleteStorageConnectors;
private string _description;
private string _displayName;
private List _embedHostDomains = new List();
private string _feedbackURL;
private string _name;
private string _redirectURL;
private List _storageConnectors = new List();
private StreamingExperienceSettings _streamingExperienceSettings;
private List _userSettings = new List();
///
/// Gets and sets the property AccessEndpoints.
///
/// The list of interface VPC endpoint (interface endpoint) objects. Users of the stack
/// can connect to AppStream 2.0 only through the specified endpoints.
///
///
[AWSProperty(Min=1, Max=4)]
public List AccessEndpoints
{
get { return this._accessEndpoints; }
set { this._accessEndpoints = value; }
}
// Check to see if AccessEndpoints property is set
internal bool IsSetAccessEndpoints()
{
return this._accessEndpoints != null && this._accessEndpoints.Count > 0;
}
///
/// Gets and sets the property ApplicationSettings.
///
/// The persistent application settings for users of a stack. When these settings are
/// enabled, changes that users make to applications and Windows settings are automatically
/// saved after each session and applied to the next session.
///
///
public ApplicationSettings ApplicationSettings
{
get { return this._applicationSettings; }
set { this._applicationSettings = value; }
}
// Check to see if ApplicationSettings property is set
internal bool IsSetApplicationSettings()
{
return this._applicationSettings != null;
}
///
/// Gets and sets the property AttributesToDelete.
///
/// The stack attributes to delete.
///
///
public List AttributesToDelete
{
get { return this._attributesToDelete; }
set { this._attributesToDelete = value; }
}
// Check to see if AttributesToDelete property is set
internal bool IsSetAttributesToDelete()
{
return this._attributesToDelete != null && this._attributesToDelete.Count > 0;
}
///
/// Gets and sets the property DeleteStorageConnectors.
///
/// Deletes the storage connectors currently enabled for the stack.
///
///
[Obsolete("This property is deprecated")]
public bool DeleteStorageConnectors
{
get { return this._deleteStorageConnectors.GetValueOrDefault(); }
set { this._deleteStorageConnectors = value; }
}
// Check to see if DeleteStorageConnectors property is set
internal bool IsSetDeleteStorageConnectors()
{
return this._deleteStorageConnectors.HasValue;
}
///
/// Gets and sets the property Description.
///
/// The description to display.
///
///
[AWSProperty(Max=256)]
public string Description
{
get { return this._description; }
set { this._description = value; }
}
// Check to see if Description property is set
internal bool IsSetDescription()
{
return this._description != null;
}
///
/// Gets and sets the property DisplayName.
///
/// The stack name to display.
///
///
[AWSProperty(Max=100)]
public string DisplayName
{
get { return this._displayName; }
set { this._displayName = value; }
}
// Check to see if DisplayName property is set
internal bool IsSetDisplayName()
{
return this._displayName != null;
}
///
/// Gets and sets the property EmbedHostDomains.
///
/// The domains where AppStream 2.0 streaming sessions can be embedded in an iframe. You
/// must approve the domains that you want to host embedded AppStream 2.0 streaming sessions.
///
///
///
[AWSProperty(Min=1, Max=20)]
public List EmbedHostDomains
{
get { return this._embedHostDomains; }
set { this._embedHostDomains = value; }
}
// Check to see if EmbedHostDomains property is set
internal bool IsSetEmbedHostDomains()
{
return this._embedHostDomains != null && this._embedHostDomains.Count > 0;
}
///
/// Gets and sets the property FeedbackURL.
///
/// The URL that users are redirected to after they choose the Send Feedback link. If
/// no URL is specified, no Send Feedback link is displayed.
///
///
[AWSProperty(Max=1000)]
public string FeedbackURL
{
get { return this._feedbackURL; }
set { this._feedbackURL = value; }
}
// Check to see if FeedbackURL property is set
internal bool IsSetFeedbackURL()
{
return this._feedbackURL != null;
}
///
/// Gets and sets the property Name.
///
/// The name of the stack.
///
///
[AWSProperty(Required=true, Min=1)]
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property RedirectURL.
///
/// The URL that users are redirected to after their streaming session ends.
///
///
[AWSProperty(Max=1000)]
public string RedirectURL
{
get { return this._redirectURL; }
set { this._redirectURL = value; }
}
// Check to see if RedirectURL property is set
internal bool IsSetRedirectURL()
{
return this._redirectURL != null;
}
///
/// Gets and sets the property StorageConnectors.
///
/// The storage connectors to enable.
///
///
public List StorageConnectors
{
get { return this._storageConnectors; }
set { this._storageConnectors = value; }
}
// Check to see if StorageConnectors property is set
internal bool IsSetStorageConnectors()
{
return this._storageConnectors != null && this._storageConnectors.Count > 0;
}
///
/// Gets and sets the property StreamingExperienceSettings.
///
/// The streaming protocol you want your stack to prefer. This can be UDP or TCP. Currently,
/// UDP is only supported in the Windows native client.
///
///
public StreamingExperienceSettings StreamingExperienceSettings
{
get { return this._streamingExperienceSettings; }
set { this._streamingExperienceSettings = value; }
}
// Check to see if StreamingExperienceSettings property is set
internal bool IsSetStreamingExperienceSettings()
{
return this._streamingExperienceSettings != null;
}
///
/// Gets and sets the property UserSettings.
///
/// The actions that are enabled or disabled for users during their streaming sessions.
/// By default, these actions are enabled.
///
///
[AWSProperty(Min=1)]
public List UserSettings
{
get { return this._userSettings; }
set { this._userSettings = value; }
}
// Check to see if UserSettings property is set
internal bool IsSetUserSettings()
{
return this._userSettings != null && this._userSettings.Count > 0;
}
}
}