/* * 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 CreateStack operation. /// Creates a stack to start streaming applications to users. A stack consists of an associated /// fleet, user access policies, and storage configurations. /// public partial class CreateStackRequest : AmazonAppStreamRequest { private List _accessEndpoints = new List(); private ApplicationSettings _applicationSettings; 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 Dictionary _tags = new Dictionary(); 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 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 click 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)] 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 Tags. /// /// The tags to associate with the stack. A tag is a key-value pair, and the value is /// optional. For example, Environment=Test. If you do not specify a value, Environment=. /// /// /// /// /// If you do not specify a value, the value is set to an empty string. /// /// /// /// Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, /// and the following special characters: /// /// /// /// _ . : / = + \ - @ /// /// /// /// For more information about tags, see Tagging /// Your Resources in the Amazon AppStream 2.0 Administration Guide. /// /// [AWSProperty(Min=1, Max=50)] public Dictionary 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 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; } } }