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

An object that represents the properties of a node that's associated with a * multi-node parallel job.

See Also:

AWS * API Reference

*/ class NodePropertiesSummary { public: AWS_BATCH_API NodePropertiesSummary(); AWS_BATCH_API NodePropertiesSummary(Aws::Utils::Json::JsonView jsonValue); AWS_BATCH_API NodePropertiesSummary& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Specifies whether the current node is the main node for a multi-node parallel * job.

*/ inline bool GetIsMainNode() const{ return m_isMainNode; } /** *

Specifies whether the current node is the main node for a multi-node parallel * job.

*/ inline bool IsMainNodeHasBeenSet() const { return m_isMainNodeHasBeenSet; } /** *

Specifies whether the current node is the main node for a multi-node parallel * job.

*/ inline void SetIsMainNode(bool value) { m_isMainNodeHasBeenSet = true; m_isMainNode = value; } /** *

Specifies whether the current node is the main node for a multi-node parallel * job.

*/ inline NodePropertiesSummary& WithIsMainNode(bool value) { SetIsMainNode(value); return *this;} /** *

The number of nodes that are associated with a multi-node parallel job.

*/ inline int GetNumNodes() const{ return m_numNodes; } /** *

The number of nodes that are associated with a multi-node parallel job.

*/ inline bool NumNodesHasBeenSet() const { return m_numNodesHasBeenSet; } /** *

The number of nodes that are associated with a multi-node parallel job.

*/ inline void SetNumNodes(int value) { m_numNodesHasBeenSet = true; m_numNodes = value; } /** *

The number of nodes that are associated with a multi-node parallel job.

*/ inline NodePropertiesSummary& WithNumNodes(int value) { SetNumNodes(value); return *this;} /** *

The node index for the node. Node index numbering begins at zero. This index * is also available on the node with the AWS_BATCH_JOB_NODE_INDEX * environment variable.

*/ inline int GetNodeIndex() const{ return m_nodeIndex; } /** *

The node index for the node. Node index numbering begins at zero. This index * is also available on the node with the AWS_BATCH_JOB_NODE_INDEX * environment variable.

*/ inline bool NodeIndexHasBeenSet() const { return m_nodeIndexHasBeenSet; } /** *

The node index for the node. Node index numbering begins at zero. This index * is also available on the node with the AWS_BATCH_JOB_NODE_INDEX * environment variable.

*/ inline void SetNodeIndex(int value) { m_nodeIndexHasBeenSet = true; m_nodeIndex = value; } /** *

The node index for the node. Node index numbering begins at zero. This index * is also available on the node with the AWS_BATCH_JOB_NODE_INDEX * environment variable.

*/ inline NodePropertiesSummary& WithNodeIndex(int value) { SetNodeIndex(value); return *this;} private: bool m_isMainNode; bool m_isMainNodeHasBeenSet = false; int m_numNodes; bool m_numNodesHasBeenSet = false; int m_nodeIndex; bool m_nodeIndexHasBeenSet = false; }; } // namespace Model } // namespace Batch } // namespace Aws