/* * 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 cloudfront-2020-05-31.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.CloudFront.Model { /// /// A summary of the information about a CloudFront distribution. /// public partial class DistributionSummary { private Aliases _aliases; private List _aliasICPRecordals = new List(); private string _arn; private CacheBehaviors _cacheBehaviors; private string _comment; private CustomErrorResponses _customErrorResponses; private DefaultCacheBehavior _defaultCacheBehavior; private string _domainName; private bool? _enabled; private HttpVersion _httpVersion; private string _id; private bool? _isIPV6Enabled; private DateTime? _lastModifiedTime; private OriginGroups _originGroups; private Origins _origins; private PriceClass _priceClass; private Restrictions _restrictions; private bool? _staging; private string _status; private ViewerCertificate _viewerCertificate; private string _webACLId; /// /// Empty constructor used to set properties independently even when a simple constructor is available /// public DistributionSummary() { } /// /// Gets and sets the property Aliases. /// /// A complex type that contains information about CNAMEs (alternate domain names), if /// any, for this distribution. /// /// [AWSProperty(Required=true)] public Aliases Aliases { get { return this._aliases; } set { this._aliases = value; } } // Check to see if Aliases property is set internal bool IsSetAliases() { return this._aliases != null; } /// /// Gets and sets the property AliasICPRecordals. /// /// Amazon Web Services services in China customers must file for an Internet Content /// Provider (ICP) recordal if they want to serve content publicly on an alternate domain /// name, also known as a CNAME, that they've added to CloudFront. AliasICPRecordal provides /// the ICP recordal status for CNAMEs associated with distributions. /// /// /// /// For more information about ICP recordals, see /// Signup, Accounts, and Credentials in Getting Started with Amazon Web Services /// services in China. /// /// public List AliasICPRecordals { get { return this._aliasICPRecordals; } set { this._aliasICPRecordals = value; } } // Check to see if AliasICPRecordals property is set internal bool IsSetAliasICPRecordals() { return this._aliasICPRecordals != null && this._aliasICPRecordals.Count > 0; } /// /// Gets and sets the property ARN. /// /// The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5, /// where 123456789012 is your Amazon Web Services account ID. /// /// [AWSProperty(Required=true)] 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 CacheBehaviors. /// /// A complex type that contains zero or more CacheBehavior elements. /// /// [AWSProperty(Required=true)] public CacheBehaviors CacheBehaviors { get { return this._cacheBehaviors; } set { this._cacheBehaviors = value; } } // Check to see if CacheBehaviors property is set internal bool IsSetCacheBehaviors() { return this._cacheBehaviors != null; } /// /// Gets and sets the property Comment. /// /// The comment originally specified when this distribution was created. /// /// [AWSProperty(Required=true)] public string Comment { get { return this._comment; } set { this._comment = value; } } // Check to see if Comment property is set internal bool IsSetComment() { return this._comment != null; } /// /// Gets and sets the property CustomErrorResponses. /// /// A complex type that contains zero or more CustomErrorResponses elements. /// /// [AWSProperty(Required=true)] public CustomErrorResponses CustomErrorResponses { get { return this._customErrorResponses; } set { this._customErrorResponses = value; } } // Check to see if CustomErrorResponses property is set internal bool IsSetCustomErrorResponses() { return this._customErrorResponses != null; } /// /// Gets and sets the property DefaultCacheBehavior. /// /// A complex type that describes the default cache behavior if you don't specify a CacheBehavior /// element or if files don't match any of the values of PathPattern in CacheBehavior /// elements. You must create exactly one default cache behavior. /// /// [AWSProperty(Required=true)] public DefaultCacheBehavior 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 that corresponds to the distribution, for example, d111111abcdef8.cloudfront.net. /// /// [AWSProperty(Required=true)] 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 Enabled. /// /// Whether the distribution is enabled to accept user requests for content. /// /// [AWSProperty(Required=true)] public bool Enabled { get { return this._enabled.GetValueOrDefault(); } set { this._enabled = value; } } // Check to see if Enabled property is set internal bool IsSetEnabled() { return this._enabled.HasValue; } /// /// Gets and sets the property HttpVersion. /// /// Specify the maximum HTTP version that you want viewers to use to communicate with /// CloudFront. The default value for new web distributions is http2. Viewers /// that don't support HTTP/2 will automatically use an earlier version. /// /// [AWSProperty(Required=true)] public HttpVersion HttpVersion { get { return this._httpVersion; } set { this._httpVersion = value; } } // Check to see if HttpVersion property is set internal bool IsSetHttpVersion() { return this._httpVersion != null; } /// /// Gets and sets the property Id. /// /// The identifier for the distribution. For example: EDFDVBD632BHDS5. /// /// [AWSProperty(Required=true)] public string Id { get { return this._id; } set { this._id = value; } } // Check to see if Id property is set internal bool IsSetId() { return this._id != null; } /// /// Gets and sets the property IsIPV6Enabled. /// /// Whether CloudFront responds to IPv6 DNS requests with an IPv6 address for your distribution. /// /// [AWSProperty(Required=true)] public bool IsIPV6Enabled { get { return this._isIPV6Enabled.GetValueOrDefault(); } set { this._isIPV6Enabled = value; } } // Check to see if IsIPV6Enabled property is set internal bool IsSetIsIPV6Enabled() { return this._isIPV6Enabled.HasValue; } /// /// Gets and sets the property LastModifiedTime. /// /// The date and time the distribution was last modified. /// /// [AWSProperty(Required=true)] public DateTime LastModifiedTime { get { return this._lastModifiedTime.GetValueOrDefault(); } set { this._lastModifiedTime = value; } } // Check to see if LastModifiedTime property is set internal bool IsSetLastModifiedTime() { return this._lastModifiedTime.HasValue; } /// /// Gets and sets the property OriginGroups. /// /// A complex type that contains information about origin groups for this distribution. /// /// public OriginGroups OriginGroups { get { return this._originGroups; } set { this._originGroups = value; } } // Check to see if OriginGroups property is set internal bool IsSetOriginGroups() { return this._originGroups != null; } /// /// Gets and sets the property Origins. /// /// A complex type that contains information about origins for this distribution. /// /// [AWSProperty(Required=true)] public Origins Origins { get { return this._origins; } set { this._origins = value; } } // Check to see if Origins property is set internal bool IsSetOrigins() { return this._origins != null; } /// /// Gets and sets the property PriceClass. /// /// A complex type that contains information about price class for this streaming distribution. /// /// [AWSProperty(Required=true)] public PriceClass PriceClass { get { return this._priceClass; } set { this._priceClass = value; } } // Check to see if PriceClass property is set internal bool IsSetPriceClass() { return this._priceClass != null; } /// /// Gets and sets the property Restrictions. /// /// A complex type that identifies ways in which you want to restrict distribution of /// your content. /// /// [AWSProperty(Required=true)] public Restrictions Restrictions { get { return this._restrictions; } set { this._restrictions = value; } } // Check to see if Restrictions property is set internal bool IsSetRestrictions() { return this._restrictions != null; } /// /// Gets and sets the property Staging. /// /// Whether the primary distribution has a staging distribution enabled. /// /// [AWSProperty(Required=true)] public bool Staging { get { return this._staging.GetValueOrDefault(); } set { this._staging = value; } } // Check to see if Staging property is set internal bool IsSetStaging() { return this._staging.HasValue; } /// /// Gets and sets the property Status. /// /// The current status of the distribution. When the status is Deployed, /// the distribution's information is propagated to all CloudFront edge locations. /// /// [AWSProperty(Required=true)] 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 ViewerCertificate. /// /// A complex type that determines the distribution's SSL/TLS configuration for communicating /// with viewers. /// /// [AWSProperty(Required=true)] public ViewerCertificate ViewerCertificate { get { return this._viewerCertificate; } set { this._viewerCertificate = value; } } // Check to see if ViewerCertificate property is set internal bool IsSetViewerCertificate() { return this._viewerCertificate != null; } /// /// Gets and sets the property WebACLId. /// /// The Web ACL Id (if any) associated with the distribution. /// /// [AWSProperty(Required=true)] public string WebACLId { get { return this._webACLId; } set { this._webACLId = value; } } // Check to see if WebACLId property is set internal bool IsSetWebACLId() { return this._webACLId != null; } } }