/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace OpenSearchService { namespace Model { /** *

The result of a DescribeDomainHealth request. Contains health * information for the requested domain.

See Also:

AWS * API Reference

*/ class DescribeDomainHealthResult { public: AWS_OPENSEARCHSERVICE_API DescribeDomainHealthResult(); AWS_OPENSEARCHSERVICE_API DescribeDomainHealthResult(const Aws::AmazonWebServiceResult& result); AWS_OPENSEARCHSERVICE_API DescribeDomainHealthResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The current state of the domain.

  • Processing - * The domain has updates in progress.

  • Active - * Requested changes have been processed and deployed to the domain.

  • *
*/ inline const DomainState& GetDomainState() const{ return m_domainState; } /** *

The current state of the domain.

  • Processing - * The domain has updates in progress.

  • Active - * Requested changes have been processed and deployed to the domain.

  • *
*/ inline void SetDomainState(const DomainState& value) { m_domainState = value; } /** *

The current state of the domain.

  • Processing - * The domain has updates in progress.

  • Active - * Requested changes have been processed and deployed to the domain.

  • *
*/ inline void SetDomainState(DomainState&& value) { m_domainState = std::move(value); } /** *

The current state of the domain.

  • Processing - * The domain has updates in progress.

  • Active - * Requested changes have been processed and deployed to the domain.

  • *
*/ inline DescribeDomainHealthResult& WithDomainState(const DomainState& value) { SetDomainState(value); return *this;} /** *

The current state of the domain.

  • Processing - * The domain has updates in progress.

  • Active - * Requested changes have been processed and deployed to the domain.

  • *
*/ inline DescribeDomainHealthResult& WithDomainState(DomainState&& value) { SetDomainState(std::move(value)); return *this;} /** *

The number of Availability Zones configured for the domain. If the service is * unable to fetch this information, it will return NotAvailable.

*/ inline const Aws::String& GetAvailabilityZoneCount() const{ return m_availabilityZoneCount; } /** *

The number of Availability Zones configured for the domain. If the service is * unable to fetch this information, it will return NotAvailable.

*/ inline void SetAvailabilityZoneCount(const Aws::String& value) { m_availabilityZoneCount = value; } /** *

The number of Availability Zones configured for the domain. If the service is * unable to fetch this information, it will return NotAvailable.

*/ inline void SetAvailabilityZoneCount(Aws::String&& value) { m_availabilityZoneCount = std::move(value); } /** *

The number of Availability Zones configured for the domain. If the service is * unable to fetch this information, it will return NotAvailable.

*/ inline void SetAvailabilityZoneCount(const char* value) { m_availabilityZoneCount.assign(value); } /** *

The number of Availability Zones configured for the domain. If the service is * unable to fetch this information, it will return NotAvailable.

*/ inline DescribeDomainHealthResult& WithAvailabilityZoneCount(const Aws::String& value) { SetAvailabilityZoneCount(value); return *this;} /** *

The number of Availability Zones configured for the domain. If the service is * unable to fetch this information, it will return NotAvailable.

*/ inline DescribeDomainHealthResult& WithAvailabilityZoneCount(Aws::String&& value) { SetAvailabilityZoneCount(std::move(value)); return *this;} /** *

The number of Availability Zones configured for the domain. If the service is * unable to fetch this information, it will return NotAvailable.

*/ inline DescribeDomainHealthResult& WithAvailabilityZoneCount(const char* value) { SetAvailabilityZoneCount(value); return *this;} /** *

The number of active Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline const Aws::String& GetActiveAvailabilityZoneCount() const{ return m_activeAvailabilityZoneCount; } /** *

The number of active Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline void SetActiveAvailabilityZoneCount(const Aws::String& value) { m_activeAvailabilityZoneCount = value; } /** *

The number of active Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline void SetActiveAvailabilityZoneCount(Aws::String&& value) { m_activeAvailabilityZoneCount = std::move(value); } /** *

The number of active Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline void SetActiveAvailabilityZoneCount(const char* value) { m_activeAvailabilityZoneCount.assign(value); } /** *

The number of active Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline DescribeDomainHealthResult& WithActiveAvailabilityZoneCount(const Aws::String& value) { SetActiveAvailabilityZoneCount(value); return *this;} /** *

The number of active Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline DescribeDomainHealthResult& WithActiveAvailabilityZoneCount(Aws::String&& value) { SetActiveAvailabilityZoneCount(std::move(value)); return *this;} /** *

The number of active Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline DescribeDomainHealthResult& WithActiveAvailabilityZoneCount(const char* value) { SetActiveAvailabilityZoneCount(value); return *this;} /** *

The number of standby Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline const Aws::String& GetStandByAvailabilityZoneCount() const{ return m_standByAvailabilityZoneCount; } /** *

The number of standby Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline void SetStandByAvailabilityZoneCount(const Aws::String& value) { m_standByAvailabilityZoneCount = value; } /** *

The number of standby Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline void SetStandByAvailabilityZoneCount(Aws::String&& value) { m_standByAvailabilityZoneCount = std::move(value); } /** *

The number of standby Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline void SetStandByAvailabilityZoneCount(const char* value) { m_standByAvailabilityZoneCount.assign(value); } /** *

The number of standby Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline DescribeDomainHealthResult& WithStandByAvailabilityZoneCount(const Aws::String& value) { SetStandByAvailabilityZoneCount(value); return *this;} /** *

The number of standby Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline DescribeDomainHealthResult& WithStandByAvailabilityZoneCount(Aws::String&& value) { SetStandByAvailabilityZoneCount(std::move(value)); return *this;} /** *

The number of standby Availability Zones configured for the domain. If the * service is unable to fetch this information, it will return * NotAvailable.

*/ inline DescribeDomainHealthResult& WithStandByAvailabilityZoneCount(const char* value) { SetStandByAvailabilityZoneCount(value); return *this;} /** *

The number of data nodes configured for the domain. If the service is unable * to fetch this information, it will return NotAvailable.

*/ inline const Aws::String& GetDataNodeCount() const{ return m_dataNodeCount; } /** *

The number of data nodes configured for the domain. If the service is unable * to fetch this information, it will return NotAvailable.

*/ inline void SetDataNodeCount(const Aws::String& value) { m_dataNodeCount = value; } /** *

The number of data nodes configured for the domain. If the service is unable * to fetch this information, it will return NotAvailable.

*/ inline void SetDataNodeCount(Aws::String&& value) { m_dataNodeCount = std::move(value); } /** *

The number of data nodes configured for the domain. If the service is unable * to fetch this information, it will return NotAvailable.

*/ inline void SetDataNodeCount(const char* value) { m_dataNodeCount.assign(value); } /** *

The number of data nodes configured for the domain. If the service is unable * to fetch this information, it will return NotAvailable.

*/ inline DescribeDomainHealthResult& WithDataNodeCount(const Aws::String& value) { SetDataNodeCount(value); return *this;} /** *

The number of data nodes configured for the domain. If the service is unable * to fetch this information, it will return NotAvailable.

*/ inline DescribeDomainHealthResult& WithDataNodeCount(Aws::String&& value) { SetDataNodeCount(std::move(value)); return *this;} /** *

The number of data nodes configured for the domain. If the service is unable * to fetch this information, it will return NotAvailable.

*/ inline DescribeDomainHealthResult& WithDataNodeCount(const char* value) { SetDataNodeCount(value); return *this;} /** *

A boolean that indicates if dedicated master nodes are activated for the * domain.

*/ inline bool GetDedicatedMaster() const{ return m_dedicatedMaster; } /** *

A boolean that indicates if dedicated master nodes are activated for the * domain.

*/ inline void SetDedicatedMaster(bool value) { m_dedicatedMaster = value; } /** *

A boolean that indicates if dedicated master nodes are activated for the * domain.

*/ inline DescribeDomainHealthResult& WithDedicatedMaster(bool value) { SetDedicatedMaster(value); return *this;} /** *

The number of nodes that can be elected as a master node. If dedicated master * nodes is turned on, this value is the number of dedicated master nodes * configured for the domain. If the service is unable to fetch this information, * it will return NotAvailable.

*/ inline const Aws::String& GetMasterEligibleNodeCount() const{ return m_masterEligibleNodeCount; } /** *

The number of nodes that can be elected as a master node. If dedicated master * nodes is turned on, this value is the number of dedicated master nodes * configured for the domain. If the service is unable to fetch this information, * it will return NotAvailable.

*/ inline void SetMasterEligibleNodeCount(const Aws::String& value) { m_masterEligibleNodeCount = value; } /** *

The number of nodes that can be elected as a master node. If dedicated master * nodes is turned on, this value is the number of dedicated master nodes * configured for the domain. If the service is unable to fetch this information, * it will return NotAvailable.

*/ inline void SetMasterEligibleNodeCount(Aws::String&& value) { m_masterEligibleNodeCount = std::move(value); } /** *

The number of nodes that can be elected as a master node. If dedicated master * nodes is turned on, this value is the number of dedicated master nodes * configured for the domain. If the service is unable to fetch this information, * it will return NotAvailable.

*/ inline void SetMasterEligibleNodeCount(const char* value) { m_masterEligibleNodeCount.assign(value); } /** *

The number of nodes that can be elected as a master node. If dedicated master * nodes is turned on, this value is the number of dedicated master nodes * configured for the domain. If the service is unable to fetch this information, * it will return NotAvailable.

*/ inline DescribeDomainHealthResult& WithMasterEligibleNodeCount(const Aws::String& value) { SetMasterEligibleNodeCount(value); return *this;} /** *

The number of nodes that can be elected as a master node. If dedicated master * nodes is turned on, this value is the number of dedicated master nodes * configured for the domain. If the service is unable to fetch this information, * it will return NotAvailable.

*/ inline DescribeDomainHealthResult& WithMasterEligibleNodeCount(Aws::String&& value) { SetMasterEligibleNodeCount(std::move(value)); return *this;} /** *

The number of nodes that can be elected as a master node. If dedicated master * nodes is turned on, this value is the number of dedicated master nodes * configured for the domain. If the service is unable to fetch this information, * it will return NotAvailable.

*/ inline DescribeDomainHealthResult& WithMasterEligibleNodeCount(const char* value) { SetMasterEligibleNodeCount(value); return *this;} /** *

The number of warm nodes configured for the domain.

*/ inline const Aws::String& GetWarmNodeCount() const{ return m_warmNodeCount; } /** *

The number of warm nodes configured for the domain.

*/ inline void SetWarmNodeCount(const Aws::String& value) { m_warmNodeCount = value; } /** *

The number of warm nodes configured for the domain.

*/ inline void SetWarmNodeCount(Aws::String&& value) { m_warmNodeCount = std::move(value); } /** *

The number of warm nodes configured for the domain.

*/ inline void SetWarmNodeCount(const char* value) { m_warmNodeCount.assign(value); } /** *

The number of warm nodes configured for the domain.

*/ inline DescribeDomainHealthResult& WithWarmNodeCount(const Aws::String& value) { SetWarmNodeCount(value); return *this;} /** *

The number of warm nodes configured for the domain.

*/ inline DescribeDomainHealthResult& WithWarmNodeCount(Aws::String&& value) { SetWarmNodeCount(std::move(value)); return *this;} /** *

The number of warm nodes configured for the domain.

*/ inline DescribeDomainHealthResult& WithWarmNodeCount(const char* value) { SetWarmNodeCount(value); return *this;} /** *

Indicates whether the domain has an elected master node.

  • * Available - The domain has an elected master node.

  • * UnAvailable - The master node hasn't yet been elected, and a quorum to * elect a new master node hasn't been reached.

*/ inline const MasterNodeStatus& GetMasterNode() const{ return m_masterNode; } /** *

Indicates whether the domain has an elected master node.

  • * Available - The domain has an elected master node.

  • * UnAvailable - The master node hasn't yet been elected, and a quorum to * elect a new master node hasn't been reached.

*/ inline void SetMasterNode(const MasterNodeStatus& value) { m_masterNode = value; } /** *

Indicates whether the domain has an elected master node.

  • * Available - The domain has an elected master node.

  • * UnAvailable - The master node hasn't yet been elected, and a quorum to * elect a new master node hasn't been reached.

*/ inline void SetMasterNode(MasterNodeStatus&& value) { m_masterNode = std::move(value); } /** *

Indicates whether the domain has an elected master node.

  • * Available - The domain has an elected master node.

  • * UnAvailable - The master node hasn't yet been elected, and a quorum to * elect a new master node hasn't been reached.

*/ inline DescribeDomainHealthResult& WithMasterNode(const MasterNodeStatus& value) { SetMasterNode(value); return *this;} /** *

Indicates whether the domain has an elected master node.

  • * Available - The domain has an elected master node.

  • * UnAvailable - The master node hasn't yet been elected, and a quorum to * elect a new master node hasn't been reached.

*/ inline DescribeDomainHealthResult& WithMasterNode(MasterNodeStatus&& value) { SetMasterNode(std::move(value)); return *this;} /** *

The current health status of your cluster.

  • Red * - At least one primary shard is not allocated to any node.

  • * Yellow - All primary shards are allocated to nodes, but some * replicas aren’t.

  • Green - All primary shards and * their replicas are allocated to nodes.

  • * NotAvailable - Unable to retrieve cluster health.

*/ inline const DomainHealth& GetClusterHealth() const{ return m_clusterHealth; } /** *

The current health status of your cluster.

  • Red * - At least one primary shard is not allocated to any node.

  • * Yellow - All primary shards are allocated to nodes, but some * replicas aren’t.

  • Green - All primary shards and * their replicas are allocated to nodes.

  • * NotAvailable - Unable to retrieve cluster health.

*/ inline void SetClusterHealth(const DomainHealth& value) { m_clusterHealth = value; } /** *

The current health status of your cluster.

  • Red * - At least one primary shard is not allocated to any node.

  • * Yellow - All primary shards are allocated to nodes, but some * replicas aren’t.

  • Green - All primary shards and * their replicas are allocated to nodes.

  • * NotAvailable - Unable to retrieve cluster health.

*/ inline void SetClusterHealth(DomainHealth&& value) { m_clusterHealth = std::move(value); } /** *

The current health status of your cluster.

  • Red * - At least one primary shard is not allocated to any node.

  • * Yellow - All primary shards are allocated to nodes, but some * replicas aren’t.

  • Green - All primary shards and * their replicas are allocated to nodes.

  • * NotAvailable - Unable to retrieve cluster health.

*/ inline DescribeDomainHealthResult& WithClusterHealth(const DomainHealth& value) { SetClusterHealth(value); return *this;} /** *

The current health status of your cluster.

  • Red * - At least one primary shard is not allocated to any node.

  • * Yellow - All primary shards are allocated to nodes, but some * replicas aren’t.

  • Green - All primary shards and * their replicas are allocated to nodes.

  • * NotAvailable - Unable to retrieve cluster health.

*/ inline DescribeDomainHealthResult& WithClusterHealth(DomainHealth&& value) { SetClusterHealth(std::move(value)); return *this;} /** *

The total number of primary and replica shards for the domain.

*/ inline const Aws::String& GetTotalShards() const{ return m_totalShards; } /** *

The total number of primary and replica shards for the domain.

*/ inline void SetTotalShards(const Aws::String& value) { m_totalShards = value; } /** *

The total number of primary and replica shards for the domain.

*/ inline void SetTotalShards(Aws::String&& value) { m_totalShards = std::move(value); } /** *

The total number of primary and replica shards for the domain.

*/ inline void SetTotalShards(const char* value) { m_totalShards.assign(value); } /** *

The total number of primary and replica shards for the domain.

*/ inline DescribeDomainHealthResult& WithTotalShards(const Aws::String& value) { SetTotalShards(value); return *this;} /** *

The total number of primary and replica shards for the domain.

*/ inline DescribeDomainHealthResult& WithTotalShards(Aws::String&& value) { SetTotalShards(std::move(value)); return *this;} /** *

The total number of primary and replica shards for the domain.

*/ inline DescribeDomainHealthResult& WithTotalShards(const char* value) { SetTotalShards(value); return *this;} /** *

The total number of primary and replica shards not allocated to any of the * nodes for the cluster.

*/ inline const Aws::String& GetTotalUnAssignedShards() const{ return m_totalUnAssignedShards; } /** *

The total number of primary and replica shards not allocated to any of the * nodes for the cluster.

*/ inline void SetTotalUnAssignedShards(const Aws::String& value) { m_totalUnAssignedShards = value; } /** *

The total number of primary and replica shards not allocated to any of the * nodes for the cluster.

*/ inline void SetTotalUnAssignedShards(Aws::String&& value) { m_totalUnAssignedShards = std::move(value); } /** *

The total number of primary and replica shards not allocated to any of the * nodes for the cluster.

*/ inline void SetTotalUnAssignedShards(const char* value) { m_totalUnAssignedShards.assign(value); } /** *

The total number of primary and replica shards not allocated to any of the * nodes for the cluster.

*/ inline DescribeDomainHealthResult& WithTotalUnAssignedShards(const Aws::String& value) { SetTotalUnAssignedShards(value); return *this;} /** *

The total number of primary and replica shards not allocated to any of the * nodes for the cluster.

*/ inline DescribeDomainHealthResult& WithTotalUnAssignedShards(Aws::String&& value) { SetTotalUnAssignedShards(std::move(value)); return *this;} /** *

The total number of primary and replica shards not allocated to any of the * nodes for the cluster.

*/ inline DescribeDomainHealthResult& WithTotalUnAssignedShards(const char* value) { SetTotalUnAssignedShards(value); return *this;} /** *

A list of EnvironmentInfo for the domain.

*/ inline const Aws::Vector& GetEnvironmentInformation() const{ return m_environmentInformation; } /** *

A list of EnvironmentInfo for the domain.

*/ inline void SetEnvironmentInformation(const Aws::Vector& value) { m_environmentInformation = value; } /** *

A list of EnvironmentInfo for the domain.

*/ inline void SetEnvironmentInformation(Aws::Vector&& value) { m_environmentInformation = std::move(value); } /** *

A list of EnvironmentInfo for the domain.

*/ inline DescribeDomainHealthResult& WithEnvironmentInformation(const Aws::Vector& value) { SetEnvironmentInformation(value); return *this;} /** *

A list of EnvironmentInfo for the domain.

*/ inline DescribeDomainHealthResult& WithEnvironmentInformation(Aws::Vector&& value) { SetEnvironmentInformation(std::move(value)); return *this;} /** *

A list of EnvironmentInfo for the domain.

*/ inline DescribeDomainHealthResult& AddEnvironmentInformation(const EnvironmentInfo& value) { m_environmentInformation.push_back(value); return *this; } /** *

A list of EnvironmentInfo for the domain.

*/ inline DescribeDomainHealthResult& AddEnvironmentInformation(EnvironmentInfo&& value) { m_environmentInformation.push_back(std::move(value)); return *this; } inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline DescribeDomainHealthResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeDomainHealthResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeDomainHealthResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: DomainState m_domainState; Aws::String m_availabilityZoneCount; Aws::String m_activeAvailabilityZoneCount; Aws::String m_standByAvailabilityZoneCount; Aws::String m_dataNodeCount; bool m_dedicatedMaster; Aws::String m_masterEligibleNodeCount; Aws::String m_warmNodeCount; MasterNodeStatus m_masterNode; DomainHealth m_clusterHealth; Aws::String m_totalShards; Aws::String m_totalUnAssignedShards; Aws::Vector m_environmentInformation; Aws::String m_requestId; }; } // namespace Model } // namespace OpenSearchService } // namespace Aws