/* * 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 securityhub-2018-10-26.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.SecurityHub.Model { /// /// Information about an Elasticsearch domain. /// public partial class AwsElasticsearchDomainDetails { private string _accessPolicies; private AwsElasticsearchDomainDomainEndpointOptions _domainEndpointOptions; private string _domainId; private string _domainName; private AwsElasticsearchDomainElasticsearchClusterConfigDetails _elasticsearchClusterConfig; private string _elasticsearchVersion; private AwsElasticsearchDomainEncryptionAtRestOptions _encryptionAtRestOptions; private string _endpoint; private Dictionary _endpoints = new Dictionary(); private AwsElasticsearchDomainLogPublishingOptions _logPublishingOptions; private AwsElasticsearchDomainNodeToNodeEncryptionOptions _nodeToNodeEncryptionOptions; private AwsElasticsearchDomainServiceSoftwareOptions _serviceSoftwareOptions; private AwsElasticsearchDomainVPCOptions _vpcOptions; /// /// Gets and sets the property AccessPolicies. /// /// IAM policy document specifying the access policies for the new Elasticsearch domain. /// /// public string AccessPolicies { get { return this._accessPolicies; } set { this._accessPolicies = value; } } // Check to see if AccessPolicies property is set internal bool IsSetAccessPolicies() { return this._accessPolicies != null; } /// /// Gets and sets the property DomainEndpointOptions. /// /// Additional options for the domain endpoint. /// /// public AwsElasticsearchDomainDomainEndpointOptions DomainEndpointOptions { get { return this._domainEndpointOptions; } set { this._domainEndpointOptions = value; } } // Check to see if DomainEndpointOptions property is set internal bool IsSetDomainEndpointOptions() { return this._domainEndpointOptions != null; } /// /// Gets and sets the property DomainId. /// /// Unique identifier for an Elasticsearch domain. /// /// public string DomainId { get { return this._domainId; } set { this._domainId = value; } } // Check to see if DomainId property is set internal bool IsSetDomainId() { return this._domainId != null; } /// /// Gets and sets the property DomainName. /// /// Name of an Elasticsearch domain. /// /// /// /// Domain names are unique across all domains owned by the same account within an Amazon /// Web Services Region. /// /// /// /// Domain names must start with a lowercase letter and must be between 3 and 28 characters. /// /// /// /// Valid characters are a-z (lowercase only), 0-9, and – (hyphen). /// /// 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 ElasticsearchClusterConfig. /// /// Information about an OpenSearch cluster configuration. /// /// public AwsElasticsearchDomainElasticsearchClusterConfigDetails ElasticsearchClusterConfig { get { return this._elasticsearchClusterConfig; } set { this._elasticsearchClusterConfig = value; } } // Check to see if ElasticsearchClusterConfig property is set internal bool IsSetElasticsearchClusterConfig() { return this._elasticsearchClusterConfig != null; } /// /// Gets and sets the property ElasticsearchVersion. /// /// OpenSearch version. /// /// public string ElasticsearchVersion { get { return this._elasticsearchVersion; } set { this._elasticsearchVersion = value; } } // Check to see if ElasticsearchVersion property is set internal bool IsSetElasticsearchVersion() { return this._elasticsearchVersion != null; } /// /// Gets and sets the property EncryptionAtRestOptions. /// /// Details about the configuration for encryption at rest. /// /// public AwsElasticsearchDomainEncryptionAtRestOptions EncryptionAtRestOptions { get { return this._encryptionAtRestOptions; } set { this._encryptionAtRestOptions = value; } } // Check to see if EncryptionAtRestOptions property is set internal bool IsSetEncryptionAtRestOptions() { return this._encryptionAtRestOptions != null; } /// /// Gets and sets the property Endpoint. /// /// Domain-specific endpoint used to submit index, search, and data upload requests to /// an Elasticsearch domain. /// /// /// /// The endpoint is a service URL. /// /// public string Endpoint { get { return this._endpoint; } set { this._endpoint = value; } } // Check to see if Endpoint property is set internal bool IsSetEndpoint() { return this._endpoint != null; } /// /// Gets and sets the property Endpoints. /// /// The key-value pair that exists if the Elasticsearch domain uses VPC endpoints. /// /// public Dictionary Endpoints { get { return this._endpoints; } set { this._endpoints = value; } } // Check to see if Endpoints property is set internal bool IsSetEndpoints() { return this._endpoints != null && this._endpoints.Count > 0; } /// /// Gets and sets the property LogPublishingOptions. /// /// Configures the CloudWatch Logs to publish for the Elasticsearch domain. /// /// public AwsElasticsearchDomainLogPublishingOptions LogPublishingOptions { get { return this._logPublishingOptions; } set { this._logPublishingOptions = value; } } // Check to see if LogPublishingOptions property is set internal bool IsSetLogPublishingOptions() { return this._logPublishingOptions != null; } /// /// Gets and sets the property NodeToNodeEncryptionOptions. /// /// Details about the configuration for node-to-node encryption. /// /// public AwsElasticsearchDomainNodeToNodeEncryptionOptions NodeToNodeEncryptionOptions { get { return this._nodeToNodeEncryptionOptions; } set { this._nodeToNodeEncryptionOptions = value; } } // Check to see if NodeToNodeEncryptionOptions property is set internal bool IsSetNodeToNodeEncryptionOptions() { return this._nodeToNodeEncryptionOptions != null; } /// /// Gets and sets the property ServiceSoftwareOptions. /// /// Information about the status of a domain relative to the latest service software. /// /// public AwsElasticsearchDomainServiceSoftwareOptions ServiceSoftwareOptions { get { return this._serviceSoftwareOptions; } set { this._serviceSoftwareOptions = value; } } // Check to see if ServiceSoftwareOptions property is set internal bool IsSetServiceSoftwareOptions() { return this._serviceSoftwareOptions != null; } /// /// Gets and sets the property VPCOptions. /// /// Information that OpenSearch derives based on VPCOptions for the domain. /// /// public AwsElasticsearchDomainVPCOptions VPCOptions { get { return this._vpcOptions; } set { this._vpcOptions = value; } } // Check to see if VPCOptions property is set internal bool IsSetVPCOptions() { return this._vpcOptions != null; } } }