7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/opensearch/OpenSearchServiceRequest.h>
11#include <aws/opensearch/OpenSearchService_EXPORTS.h>
12#include <aws/opensearch/model/AIMLOptionsInput.h>
13#include <aws/opensearch/model/AdvancedSecurityOptionsInput.h>
14#include <aws/opensearch/model/AutoTuneOptionsInput.h>
15#include <aws/opensearch/model/AutomatedSnapshotPauseRequestOptions.h>
16#include <aws/opensearch/model/ClusterConfig.h>
17#include <aws/opensearch/model/CognitoOptions.h>
18#include <aws/opensearch/model/DeploymentStrategyOptions.h>
19#include <aws/opensearch/model/DomainEndpointOptions.h>
20#include <aws/opensearch/model/DomainUseCase.h>
21#include <aws/opensearch/model/EBSOptions.h>
22#include <aws/opensearch/model/EncryptionAtRestOptions.h>
23#include <aws/opensearch/model/EngineMode.h>
24#include <aws/opensearch/model/IPAddressType.h>
25#include <aws/opensearch/model/IdentityCenterOptionsInput.h>
26#include <aws/opensearch/model/LogPublishingOption.h>
27#include <aws/opensearch/model/LogType.h>
28#include <aws/opensearch/model/NodeToNodeEncryptionOptions.h>
29#include <aws/opensearch/model/OffPeakWindowOptions.h>
30#include <aws/opensearch/model/SnapshotOptions.h>
31#include <aws/opensearch/model/SoftwareUpdateOptions.h>
32#include <aws/opensearch/model/Tag.h>
33#include <aws/opensearch/model/VPCOptions.h>
38namespace OpenSearchService {
62 template <
typename DomainNameT = Aws::String>
64 m_domainNameHasBeenSet =
true;
65 m_domainName = std::forward<DomainNameT>(value);
67 template <
typename DomainNameT = Aws::String>
85 template <
typename EngineVersionT = Aws::String>
87 m_engineVersionHasBeenSet =
true;
88 m_engineVersion = std::forward<EngineVersionT>(value);
90 template <
typename EngineVersionT = Aws::String>
103 template <
typename ClusterConfigT = ClusterConfig>
105 m_clusterConfigHasBeenSet =
true;
106 m_clusterConfig = std::forward<ClusterConfigT>(value);
108 template <
typename ClusterConfigT = ClusterConfig>
122 template <
typename EBSOptionsT = EBSOptions>
124 m_eBSOptionsHasBeenSet =
true;
125 m_eBSOptions = std::forward<EBSOptionsT>(value);
127 template <
typename EBSOptionsT = EBSOptions>
141 template <
typename AccessPoliciesT = Aws::String>
143 m_accessPoliciesHasBeenSet =
true;
144 m_accessPolicies = std::forward<AccessPoliciesT>(value);
146 template <
typename AccessPoliciesT = Aws::String>
163 m_iPAddressTypeHasBeenSet =
true;
164 m_iPAddressType = value;
179 template <
typename SnapshotOptionsT = SnapshotOptions>
181 m_snapshotOptionsHasBeenSet =
true;
182 m_snapshotOptions = std::forward<SnapshotOptionsT>(value);
184 template <
typename SnapshotOptionsT = SnapshotOptions>
201 template <
typename VPCOptionsT = VPCOptions>
203 m_vPCOptionsHasBeenSet =
true;
204 m_vPCOptions = std::forward<VPCOptionsT>(value);
206 template <
typename VPCOptionsT = VPCOptions>
222 template <
typename CognitoOptionsT = CognitoOptions>
224 m_cognitoOptionsHasBeenSet =
true;
225 m_cognitoOptions = std::forward<CognitoOptionsT>(value);
227 template <
typename CognitoOptionsT = CognitoOptions>
240 template <
typename EncryptionAtRestOptionsT = EncryptionAtRestOptions>
242 m_encryptionAtRestOptionsHasBeenSet =
true;
243 m_encryptionAtRestOptions = std::forward<EncryptionAtRestOptionsT>(value);
245 template <
typename EncryptionAtRestOptionsT = EncryptionAtRestOptions>
258 template <
typename NodeToNodeEncryptionOptionsT = NodeToNodeEncryptionOptions>
260 m_nodeToNodeEncryptionOptionsHasBeenSet =
true;
261 m_nodeToNodeEncryptionOptions = std::forward<NodeToNodeEncryptionOptionsT>(value);
263 template <
typename NodeToNodeEncryptionOptionsT = NodeToNodeEncryptionOptions>
296 template <
typename AdvancedOptionsT = Aws::Map<Aws::String, Aws::String>>
298 m_advancedOptionsHasBeenSet =
true;
299 m_advancedOptions = std::forward<AdvancedOptionsT>(value);
301 template <
typename AdvancedOptionsT = Aws::Map<Aws::String, Aws::String>>
306 template <
typename AdvancedOptionsKeyT = Aws::String,
typename AdvancedOptionsValueT = Aws::String>
308 m_advancedOptionsHasBeenSet =
true;
309 m_advancedOptions.emplace(std::forward<AdvancedOptionsKeyT>(key), std::forward<AdvancedOptionsValueT>(value));
320 template <
typename LogPublishingOptionsT = Aws::Map<LogType, LogPublishingOption>>
322 m_logPublishingOptionsHasBeenSet =
true;
323 m_logPublishingOptions = std::forward<LogPublishingOptionsT>(value);
325 template <
typename LogPublishingOptionsT = Aws::Map<LogType, LogPublishingOption>>
331 m_logPublishingOptionsHasBeenSet =
true;
332 m_logPublishingOptions.emplace(key, value);
344 template <
typename DomainEndpo
intOptionsT = DomainEndpo
intOptions>
346 m_domainEndpointOptionsHasBeenSet =
true;
347 m_domainEndpointOptions = std::forward<DomainEndpointOptionsT>(value);
349 template <
typename DomainEndpo
intOptionsT = DomainEndpo
intOptions>
362 template <
typename AdvancedSecurityOptionsT = AdvancedSecurityOptionsInput>
364 m_advancedSecurityOptionsHasBeenSet =
true;
365 m_advancedSecurityOptions = std::forward<AdvancedSecurityOptionsT>(value);
367 template <
typename AdvancedSecurityOptionsT = AdvancedSecurityOptionsInput>
381 template <
typename IdentityCenterOptionsT = IdentityCenterOptionsInput>
383 m_identityCenterOptionsHasBeenSet =
true;
384 m_identityCenterOptions = std::forward<IdentityCenterOptionsT>(value);
386 template <
typename IdentityCenterOptionsT = IdentityCenterOptionsInput>
399 template <
typename TagListT = Aws::Vector<Tag>>
401 m_tagListHasBeenSet =
true;
402 m_tagList = std::forward<TagListT>(value);
404 template <
typename TagListT = Aws::Vector<Tag>>
409 template <
typename TagListT = Tag>
411 m_tagListHasBeenSet =
true;
412 m_tagList.emplace_back(std::forward<TagListT>(value));
423 template <
typename AutoTuneOptionsT = AutoTuneOptionsInput>
425 m_autoTuneOptionsHasBeenSet =
true;
426 m_autoTuneOptions = std::forward<AutoTuneOptionsT>(value);
428 template <
typename AutoTuneOptionsT = AutoTuneOptionsInput>
445 template <
typename OffPeakWindowOptionsT = OffPeakWindowOptions>
447 m_offPeakWindowOptionsHasBeenSet =
true;
448 m_offPeakWindowOptions = std::forward<OffPeakWindowOptionsT>(value);
450 template <
typename OffPeakWindowOptionsT = OffPeakWindowOptions>
463 template <
typename SoftwareUpdateOptionsT = SoftwareUpdateOptions>
465 m_softwareUpdateOptionsHasBeenSet =
true;
466 m_softwareUpdateOptions = std::forward<SoftwareUpdateOptionsT>(value);
468 template <
typename SoftwareUpdateOptionsT = SoftwareUpdateOptions>
481 template <
typename AIMLOptionsT = AIMLOptionsInput>
483 m_aIMLOptionsHasBeenSet =
true;
484 m_aIMLOptions = std::forward<AIMLOptionsT>(value);
486 template <
typename AIMLOptionsT = AIMLOptionsInput>
499 template <
typename DeploymentStrategyOptionsT = DeploymentStrategyOptions>
501 m_deploymentStrategyOptionsHasBeenSet =
true;
502 m_deploymentStrategyOptions = std::forward<DeploymentStrategyOptionsT>(value);
504 template <
typename DeploymentStrategyOptionsT = DeploymentStrategyOptions>
521 template <
typename AutomatedSnapshotPauseOptionsT = AutomatedSnapshotPauseRequestOptions>
523 m_automatedSnapshotPauseOptionsHasBeenSet =
true;
524 m_automatedSnapshotPauseOptions = std::forward<AutomatedSnapshotPauseOptionsT>(value);
526 template <
typename AutomatedSnapshotPauseOptionsT = AutomatedSnapshotPauseRequestOptions>
541 m_useCaseHasBeenSet =
true;
558 m_engineModeHasBeenSet =
true;
559 m_engineMode = value;
579 SnapshotOptions m_snapshotOptions;
581 VPCOptions m_vPCOptions;
583 CognitoOptions m_cognitoOptions;
585 EncryptionAtRestOptions m_encryptionAtRestOptions;
587 NodeToNodeEncryptionOptions m_nodeToNodeEncryptionOptions;
593 DomainEndpointOptions m_domainEndpointOptions;
595 AdvancedSecurityOptionsInput m_advancedSecurityOptions;
597 IdentityCenterOptionsInput m_identityCenterOptions;
601 AutoTuneOptionsInput m_autoTuneOptions;
603 OffPeakWindowOptions m_offPeakWindowOptions;
605 SoftwareUpdateOptions m_softwareUpdateOptions;
607 AIMLOptionsInput m_aIMLOptions;
609 DeploymentStrategyOptions m_deploymentStrategyOptions;
611 AutomatedSnapshotPauseRequestOptions m_automatedSnapshotPauseOptions;
616 bool m_domainNameHasBeenSet =
false;
617 bool m_engineVersionHasBeenSet =
false;
618 bool m_clusterConfigHasBeenSet =
false;
619 bool m_eBSOptionsHasBeenSet =
false;
620 bool m_accessPoliciesHasBeenSet =
false;
621 bool m_iPAddressTypeHasBeenSet =
false;
622 bool m_snapshotOptionsHasBeenSet =
false;
623 bool m_vPCOptionsHasBeenSet =
false;
624 bool m_cognitoOptionsHasBeenSet =
false;
625 bool m_encryptionAtRestOptionsHasBeenSet =
false;
626 bool m_nodeToNodeEncryptionOptionsHasBeenSet =
false;
627 bool m_advancedOptionsHasBeenSet =
false;
628 bool m_logPublishingOptionsHasBeenSet =
false;
629 bool m_domainEndpointOptionsHasBeenSet =
false;
630 bool m_advancedSecurityOptionsHasBeenSet =
false;
631 bool m_identityCenterOptionsHasBeenSet =
false;
632 bool m_tagListHasBeenSet =
false;
633 bool m_autoTuneOptionsHasBeenSet =
false;
634 bool m_offPeakWindowOptionsHasBeenSet =
false;
635 bool m_softwareUpdateOptionsHasBeenSet =
false;
636 bool m_aIMLOptionsHasBeenSet =
false;
637 bool m_deploymentStrategyOptionsHasBeenSet =
false;
638 bool m_automatedSnapshotPauseOptionsHasBeenSet =
false;
639 bool m_useCaseHasBeenSet =
false;
640 bool m_engineModeHasBeenSet =
false;
void SetIdentityCenterOptions(IdentityCenterOptionsT &&value)
CreateDomainRequest & WithNodeToNodeEncryptionOptions(NodeToNodeEncryptionOptionsT &&value)
bool DeploymentStrategyOptionsHasBeenSet() const
CreateDomainRequest & WithTagList(TagListT &&value)
bool EngineVersionHasBeenSet() const
const Aws::Map< LogType, LogPublishingOption > & GetLogPublishingOptions() const
void SetSoftwareUpdateOptions(SoftwareUpdateOptionsT &&value)
void SetAutomatedSnapshotPauseOptions(AutomatedSnapshotPauseOptionsT &&value)
bool SnapshotOptionsHasBeenSet() const
bool IdentityCenterOptionsHasBeenSet() const
CreateDomainRequest & WithAdvancedSecurityOptions(AdvancedSecurityOptionsT &&value)
CreateDomainRequest & AddAdvancedOptions(AdvancedOptionsKeyT &&key, AdvancedOptionsValueT &&value)
bool EngineModeHasBeenSet() const
const ClusterConfig & GetClusterConfig() const
void SetIPAddressType(IPAddressType value)
const AIMLOptionsInput & GetAIMLOptions() const
bool DomainNameHasBeenSet() const
void SetAIMLOptions(AIMLOptionsT &&value)
const CognitoOptions & GetCognitoOptions() const
IPAddressType GetIPAddressType() const
CreateDomainRequest & WithDeploymentStrategyOptions(DeploymentStrategyOptionsT &&value)
CreateDomainRequest & WithDomainName(DomainNameT &&value)
CreateDomainRequest & WithCognitoOptions(CognitoOptionsT &&value)
const Aws::String & GetEngineVersion() const
bool AutoTuneOptionsHasBeenSet() const
void SetEBSOptions(EBSOptionsT &&value)
void SetClusterConfig(ClusterConfigT &&value)
virtual const char * GetServiceRequestName() const override
CreateDomainRequest & WithEngineVersion(EngineVersionT &&value)
CreateDomainRequest & WithAIMLOptions(AIMLOptionsT &&value)
CreateDomainRequest & AddTagList(TagListT &&value)
bool AdvancedOptionsHasBeenSet() const
CreateDomainRequest & WithVPCOptions(VPCOptionsT &&value)
DomainUseCase GetUseCase() const
void SetDomainEndpointOptions(DomainEndpointOptionsT &&value)
CreateDomainRequest & WithEBSOptions(EBSOptionsT &&value)
const SoftwareUpdateOptions & GetSoftwareUpdateOptions() const
bool ClusterConfigHasBeenSet() const
CreateDomainRequest & WithAutoTuneOptions(AutoTuneOptionsT &&value)
const EBSOptions & GetEBSOptions() const
void SetDeploymentStrategyOptions(DeploymentStrategyOptionsT &&value)
const DeploymentStrategyOptions & GetDeploymentStrategyOptions() const
const IdentityCenterOptionsInput & GetIdentityCenterOptions() const
const AdvancedSecurityOptionsInput & GetAdvancedSecurityOptions() const
const NodeToNodeEncryptionOptions & GetNodeToNodeEncryptionOptions() const
bool SoftwareUpdateOptionsHasBeenSet() const
const SnapshotOptions & GetSnapshotOptions() const
bool EBSOptionsHasBeenSet() const
const Aws::String & GetAccessPolicies() const
void SetSnapshotOptions(SnapshotOptionsT &&value)
CreateDomainRequest & WithIdentityCenterOptions(IdentityCenterOptionsT &&value)
bool AdvancedSecurityOptionsHasBeenSet() const
void SetUseCase(DomainUseCase value)
const DomainEndpointOptions & GetDomainEndpointOptions() const
const EncryptionAtRestOptions & GetEncryptionAtRestOptions() const
const Aws::String & GetDomainName() const
void SetOffPeakWindowOptions(OffPeakWindowOptionsT &&value)
AWS_OPENSEARCHSERVICE_API CreateDomainRequest()=default
void SetAccessPolicies(AccessPoliciesT &&value)
CreateDomainRequest & WithUseCase(DomainUseCase value)
bool OffPeakWindowOptionsHasBeenSet() const
void SetTagList(TagListT &&value)
bool UseCaseHasBeenSet() const
CreateDomainRequest & WithAccessPolicies(AccessPoliciesT &&value)
void SetEncryptionAtRestOptions(EncryptionAtRestOptionsT &&value)
void SetCognitoOptions(CognitoOptionsT &&value)
CreateDomainRequest & WithSnapshotOptions(SnapshotOptionsT &&value)
bool LogPublishingOptionsHasBeenSet() const
CreateDomainRequest & WithAdvancedOptions(AdvancedOptionsT &&value)
bool NodeToNodeEncryptionOptionsHasBeenSet() const
const VPCOptions & GetVPCOptions() const
bool EncryptionAtRestOptionsHasBeenSet() const
const OffPeakWindowOptions & GetOffPeakWindowOptions() const
CreateDomainRequest & WithSoftwareUpdateOptions(SoftwareUpdateOptionsT &&value)
void SetAdvancedOptions(AdvancedOptionsT &&value)
EngineMode GetEngineMode() const
CreateDomainRequest & WithEngineMode(EngineMode value)
void SetAutoTuneOptions(AutoTuneOptionsT &&value)
bool AIMLOptionsHasBeenSet() const
const AutomatedSnapshotPauseRequestOptions & GetAutomatedSnapshotPauseOptions() const
void SetEngineMode(EngineMode value)
const Aws::Vector< Tag > & GetTagList() const
void SetEngineVersion(EngineVersionT &&value)
CreateDomainRequest & WithEncryptionAtRestOptions(EncryptionAtRestOptionsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAdvancedOptions() const
AWS_OPENSEARCHSERVICE_API Aws::String SerializePayload() const override
CreateDomainRequest & AddLogPublishingOptions(LogType key, LogPublishingOption value)
CreateDomainRequest & WithLogPublishingOptions(LogPublishingOptionsT &&value)
bool IPAddressTypeHasBeenSet() const
bool AccessPoliciesHasBeenSet() const
void SetVPCOptions(VPCOptionsT &&value)
const AutoTuneOptionsInput & GetAutoTuneOptions() const
void SetLogPublishingOptions(LogPublishingOptionsT &&value)
CreateDomainRequest & WithDomainEndpointOptions(DomainEndpointOptionsT &&value)
void SetDomainName(DomainNameT &&value)
bool TagListHasBeenSet() const
void SetNodeToNodeEncryptionOptions(NodeToNodeEncryptionOptionsT &&value)
void SetAdvancedSecurityOptions(AdvancedSecurityOptionsT &&value)
bool VPCOptionsHasBeenSet() const
CreateDomainRequest & WithOffPeakWindowOptions(OffPeakWindowOptionsT &&value)
CreateDomainRequest & WithAutomatedSnapshotPauseOptions(AutomatedSnapshotPauseOptionsT &&value)
bool DomainEndpointOptionsHasBeenSet() const
CreateDomainRequest & WithClusterConfig(ClusterConfigT &&value)
bool CognitoOptionsHasBeenSet() const
bool AutomatedSnapshotPauseOptionsHasBeenSet() const
CreateDomainRequest & WithIPAddressType(IPAddressType value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector