/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Container for information about nodes on the domain.See Also:
* AWS
* API Reference
The ID of the node.
*/ inline const Aws::String& GetNodeId() const{ return m_nodeId; } /** *The ID of the node.
*/ inline bool NodeIdHasBeenSet() const { return m_nodeIdHasBeenSet; } /** *The ID of the node.
*/ inline void SetNodeId(const Aws::String& value) { m_nodeIdHasBeenSet = true; m_nodeId = value; } /** *The ID of the node.
*/ inline void SetNodeId(Aws::String&& value) { m_nodeIdHasBeenSet = true; m_nodeId = std::move(value); } /** *The ID of the node.
*/ inline void SetNodeId(const char* value) { m_nodeIdHasBeenSet = true; m_nodeId.assign(value); } /** *The ID of the node.
*/ inline DomainNodesStatus& WithNodeId(const Aws::String& value) { SetNodeId(value); return *this;} /** *The ID of the node.
*/ inline DomainNodesStatus& WithNodeId(Aws::String&& value) { SetNodeId(std::move(value)); return *this;} /** *The ID of the node.
*/ inline DomainNodesStatus& WithNodeId(const char* value) { SetNodeId(value); return *this;} /** *Indicates whether the nodes is a data, master, or ultrawarm node.
*/ inline const NodeType& GetNodeType() const{ return m_nodeType; } /** *Indicates whether the nodes is a data, master, or ultrawarm node.
*/ inline bool NodeTypeHasBeenSet() const { return m_nodeTypeHasBeenSet; } /** *Indicates whether the nodes is a data, master, or ultrawarm node.
*/ inline void SetNodeType(const NodeType& value) { m_nodeTypeHasBeenSet = true; m_nodeType = value; } /** *Indicates whether the nodes is a data, master, or ultrawarm node.
*/ inline void SetNodeType(NodeType&& value) { m_nodeTypeHasBeenSet = true; m_nodeType = std::move(value); } /** *Indicates whether the nodes is a data, master, or ultrawarm node.
*/ inline DomainNodesStatus& WithNodeType(const NodeType& value) { SetNodeType(value); return *this;} /** *Indicates whether the nodes is a data, master, or ultrawarm node.
*/ inline DomainNodesStatus& WithNodeType(NodeType&& value) { SetNodeType(std::move(value)); return *this;} /** *The Availability Zone of the node.
*/ inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; } /** *The Availability Zone of the node.
*/ inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; } /** *The Availability Zone of the node.
*/ inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; } /** *The Availability Zone of the node.
*/ inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::move(value); } /** *The Availability Zone of the node.
*/ inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); } /** *The Availability Zone of the node.
*/ inline DomainNodesStatus& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;} /** *The Availability Zone of the node.
*/ inline DomainNodesStatus& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;} /** *The Availability Zone of the node.
*/ inline DomainNodesStatus& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;} /** *The instance type information of the node.
*/ inline const OpenSearchPartitionInstanceType& GetInstanceType() const{ return m_instanceType; } /** *The instance type information of the node.
*/ inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; } /** *The instance type information of the node.
*/ inline void SetInstanceType(const OpenSearchPartitionInstanceType& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; } /** *The instance type information of the node.
*/ inline void SetInstanceType(OpenSearchPartitionInstanceType&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::move(value); } /** *The instance type information of the node.
*/ inline DomainNodesStatus& WithInstanceType(const OpenSearchPartitionInstanceType& value) { SetInstanceType(value); return *this;} /** *The instance type information of the node.
*/ inline DomainNodesStatus& WithInstanceType(OpenSearchPartitionInstanceType&& value) { SetInstanceType(std::move(value)); return *this;} /** *Indicates if the node is active or in standby.
*/ inline const NodeStatus& GetNodeStatus() const{ return m_nodeStatus; } /** *Indicates if the node is active or in standby.
*/ inline bool NodeStatusHasBeenSet() const { return m_nodeStatusHasBeenSet; } /** *Indicates if the node is active or in standby.
*/ inline void SetNodeStatus(const NodeStatus& value) { m_nodeStatusHasBeenSet = true; m_nodeStatus = value; } /** *Indicates if the node is active or in standby.
*/ inline void SetNodeStatus(NodeStatus&& value) { m_nodeStatusHasBeenSet = true; m_nodeStatus = std::move(value); } /** *Indicates if the node is active or in standby.
*/ inline DomainNodesStatus& WithNodeStatus(const NodeStatus& value) { SetNodeStatus(value); return *this;} /** *Indicates if the node is active or in standby.
*/ inline DomainNodesStatus& WithNodeStatus(NodeStatus&& value) { SetNodeStatus(std::move(value)); return *this;} /** *Indicates if the node has EBS or instance storage.
*/ inline const Aws::String& GetStorageType() const{ return m_storageType; } /** *Indicates if the node has EBS or instance storage.
*/ inline bool StorageTypeHasBeenSet() const { return m_storageTypeHasBeenSet; } /** *Indicates if the node has EBS or instance storage.
*/ inline void SetStorageType(const Aws::String& value) { m_storageTypeHasBeenSet = true; m_storageType = value; } /** *Indicates if the node has EBS or instance storage.
*/ inline void SetStorageType(Aws::String&& value) { m_storageTypeHasBeenSet = true; m_storageType = std::move(value); } /** *Indicates if the node has EBS or instance storage.
*/ inline void SetStorageType(const char* value) { m_storageTypeHasBeenSet = true; m_storageType.assign(value); } /** *Indicates if the node has EBS or instance storage.
*/ inline DomainNodesStatus& WithStorageType(const Aws::String& value) { SetStorageType(value); return *this;} /** *Indicates if the node has EBS or instance storage.
*/ inline DomainNodesStatus& WithStorageType(Aws::String&& value) { SetStorageType(std::move(value)); return *this;} /** *Indicates if the node has EBS or instance storage.
*/ inline DomainNodesStatus& WithStorageType(const char* value) { SetStorageType(value); return *this;} /** *If the nodes has EBS storage, indicates if the volume type is GP2 or GP3. * Only applicable for data nodes.
*/ inline const VolumeType& GetStorageVolumeType() const{ return m_storageVolumeType; } /** *If the nodes has EBS storage, indicates if the volume type is GP2 or GP3. * Only applicable for data nodes.
*/ inline bool StorageVolumeTypeHasBeenSet() const { return m_storageVolumeTypeHasBeenSet; } /** *If the nodes has EBS storage, indicates if the volume type is GP2 or GP3. * Only applicable for data nodes.
*/ inline void SetStorageVolumeType(const VolumeType& value) { m_storageVolumeTypeHasBeenSet = true; m_storageVolumeType = value; } /** *If the nodes has EBS storage, indicates if the volume type is GP2 or GP3. * Only applicable for data nodes.
*/ inline void SetStorageVolumeType(VolumeType&& value) { m_storageVolumeTypeHasBeenSet = true; m_storageVolumeType = std::move(value); } /** *If the nodes has EBS storage, indicates if the volume type is GP2 or GP3. * Only applicable for data nodes.
*/ inline DomainNodesStatus& WithStorageVolumeType(const VolumeType& value) { SetStorageVolumeType(value); return *this;} /** *If the nodes has EBS storage, indicates if the volume type is GP2 or GP3. * Only applicable for data nodes.
*/ inline DomainNodesStatus& WithStorageVolumeType(VolumeType&& value) { SetStorageVolumeType(std::move(value)); return *this;} /** *The storage size of the node, in GiB.
*/ inline const Aws::String& GetStorageSize() const{ return m_storageSize; } /** *The storage size of the node, in GiB.
*/ inline bool StorageSizeHasBeenSet() const { return m_storageSizeHasBeenSet; } /** *The storage size of the node, in GiB.
*/ inline void SetStorageSize(const Aws::String& value) { m_storageSizeHasBeenSet = true; m_storageSize = value; } /** *The storage size of the node, in GiB.
*/ inline void SetStorageSize(Aws::String&& value) { m_storageSizeHasBeenSet = true; m_storageSize = std::move(value); } /** *The storage size of the node, in GiB.
*/ inline void SetStorageSize(const char* value) { m_storageSizeHasBeenSet = true; m_storageSize.assign(value); } /** *The storage size of the node, in GiB.
*/ inline DomainNodesStatus& WithStorageSize(const Aws::String& value) { SetStorageSize(value); return *this;} /** *The storage size of the node, in GiB.
*/ inline DomainNodesStatus& WithStorageSize(Aws::String&& value) { SetStorageSize(std::move(value)); return *this;} /** *The storage size of the node, in GiB.
*/ inline DomainNodesStatus& WithStorageSize(const char* value) { SetStorageSize(value); return *this;} private: Aws::String m_nodeId; bool m_nodeIdHasBeenSet = false; NodeType m_nodeType; bool m_nodeTypeHasBeenSet = false; Aws::String m_availabilityZone; bool m_availabilityZoneHasBeenSet = false; OpenSearchPartitionInstanceType m_instanceType; bool m_instanceTypeHasBeenSet = false; NodeStatus m_nodeStatus; bool m_nodeStatusHasBeenSet = false; Aws::String m_storageType; bool m_storageTypeHasBeenSet = false; VolumeType m_storageVolumeType; bool m_storageVolumeTypeHasBeenSet = false; Aws::String m_storageSize; bool m_storageSizeHasBeenSet = false; }; } // namespace Model } // namespace OpenSearchService } // namespace Aws