/* * 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 lightsail-2016-11-28.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.Lightsail.Model { /// /// Describes an Amazon Lightsail content delivery network (CDN) distribution. /// public partial class LightsailDistribution { private bool? _ableToUpdateBundle; private List _alternativeDomainNames = new List(); private string _arn; private string _bundleId; private List _cacheBehaviors = new List(); private CacheSettings _cacheBehaviorSettings; private string _certificateName; private DateTime? _createdAt; private CacheBehavior _defaultCacheBehavior; private string _domainName; private IpAddressType _ipAddressType; private bool? _isEnabled; private ResourceLocation _location; private string _name; private Origin _origin; private string _originPublicDNS; private ResourceType _resourceType; private string _status; private string _supportCode; private List _tags = new List(); /// /// Gets and sets the property AbleToUpdateBundle. /// /// Indicates whether the bundle that is currently applied to your distribution, specified /// using the distributionName parameter, can be changed to another bundle. /// /// /// /// Use the UpdateDistributionBundle action to change your distribution's /// bundle. /// /// public bool AbleToUpdateBundle { get { return this._ableToUpdateBundle.GetValueOrDefault(); } set { this._ableToUpdateBundle = value; } } // Check to see if AbleToUpdateBundle property is set internal bool IsSetAbleToUpdateBundle() { return this._ableToUpdateBundle.HasValue; } /// /// Gets and sets the property AlternativeDomainNames. /// /// The alternate domain names of the distribution. /// /// public List AlternativeDomainNames { get { return this._alternativeDomainNames; } set { this._alternativeDomainNames = value; } } // Check to see if AlternativeDomainNames property is set internal bool IsSetAlternativeDomainNames() { return this._alternativeDomainNames != null && this._alternativeDomainNames.Count > 0; } /// /// Gets and sets the property Arn. /// /// The Amazon Resource Name (ARN) of the distribution. /// /// 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 BundleId. /// /// The ID of the bundle currently applied to the distribution. /// /// public string BundleId { get { return this._bundleId; } set { this._bundleId = value; } } // Check to see if BundleId property is set internal bool IsSetBundleId() { return this._bundleId != null; } /// /// Gets and sets the property CacheBehaviors. /// /// An array of objects that describe the per-path cache behavior of the distribution. /// /// public List CacheBehaviors { get { return this._cacheBehaviors; } set { this._cacheBehaviors = value; } } // Check to see if CacheBehaviors property is set internal bool IsSetCacheBehaviors() { return this._cacheBehaviors != null && this._cacheBehaviors.Count > 0; } /// /// Gets and sets the property CacheBehaviorSettings. /// /// An object that describes the cache behavior settings of the distribution. /// /// public CacheSettings CacheBehaviorSettings { get { return this._cacheBehaviorSettings; } set { this._cacheBehaviorSettings = value; } } // Check to see if CacheBehaviorSettings property is set internal bool IsSetCacheBehaviorSettings() { return this._cacheBehaviorSettings != null; } /// /// Gets and sets the property CertificateName. /// /// The name of the SSL/TLS certificate attached to the distribution, if any. /// /// public string CertificateName { get { return this._certificateName; } set { this._certificateName = value; } } // Check to see if CertificateName property is set internal bool IsSetCertificateName() { return this._certificateName != null; } /// /// Gets and sets the property CreatedAt. /// /// The timestamp when the distribution was created. /// /// public DateTime CreatedAt { get { return this._createdAt.GetValueOrDefault(); } set { this._createdAt = value; } } // Check to see if CreatedAt property is set internal bool IsSetCreatedAt() { return this._createdAt.HasValue; } /// /// Gets and sets the property DefaultCacheBehavior. /// /// An object that describes the default cache behavior of the distribution. /// /// public CacheBehavior DefaultCacheBehavior { get { return this._defaultCacheBehavior; } set { this._defaultCacheBehavior = value; } } // Check to see if DefaultCacheBehavior property is set internal bool IsSetDefaultCacheBehavior() { return this._defaultCacheBehavior != null; } /// /// Gets and sets the property DomainName. /// /// The domain name of the distribution. /// /// public string DomainName { get { return this._domainName; } set { this._domainName = value; } } // Check to see if DomainName property is set internal bool IsSetDomainName() { return this._domainName != null; } /// /// Gets and sets the property IpAddressType. /// /// The IP address type of the distribution. /// /// /// /// The possible values are ipv4 for IPv4 only, and dualstack /// for IPv4 and IPv6. /// /// public IpAddressType IpAddressType { get { return this._ipAddressType; } set { this._ipAddressType = value; } } // Check to see if IpAddressType property is set internal bool IsSetIpAddressType() { return this._ipAddressType != null; } /// /// Gets and sets the property IsEnabled. /// /// Indicates whether the distribution is enabled. /// /// public bool IsEnabled { get { return this._isEnabled.GetValueOrDefault(); } set { this._isEnabled = value; } } // Check to see if IsEnabled property is set internal bool IsSetIsEnabled() { return this._isEnabled.HasValue; } /// /// Gets and sets the property Location. /// /// An object that describes the location of the distribution, such as the Amazon Web /// Services Region and Availability Zone. /// /// /// /// Lightsail distributions are global resources that can reference an origin in any Amazon /// Web Services Region, and distribute its content globally. However, all distributions /// are located in the us-east-1 Region. /// /// /// public ResourceLocation Location { get { return this._location; } set { this._location = value; } } // Check to see if Location property is set internal bool IsSetLocation() { return this._location != null; } /// /// Gets and sets the property Name. /// /// The name of the distribution. /// /// 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 Origin. /// /// An object that describes the origin resource of the distribution, such as a Lightsail /// instance, bucket, or load balancer. /// /// /// /// The distribution pulls, caches, and serves content from the origin. /// /// public Origin Origin { get { return this._origin; } set { this._origin = value; } } // Check to see if Origin property is set internal bool IsSetOrigin() { return this._origin != null; } /// /// Gets and sets the property OriginPublicDNS. /// /// The public DNS of the origin. /// /// public string OriginPublicDNS { get { return this._originPublicDNS; } set { this._originPublicDNS = value; } } // Check to see if OriginPublicDNS property is set internal bool IsSetOriginPublicDNS() { return this._originPublicDNS != null; } /// /// Gets and sets the property ResourceType. /// /// The Lightsail resource type (e.g., Distribution). /// /// public ResourceType ResourceType { get { return this._resourceType; } set { this._resourceType = value; } } // Check to see if ResourceType property is set internal bool IsSetResourceType() { return this._resourceType != null; } /// /// Gets and sets the property Status. /// /// The status of the distribution. /// /// public string Status { get { return this._status; } set { this._status = value; } } // Check to see if Status property is set internal bool IsSetStatus() { return this._status != null; } /// /// Gets and sets the property SupportCode. /// /// The support code. Include this code in your email to support when you have questions /// about your Lightsail distribution. This code enables our support team to look up your /// Lightsail information more easily. /// /// public string SupportCode { get { return this._supportCode; } set { this._supportCode = value; } } // Check to see if SupportCode property is set internal bool IsSetSupportCode() { return this._supportCode != null; } /// /// Gets and sets the property Tags. /// /// The tag keys and optional values for the resource. For more information about tags /// in Lightsail, see the Amazon /// Lightsail Developer Guide. /// /// 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; } } }