/* * 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 iot-2015-05-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.IoT.Model { /// /// Container for the parameters to the CreateDomainConfiguration operation. /// Creates a domain configuration. /// /// /// /// Requires permission to access the CreateDomainConfiguration /// action. /// /// public partial class CreateDomainConfigurationRequest : AmazonIoTRequest { private AuthorizerConfig _authorizerConfig; private string _domainConfigurationName; private string _domainName; private List _serverCertificateArns = new List(); private ServiceType _serviceType; private List _tags = new List(); private TlsConfig _tlsConfig; private string _validationCertificateArn; /// /// Gets and sets the property AuthorizerConfig. /// /// An object that specifies the authorization service for a domain. /// /// public AuthorizerConfig AuthorizerConfig { get { return this._authorizerConfig; } set { this._authorizerConfig = value; } } // Check to see if AuthorizerConfig property is set internal bool IsSetAuthorizerConfig() { return this._authorizerConfig != null; } /// /// Gets and sets the property DomainConfigurationName. /// /// The name of the domain configuration. This value must be unique to a region. /// /// [AWSProperty(Required=true, Min=1, Max=128)] public string DomainConfigurationName { get { return this._domainConfigurationName; } set { this._domainConfigurationName = value; } } // Check to see if DomainConfigurationName property is set internal bool IsSetDomainConfigurationName() { return this._domainConfigurationName != null; } /// /// Gets and sets the property DomainName. /// /// The name of the domain. /// /// [AWSProperty(Min=1, Max=253)] 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 ServerCertificateArns. /// /// The ARNs of the certificates that IoT passes to the device during the TLS handshake. /// Currently you can specify only one certificate ARN. This value is not required for /// Amazon Web Services-managed domains. /// /// [AWSProperty(Min=0, Max=1)] public List ServerCertificateArns { get { return this._serverCertificateArns; } set { this._serverCertificateArns = value; } } // Check to see if ServerCertificateArns property is set internal bool IsSetServerCertificateArns() { return this._serverCertificateArns != null && this._serverCertificateArns.Count > 0; } /// /// Gets and sets the property ServiceType. /// /// The type of service delivered by the endpoint. /// /// /// /// Amazon Web Services IoT Core currently supports only the DATA service /// type. /// /// /// public ServiceType ServiceType { get { return this._serviceType; } set { this._serviceType = value; } } // Check to see if ServiceType property is set internal bool IsSetServiceType() { return this._serviceType != null; } /// /// Gets and sets the property Tags. /// /// Metadata which can be used to manage the domain configuration. /// /// /// /// For URI Request parameters use format: ...key1=value1&key2=value2... /// /// /// /// For the CLI command-line parameter use format: &&tags "key1=value1&key2=value2..." /// /// /// /// For the cli-input-json file use format: "tags": "key1=value1&key2=value2..." /// /// /// 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; } /// /// Gets and sets the property TlsConfig. /// /// An object that specifies the TLS configuration for a domain. /// /// public TlsConfig TlsConfig { get { return this._tlsConfig; } set { this._tlsConfig = value; } } // Check to see if TlsConfig property is set internal bool IsSetTlsConfig() { return this._tlsConfig != null; } /// /// Gets and sets the property ValidationCertificateArn. /// /// The certificate used to validate the server certificate and prove domain name ownership. /// This certificate must be signed by a public certificate authority. This value is not /// required for Amazon Web Services-managed domains. /// /// [AWSProperty(Min=1, Max=2048)] public string ValidationCertificateArn { get { return this._validationCertificateArn; } set { this._validationCertificateArn = value; } } // Check to see if ValidationCertificateArn property is set internal bool IsSetValidationCertificateArn() { return this._validationCertificateArn != null; } } }