/*
* 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 opensearch-2021-01-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.OpenSearchService.Model
{
///
/// Container for the configuration of an OpenSearch Service domain.
///
public partial class DomainConfig
{
private AccessPoliciesStatus _accessPolicies;
private AdvancedOptionsStatus _advancedOptions;
private AdvancedSecurityOptionsStatus _advancedSecurityOptions;
private AutoTuneOptionsStatus _autoTuneOptions;
private ChangeProgressDetails _changeProgressDetails;
private ClusterConfigStatus _clusterConfig;
private CognitoOptionsStatus _cognitoOptions;
private DomainEndpointOptionsStatus _domainEndpointOptions;
private EBSOptionsStatus _ebsOptions;
private EncryptionAtRestOptionsStatus _encryptionAtRestOptions;
private VersionStatus _engineVersion;
private LogPublishingOptionsStatus _logPublishingOptions;
private NodeToNodeEncryptionOptionsStatus _nodeToNodeEncryptionOptions;
private OffPeakWindowOptionsStatus _offPeakWindowOptions;
private SnapshotOptionsStatus _snapshotOptions;
private SoftwareUpdateOptionsStatus _softwareUpdateOptions;
private VPCDerivedInfoStatus _vpcOptions;
///
/// Gets and sets the property AccessPolicies.
///
/// Specifies the access policies for the domain.
///
///
public AccessPoliciesStatus 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 AdvancedOptions.
///
/// Key-value pairs to specify advanced configuration options. For more information, see
/// Advanced
/// options.
///
///
public AdvancedOptionsStatus AdvancedOptions
{
get { return this._advancedOptions; }
set { this._advancedOptions = value; }
}
// Check to see if AdvancedOptions property is set
internal bool IsSetAdvancedOptions()
{
return this._advancedOptions != null;
}
///
/// Gets and sets the property AdvancedSecurityOptions.
///
/// Container for fine-grained access control settings for the domain.
///
///
public AdvancedSecurityOptionsStatus AdvancedSecurityOptions
{
get { return this._advancedSecurityOptions; }
set { this._advancedSecurityOptions = value; }
}
// Check to see if AdvancedSecurityOptions property is set
internal bool IsSetAdvancedSecurityOptions()
{
return this._advancedSecurityOptions != null;
}
///
/// Gets and sets the property AutoTuneOptions.
///
/// Container for Auto-Tune settings for the domain.
///
///
public AutoTuneOptionsStatus AutoTuneOptions
{
get { return this._autoTuneOptions; }
set { this._autoTuneOptions = value; }
}
// Check to see if AutoTuneOptions property is set
internal bool IsSetAutoTuneOptions()
{
return this._autoTuneOptions != null;
}
///
/// Gets and sets the property ChangeProgressDetails.
///
/// Container for information about the progress of an existing configuration change.
///
///
public ChangeProgressDetails ChangeProgressDetails
{
get { return this._changeProgressDetails; }
set { this._changeProgressDetails = value; }
}
// Check to see if ChangeProgressDetails property is set
internal bool IsSetChangeProgressDetails()
{
return this._changeProgressDetails != null;
}
///
/// Gets and sets the property ClusterConfig.
///
/// Container for the cluster configuration of a the domain.
///
///
public ClusterConfigStatus ClusterConfig
{
get { return this._clusterConfig; }
set { this._clusterConfig = value; }
}
// Check to see if ClusterConfig property is set
internal bool IsSetClusterConfig()
{
return this._clusterConfig != null;
}
///
/// Gets and sets the property CognitoOptions.
///
/// Container for Amazon Cognito options for the domain.
///
///
public CognitoOptionsStatus CognitoOptions
{
get { return this._cognitoOptions; }
set { this._cognitoOptions = value; }
}
// Check to see if CognitoOptions property is set
internal bool IsSetCognitoOptions()
{
return this._cognitoOptions != null;
}
///
/// Gets and sets the property DomainEndpointOptions.
///
/// Additional options for the domain endpoint, such as whether to require HTTPS for all
/// traffic.
///
///
public DomainEndpointOptionsStatus 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 EBSOptions.
///
/// Container for EBS options configured for the domain.
///
///
public EBSOptionsStatus EBSOptions
{
get { return this._ebsOptions; }
set { this._ebsOptions = value; }
}
// Check to see if EBSOptions property is set
internal bool IsSetEBSOptions()
{
return this._ebsOptions != null;
}
///
/// Gets and sets the property EncryptionAtRestOptions.
///
/// Key-value pairs to enable encryption at rest.
///
///
public EncryptionAtRestOptionsStatus 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 EngineVersion.
///
/// The OpenSearch or Elasticsearch version that the domain is running.
///
///
public VersionStatus EngineVersion
{
get { return this._engineVersion; }
set { this._engineVersion = value; }
}
// Check to see if EngineVersion property is set
internal bool IsSetEngineVersion()
{
return this._engineVersion != null;
}
///
/// Gets and sets the property LogPublishingOptions.
///
/// Key-value pairs to configure log publishing.
///
///
public LogPublishingOptionsStatus 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.
///
/// Whether node-to-node encryption is enabled or disabled.
///
///
public NodeToNodeEncryptionOptionsStatus 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 OffPeakWindowOptions.
///
/// Container for off-peak window options for the domain.
///
///
public OffPeakWindowOptionsStatus OffPeakWindowOptions
{
get { return this._offPeakWindowOptions; }
set { this._offPeakWindowOptions = value; }
}
// Check to see if OffPeakWindowOptions property is set
internal bool IsSetOffPeakWindowOptions()
{
return this._offPeakWindowOptions != null;
}
///
/// Gets and sets the property SnapshotOptions.
///
/// DEPRECATED. Container for parameters required to configure automated snapshots of
/// domain indexes.
///
///
public SnapshotOptionsStatus SnapshotOptions
{
get { return this._snapshotOptions; }
set { this._snapshotOptions = value; }
}
// Check to see if SnapshotOptions property is set
internal bool IsSetSnapshotOptions()
{
return this._snapshotOptions != null;
}
///
/// Gets and sets the property SoftwareUpdateOptions.
///
/// Software update options for the domain.
///
///
public SoftwareUpdateOptionsStatus SoftwareUpdateOptions
{
get { return this._softwareUpdateOptions; }
set { this._softwareUpdateOptions = value; }
}
// Check to see if SoftwareUpdateOptions property is set
internal bool IsSetSoftwareUpdateOptions()
{
return this._softwareUpdateOptions != null;
}
///
/// Gets and sets the property VPCOptions.
///
/// The current VPC options for the domain and the status of any updates to their configuration.
///
///
public VPCDerivedInfoStatus VPCOptions
{
get { return this._vpcOptions; }
set { this._vpcOptions = value; }
}
// Check to see if VPCOptions property is set
internal bool IsSetVPCOptions()
{
return this._vpcOptions != null;
}
}
}