/*
* 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
{
///
/// Describes a stack.
///
public partial class Stack
{
private List _accessEndpoints = new List();
private ApplicationSettingsResponse _applicationSettings;
private string _arn;
private DateTime? _createdTime;
private string _description;
private string _displayName;
private List _embedHostDomains = new List();
private string _feedbackURL;
private string _name;
private string _redirectURL;
private List _stackErrors = new List();
private List _storageConnectors = new List();
private StreamingExperienceSettings _streamingExperienceSettings;
private List _userSettings = new List();
///
/// Gets and sets the property AccessEndpoints.
///
/// The list of virtual private cloud (VPC) 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 the stack.
///
///
public ApplicationSettingsResponse 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 Arn.
///
/// The ARN of the stack.
///
///
public string Arn
{
get { return this._arn; }
set { this._arn = value; }
}
// Check to see if Arn property is set
internal bool IsSetArn()
{
return this._arn != null;
}
///
/// Gets and sets the property CreatedTime.
///
/// The time the stack was created.
///
///
public DateTime CreatedTime
{
get { return this._createdTime.GetValueOrDefault(); }
set { this._createdTime = value; }
}
// Check to see if CreatedTime property is set
internal bool IsSetCreatedTime()
{
return this._createdTime.HasValue;
}
///
/// Gets and sets the property Description.
///
/// The description to display.
///
///
[AWSProperty(Min=1)]
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(Min=1)]
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, 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 StackErrors.
///
/// The errors for the stack.
///
///
public List StackErrors
{
get { return this._stackErrors; }
set { this._stackErrors = value; }
}
// Check to see if StackErrors property is set
internal bool IsSetStackErrors()
{
return this._stackErrors != null && this._stackErrors.Count > 0;
}
///
/// 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;
}
}
}