/* * 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 { /// <summary> /// Container for the parameters to the TestDNSAnswer operation. /// Gets the value that Amazon Route 53 returns in response to a DNS request for a specified /// record name and type. You can optionally specify the IP address of a DNS resolver, /// an EDNS0 client subnet IP address, and a subnet mask. /// /// /// <para> /// This call only supports querying public hosted zones. /// </para> /// <note> /// <para> /// The <code>TestDnsAnswer </code> returns information similar to what you would expect /// from the answer section of the <code>dig</code> command. Therefore, if you query for /// the name servers of a subdomain that point to the parent name servers, those will /// not be returned. /// </para> /// </note> /// </summary> public partial class TestDNSAnswerRequest : AmazonRoute53Request { private string _hostedZoneId; private string _recordName; private RRType _recordType; private string _resolverIP; private string _edns0ClientSubnetIP; private string _edns0ClientSubnetMask; /// <summary> /// Gets and sets the property HostedZoneId. /// <para> /// The ID of the hosted zone that you want Amazon Route 53 to simulate a query for. /// </para> /// </summary> [AWSProperty(Required=true, Max=32)] public string HostedZoneId { get { return this._hostedZoneId; } set { this._hostedZoneId = value; } } // Check to see if HostedZoneId property is set internal bool IsSetHostedZoneId() { return this._hostedZoneId != null; } /// <summary> /// Gets and sets the property RecordName. /// <para> /// The name of the resource record set that you want Amazon Route 53 to simulate a query /// for. /// </para> /// </summary> [AWSProperty(Required=true, Max=1024)] public string RecordName { get { return this._recordName; } set { this._recordName = value; } } // Check to see if RecordName property is set internal bool IsSetRecordName() { return this._recordName != null; } /// <summary> /// Gets and sets the property RecordType. /// <para> /// The type of the resource record set. /// </para> /// </summary> [AWSProperty(Required=true)] public RRType RecordType { get { return this._recordType; } set { this._recordType = value; } } // Check to see if RecordType property is set internal bool IsSetRecordType() { return this._recordType != null; } /// <summary> /// Gets and sets the property ResolverIP. /// <para> /// If you want to simulate a request from a specific DNS resolver, specify the IP address /// for that resolver. If you omit this value, <code>TestDnsAnswer</code> uses the IP /// address of a DNS resolver in the Amazon Web Services US East (N. Virginia) Region /// (<code>us-east-1</code>). /// </para> /// </summary> [AWSProperty(Max=45)] public string ResolverIP { get { return this._resolverIP; } set { this._resolverIP = value; } } // Check to see if ResolverIP property is set internal bool IsSetResolverIP() { return this._resolverIP != null; } /// <summary> /// Gets and sets the property EDNS0ClientSubnetIP. /// <para> /// If the resolver that you specified for resolverip supports EDNS0, specify the IPv4 /// or IPv6 address of a client in the applicable location, for example, <code>192.0.2.44</code> /// or <code>2001:db8:85a3::8a2e:370:7334</code>. /// </para> /// </summary> [AWSProperty(Max=45)] public string EDNS0ClientSubnetIP { get { return this._edns0ClientSubnetIP; } set { this._edns0ClientSubnetIP = value; } } // Check to see if EDNS0ClientSubnetIP property is set internal bool IsSetEDNS0ClientSubnetIP() { return this._edns0ClientSubnetIP != null; } /// <summary> /// Gets and sets the property EDNS0ClientSubnetMask. /// <para> /// If you specify an IP address for <code>edns0clientsubnetip</code>, you can optionally /// specify the number of bits of the IP address that you want the checking tool to include /// in the DNS query. For example, if you specify <code>192.0.2.44</code> for <code>edns0clientsubnetip</code> /// and <code>24</code> for <code>edns0clientsubnetmask</code>, the checking tool will /// simulate a request from 192.0.2.0/24. The default value is 24 bits for IPv4 addresses /// and 64 bits for IPv6 addresses. /// </para> /// /// <para> /// The range of valid values depends on whether <code>edns0clientsubnetip</code> is an /// IPv4 or an IPv6 address: /// </para> /// <ul> <li> /// <para> /// <b>IPv4</b>: Specify a value between 0 and 32 /// </para> /// </li> <li> /// <para> /// <b>IPv6</b>: Specify a value between 0 and 128 /// </para> /// </li> </ul> /// </summary> [AWSProperty(Min=0, Max=3)] public string EDNS0ClientSubnetMask { get { return this._edns0ClientSubnetMask; } set { this._edns0ClientSubnetMask = value; } } // Check to see if EDNS0ClientSubnetMask property is set internal bool IsSetEDNS0ClientSubnetMask() { return this._edns0ClientSubnetMask != null; } } }