/* * 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 route53-2013-04-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.Route53.Model { /// /// Container for the parameters to the CreateHostedZone operation. /// Creates a new public or private hosted zone. You create records in a public hosted /// zone to define how you want to route traffic on the internet for a domain, such as /// example.com, and its subdomains (apex.example.com, acme.example.com). You create records /// in a private hosted zone to define how you want to route traffic for a domain and /// its subdomains within one or more Amazon Virtual Private Clouds (Amazon VPCs). /// /// /// /// You can't convert a public hosted zone to a private hosted zone or vice versa. Instead, /// you must create a new hosted zone with the same name and create new resource record /// sets. /// /// /// /// For more information about charges for hosted zones, see Amazon /// Route 53 Pricing. /// /// /// /// Note the following: /// /// /// /// When you submit a CreateHostedZone request, the initial status of the /// hosted zone is PENDING. For public hosted zones, this means that the /// NS and SOA records are not yet available on all Route 53 DNS servers. When the NS /// and SOA records are available, the status of the zone changes to INSYNC. /// /// /// /// The CreateHostedZone request requires the caller to have an ec2:DescribeVpcs /// permission. /// /// /// /// When creating private hosted zones, the Amazon VPC must belong to the same partition /// where the hosted zone is created. A partition is a group of Amazon Web Services Regions. /// Each Amazon Web Services account is scoped to one partition. /// /// /// /// The following are the supported partitions: /// /// /// /// For more information, see Access /// Management in the Amazon Web Services General Reference. /// /// /// public partial class CreateHostedZoneRequest : AmazonRoute53Request { private string _name; private VPC _vpc; private string _callerReference; private HostedZoneConfig _hostedZoneConfig; private string _delegationSetId; /// /// Empty constructor used to set properties independently even when a simple constructor is available /// public CreateHostedZoneRequest() { } /// /// Instantiates CreateHostedZoneRequest with the parameterized properties /// /// The name of the domain. Specify a fully qualified domain name, for example, www.example.com. The trailing dot is optional; Amazon Route 53 assumes that the domain name is fully qualified. This means that Route 53 treats www.example.com (without a trailing dot) and www.example.com. (with a trailing dot) as identical. If you're creating a public hosted zone, this is the name you have registered with your DNS registrar. If your domain name is registered with a registrar other than Route 53, change the name servers for your domain to the set of NameServers that CreateHostedZone returns in DelegationSet. /// A unique string that identifies the request and that allows failed CreateHostedZone requests to be retried without the risk of executing the operation twice. You must use a unique CallerReference string every time you submit a CreateHostedZone request. CallerReference can be any unique string, for example, a date/time stamp. public CreateHostedZoneRequest(string name, string callerReference) { _name = name; _callerReference = callerReference; } /// /// Gets and sets the property Name. /// /// The name of the domain. Specify a fully qualified domain name, for example, www.example.com. /// The trailing dot is optional; Amazon Route 53 assumes that the domain name is fully /// qualified. This means that Route 53 treats www.example.com (without a trailing /// dot) and www.example.com. (with a trailing dot) as identical. /// /// /// /// If you're creating a public hosted zone, this is the name you have registered with /// your DNS registrar. If your domain name is registered with a registrar other than /// Route 53, change the name servers for your domain to the set of NameServers /// that CreateHostedZone returns in DelegationSet. /// /// [AWSProperty(Required=true, Max=1024)] 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 VPC. /// /// (Private hosted zones only) A complex type that contains information about the Amazon /// VPC that you're associating with this hosted zone. /// /// /// /// You can specify only one Amazon VPC when you create a private hosted zone. If you /// are associating a VPC with a hosted zone with this request, the paramaters VPCId /// and VPCRegion are also required. /// /// /// /// To associate additional Amazon VPCs with the hosted zone, use AssociateVPCWithHostedZone /// after you create a hosted zone. /// /// public VPC VPC { get { return this._vpc; } set { this._vpc = value; } } // Check to see if VPC property is set internal bool IsSetVPC() { return this._vpc != null; } /// /// Gets and sets the property CallerReference. /// /// A unique string that identifies the request and that allows failed CreateHostedZone /// requests to be retried without the risk of executing the operation twice. You must /// use a unique CallerReference string every time you submit a CreateHostedZone /// request. CallerReference can be any unique string, for example, a date/time /// stamp. /// /// [AWSProperty(Required=true, Min=1, Max=128)] public string CallerReference { get { return this._callerReference; } set { this._callerReference = value; } } // Check to see if CallerReference property is set internal bool IsSetCallerReference() { return this._callerReference != null; } /// /// Gets and sets the property HostedZoneConfig. /// /// (Optional) A complex type that contains the following optional values: /// /// /// /// If you don't specify a comment or the PrivateZone element, omit HostedZoneConfig /// and the other elements. /// /// public HostedZoneConfig HostedZoneConfig { get { return this._hostedZoneConfig; } set { this._hostedZoneConfig = value; } } // Check to see if HostedZoneConfig property is set internal bool IsSetHostedZoneConfig() { return this._hostedZoneConfig != null; } /// /// Gets and sets the property DelegationSetId. /// /// If you want to associate a reusable delegation set with this hosted zone, the ID that /// Amazon Route 53 assigned to the reusable delegation set when you created it. For more /// information about reusable delegation sets, see CreateReusableDelegationSet. /// /// /// /// If you are using a reusable delegation set to create a public hosted zone for a subdomain, /// make sure that the parent hosted zone doesn't use one or more of the same name servers. /// If you have overlapping nameservers, the operation will cause a ConflictingDomainsExist /// error. /// /// [AWSProperty(Max=32)] public string DelegationSetId { get { return this._delegationSetId; } set { this._delegationSetId = value; } } // Check to see if DelegationSetId property is set internal bool IsSetDelegationSetId() { return this._delegationSetId != null; } } }