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

The node information object.

See Also:

* AWS * API Reference

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

The start time.

*/ inline const Aws::String& GetAddedToClusterTime() const{ return m_addedToClusterTime; } /** *

The start time.

*/ inline bool AddedToClusterTimeHasBeenSet() const { return m_addedToClusterTimeHasBeenSet; } /** *

The start time.

*/ inline void SetAddedToClusterTime(const Aws::String& value) { m_addedToClusterTimeHasBeenSet = true; m_addedToClusterTime = value; } /** *

The start time.

*/ inline void SetAddedToClusterTime(Aws::String&& value) { m_addedToClusterTimeHasBeenSet = true; m_addedToClusterTime = std::move(value); } /** *

The start time.

*/ inline void SetAddedToClusterTime(const char* value) { m_addedToClusterTimeHasBeenSet = true; m_addedToClusterTime.assign(value); } /** *

The start time.

*/ inline NodeInfo& WithAddedToClusterTime(const Aws::String& value) { SetAddedToClusterTime(value); return *this;} /** *

The start time.

*/ inline NodeInfo& WithAddedToClusterTime(Aws::String&& value) { SetAddedToClusterTime(std::move(value)); return *this;} /** *

The start time.

*/ inline NodeInfo& WithAddedToClusterTime(const char* value) { SetAddedToClusterTime(value); return *this;} /** *

The broker node info.

*/ inline const BrokerNodeInfo& GetBrokerNodeInfo() const{ return m_brokerNodeInfo; } /** *

The broker node info.

*/ inline bool BrokerNodeInfoHasBeenSet() const { return m_brokerNodeInfoHasBeenSet; } /** *

The broker node info.

*/ inline void SetBrokerNodeInfo(const BrokerNodeInfo& value) { m_brokerNodeInfoHasBeenSet = true; m_brokerNodeInfo = value; } /** *

The broker node info.

*/ inline void SetBrokerNodeInfo(BrokerNodeInfo&& value) { m_brokerNodeInfoHasBeenSet = true; m_brokerNodeInfo = std::move(value); } /** *

The broker node info.

*/ inline NodeInfo& WithBrokerNodeInfo(const BrokerNodeInfo& value) { SetBrokerNodeInfo(value); return *this;} /** *

The broker node info.

*/ inline NodeInfo& WithBrokerNodeInfo(BrokerNodeInfo&& value) { SetBrokerNodeInfo(std::move(value)); return *this;} /** *

The instance type.

*/ inline const Aws::String& GetInstanceType() const{ return m_instanceType; } /** *

The instance type.

*/ inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; } /** *

The instance type.

*/ inline void SetInstanceType(const Aws::String& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; } /** *

The instance type.

*/ inline void SetInstanceType(Aws::String&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::move(value); } /** *

The instance type.

*/ inline void SetInstanceType(const char* value) { m_instanceTypeHasBeenSet = true; m_instanceType.assign(value); } /** *

The instance type.

*/ inline NodeInfo& WithInstanceType(const Aws::String& value) { SetInstanceType(value); return *this;} /** *

The instance type.

*/ inline NodeInfo& WithInstanceType(Aws::String&& value) { SetInstanceType(std::move(value)); return *this;} /** *

The instance type.

*/ inline NodeInfo& WithInstanceType(const char* value) { SetInstanceType(value); return *this;} /** *

The Amazon Resource Name (ARN) of the node.

*/ inline const Aws::String& GetNodeARN() const{ return m_nodeARN; } /** *

The Amazon Resource Name (ARN) of the node.

*/ inline bool NodeARNHasBeenSet() const { return m_nodeARNHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the node.

*/ inline void SetNodeARN(const Aws::String& value) { m_nodeARNHasBeenSet = true; m_nodeARN = value; } /** *

The Amazon Resource Name (ARN) of the node.

*/ inline void SetNodeARN(Aws::String&& value) { m_nodeARNHasBeenSet = true; m_nodeARN = std::move(value); } /** *

The Amazon Resource Name (ARN) of the node.

*/ inline void SetNodeARN(const char* value) { m_nodeARNHasBeenSet = true; m_nodeARN.assign(value); } /** *

The Amazon Resource Name (ARN) of the node.

*/ inline NodeInfo& WithNodeARN(const Aws::String& value) { SetNodeARN(value); return *this;} /** *

The Amazon Resource Name (ARN) of the node.

*/ inline NodeInfo& WithNodeARN(Aws::String&& value) { SetNodeARN(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the node.

*/ inline NodeInfo& WithNodeARN(const char* value) { SetNodeARN(value); return *this;} /** *

The node type.

*/ inline const NodeType& GetNodeType() const{ return m_nodeType; } /** *

The node type.

*/ inline bool NodeTypeHasBeenSet() const { return m_nodeTypeHasBeenSet; } /** *

The node type.

*/ inline void SetNodeType(const NodeType& value) { m_nodeTypeHasBeenSet = true; m_nodeType = value; } /** *

The node type.

*/ inline void SetNodeType(NodeType&& value) { m_nodeTypeHasBeenSet = true; m_nodeType = std::move(value); } /** *

The node type.

*/ inline NodeInfo& WithNodeType(const NodeType& value) { SetNodeType(value); return *this;} /** *

The node type.

*/ inline NodeInfo& WithNodeType(NodeType&& value) { SetNodeType(std::move(value)); return *this;} /** *

The ZookeeperNodeInfo.

*/ inline const ZookeeperNodeInfo& GetZookeeperNodeInfo() const{ return m_zookeeperNodeInfo; } /** *

The ZookeeperNodeInfo.

*/ inline bool ZookeeperNodeInfoHasBeenSet() const { return m_zookeeperNodeInfoHasBeenSet; } /** *

The ZookeeperNodeInfo.

*/ inline void SetZookeeperNodeInfo(const ZookeeperNodeInfo& value) { m_zookeeperNodeInfoHasBeenSet = true; m_zookeeperNodeInfo = value; } /** *

The ZookeeperNodeInfo.

*/ inline void SetZookeeperNodeInfo(ZookeeperNodeInfo&& value) { m_zookeeperNodeInfoHasBeenSet = true; m_zookeeperNodeInfo = std::move(value); } /** *

The ZookeeperNodeInfo.

*/ inline NodeInfo& WithZookeeperNodeInfo(const ZookeeperNodeInfo& value) { SetZookeeperNodeInfo(value); return *this;} /** *

The ZookeeperNodeInfo.

*/ inline NodeInfo& WithZookeeperNodeInfo(ZookeeperNodeInfo&& value) { SetZookeeperNodeInfo(std::move(value)); return *this;} private: Aws::String m_addedToClusterTime; bool m_addedToClusterTimeHasBeenSet = false; BrokerNodeInfo m_brokerNodeInfo; bool m_brokerNodeInfoHasBeenSet = false; Aws::String m_instanceType; bool m_instanceTypeHasBeenSet = false; Aws::String m_nodeARN; bool m_nodeARNHasBeenSet = false; NodeType m_nodeType; bool m_nodeTypeHasBeenSet = false; ZookeeperNodeInfo m_zookeeperNodeInfo; bool m_zookeeperNodeInfoHasBeenSet = false; }; } // namespace Model } // namespace Kafka } // namespace Aws