/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Returns information about a cluster.See
* Also:
AWS API
* Reference
The Amazon Resource Name (ARN) that uniquely identifies a * cluster operation.
*/ inline const Aws::String& GetActiveOperationArn() const{ return m_activeOperationArn; } /** *The Amazon Resource Name (ARN) that uniquely identifies a * cluster operation.
*/ inline bool ActiveOperationArnHasBeenSet() const { return m_activeOperationArnHasBeenSet; } /** *The Amazon Resource Name (ARN) that uniquely identifies a * cluster operation.
*/ inline void SetActiveOperationArn(const Aws::String& value) { m_activeOperationArnHasBeenSet = true; m_activeOperationArn = value; } /** *The Amazon Resource Name (ARN) that uniquely identifies a * cluster operation.
*/ inline void SetActiveOperationArn(Aws::String&& value) { m_activeOperationArnHasBeenSet = true; m_activeOperationArn = std::move(value); } /** *The Amazon Resource Name (ARN) that uniquely identifies a * cluster operation.
*/ inline void SetActiveOperationArn(const char* value) { m_activeOperationArnHasBeenSet = true; m_activeOperationArn.assign(value); } /** *The Amazon Resource Name (ARN) that uniquely identifies a * cluster operation.
*/ inline Cluster& WithActiveOperationArn(const Aws::String& value) { SetActiveOperationArn(value); return *this;} /** *The Amazon Resource Name (ARN) that uniquely identifies a * cluster operation.
*/ inline Cluster& WithActiveOperationArn(Aws::String&& value) { SetActiveOperationArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) that uniquely identifies a * cluster operation.
*/ inline Cluster& WithActiveOperationArn(const char* value) { SetActiveOperationArn(value); return *this;} /** *Cluster Type.
*/ inline const ClusterType& GetClusterType() const{ return m_clusterType; } /** *Cluster Type.
*/ inline bool ClusterTypeHasBeenSet() const { return m_clusterTypeHasBeenSet; } /** *Cluster Type.
*/ inline void SetClusterType(const ClusterType& value) { m_clusterTypeHasBeenSet = true; m_clusterType = value; } /** *Cluster Type.
*/ inline void SetClusterType(ClusterType&& value) { m_clusterTypeHasBeenSet = true; m_clusterType = std::move(value); } /** *Cluster Type.
*/ inline Cluster& WithClusterType(const ClusterType& value) { SetClusterType(value); return *this;} /** *Cluster Type.
*/ inline Cluster& WithClusterType(ClusterType&& value) { SetClusterType(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) that uniquely identifies the * cluster.
*/ inline const Aws::String& GetClusterArn() const{ return m_clusterArn; } /** *The Amazon Resource Name (ARN) that uniquely identifies the * cluster.
*/ inline bool ClusterArnHasBeenSet() const { return m_clusterArnHasBeenSet; } /** *The Amazon Resource Name (ARN) that uniquely identifies the * cluster.
*/ inline void SetClusterArn(const Aws::String& value) { m_clusterArnHasBeenSet = true; m_clusterArn = value; } /** *The Amazon Resource Name (ARN) that uniquely identifies the * cluster.
*/ inline void SetClusterArn(Aws::String&& value) { m_clusterArnHasBeenSet = true; m_clusterArn = std::move(value); } /** *The Amazon Resource Name (ARN) that uniquely identifies the * cluster.
*/ inline void SetClusterArn(const char* value) { m_clusterArnHasBeenSet = true; m_clusterArn.assign(value); } /** *The Amazon Resource Name (ARN) that uniquely identifies the * cluster.
*/ inline Cluster& WithClusterArn(const Aws::String& value) { SetClusterArn(value); return *this;} /** *The Amazon Resource Name (ARN) that uniquely identifies the * cluster.
*/ inline Cluster& WithClusterArn(Aws::String&& value) { SetClusterArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) that uniquely identifies the * cluster.
*/ inline Cluster& WithClusterArn(const char* value) { SetClusterArn(value); return *this;} /** *The name of the cluster.
*/ inline const Aws::String& GetClusterName() const{ return m_clusterName; } /** *The name of the cluster.
*/ inline bool ClusterNameHasBeenSet() const { return m_clusterNameHasBeenSet; } /** *The name of the cluster.
*/ inline void SetClusterName(const Aws::String& value) { m_clusterNameHasBeenSet = true; m_clusterName = value; } /** *The name of the cluster.
*/ inline void SetClusterName(Aws::String&& value) { m_clusterNameHasBeenSet = true; m_clusterName = std::move(value); } /** *The name of the cluster.
*/ inline void SetClusterName(const char* value) { m_clusterNameHasBeenSet = true; m_clusterName.assign(value); } /** *The name of the cluster.
*/ inline Cluster& WithClusterName(const Aws::String& value) { SetClusterName(value); return *this;} /** *The name of the cluster.
*/ inline Cluster& WithClusterName(Aws::String&& value) { SetClusterName(std::move(value)); return *this;} /** *The name of the cluster.
*/ inline Cluster& WithClusterName(const char* value) { SetClusterName(value); return *this;} /** *The time when the cluster was created.
*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *The time when the cluster was created.
*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *The time when the cluster was created.
*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *The time when the cluster was created.
*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *The time when the cluster was created.
*/ inline Cluster& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *The time when the cluster was created.
*/ inline Cluster& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *The current version of the MSK cluster.
*/ inline const Aws::String& GetCurrentVersion() const{ return m_currentVersion; } /** *The current version of the MSK cluster.
*/ inline bool CurrentVersionHasBeenSet() const { return m_currentVersionHasBeenSet; } /** *The current version of the MSK cluster.
*/ inline void SetCurrentVersion(const Aws::String& value) { m_currentVersionHasBeenSet = true; m_currentVersion = value; } /** *The current version of the MSK cluster.
*/ inline void SetCurrentVersion(Aws::String&& value) { m_currentVersionHasBeenSet = true; m_currentVersion = std::move(value); } /** *The current version of the MSK cluster.
*/ inline void SetCurrentVersion(const char* value) { m_currentVersionHasBeenSet = true; m_currentVersion.assign(value); } /** *The current version of the MSK cluster.
*/ inline Cluster& WithCurrentVersion(const Aws::String& value) { SetCurrentVersion(value); return *this;} /** *The current version of the MSK cluster.
*/ inline Cluster& WithCurrentVersion(Aws::String&& value) { SetCurrentVersion(std::move(value)); return *this;} /** *The current version of the MSK cluster.
*/ inline Cluster& WithCurrentVersion(const char* value) { SetCurrentVersion(value); return *this;} /** *The state of the cluster. The possible states are ACTIVE, * CREATING, DELETING, FAILED, HEALING, MAINTENANCE, REBOOTING_BROKER, and * UPDATING.
*/ inline const ClusterState& GetState() const{ return m_state; } /** *The state of the cluster. The possible states are ACTIVE, * CREATING, DELETING, FAILED, HEALING, MAINTENANCE, REBOOTING_BROKER, and * UPDATING.
*/ inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } /** *The state of the cluster. The possible states are ACTIVE, * CREATING, DELETING, FAILED, HEALING, MAINTENANCE, REBOOTING_BROKER, and * UPDATING.
*/ inline void SetState(const ClusterState& value) { m_stateHasBeenSet = true; m_state = value; } /** *The state of the cluster. The possible states are ACTIVE, * CREATING, DELETING, FAILED, HEALING, MAINTENANCE, REBOOTING_BROKER, and * UPDATING.
*/ inline void SetState(ClusterState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } /** *The state of the cluster. The possible states are ACTIVE, * CREATING, DELETING, FAILED, HEALING, MAINTENANCE, REBOOTING_BROKER, and * UPDATING.
*/ inline Cluster& WithState(const ClusterState& value) { SetState(value); return *this;} /** *The state of the cluster. The possible states are ACTIVE, * CREATING, DELETING, FAILED, HEALING, MAINTENANCE, REBOOTING_BROKER, and * UPDATING.
*/ inline Cluster& WithState(ClusterState&& value) { SetState(std::move(value)); return *this;} /** *State Info for the Amazon MSK cluster.
*/ inline const StateInfo& GetStateInfo() const{ return m_stateInfo; } /** *State Info for the Amazon MSK cluster.
*/ inline bool StateInfoHasBeenSet() const { return m_stateInfoHasBeenSet; } /** *State Info for the Amazon MSK cluster.
*/ inline void SetStateInfo(const StateInfo& value) { m_stateInfoHasBeenSet = true; m_stateInfo = value; } /** *State Info for the Amazon MSK cluster.
*/ inline void SetStateInfo(StateInfo&& value) { m_stateInfoHasBeenSet = true; m_stateInfo = std::move(value); } /** *State Info for the Amazon MSK cluster.
*/ inline Cluster& WithStateInfo(const StateInfo& value) { SetStateInfo(value); return *this;} /** *State Info for the Amazon MSK cluster.
*/ inline Cluster& WithStateInfo(StateInfo&& value) { SetStateInfo(std::move(value)); return *this;} /** *Tags attached to the cluster.
*/ inline const Aws::MapTags attached to the cluster.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *Tags attached to the cluster.
*/ inline void SetTags(const Aws::MapTags attached to the cluster.
*/ inline void SetTags(Aws::MapTags attached to the cluster.
*/ inline Cluster& WithTags(const Aws::MapTags attached to the cluster.
*/ inline Cluster& WithTags(Aws::MapTags attached to the cluster.
*/ inline Cluster& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *Tags attached to the cluster.
*/ inline Cluster& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *Tags attached to the cluster.
*/ inline Cluster& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *Tags attached to the cluster.
*/ inline Cluster& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *Tags attached to the cluster.
*/ inline Cluster& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *Tags attached to the cluster.
*/ inline Cluster& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *Tags attached to the cluster.
*/ inline Cluster& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *Information about the provisioned cluster.
*/ inline const Provisioned& GetProvisioned() const{ return m_provisioned; } /** *Information about the provisioned cluster.
*/ inline bool ProvisionedHasBeenSet() const { return m_provisionedHasBeenSet; } /** *Information about the provisioned cluster.
*/ inline void SetProvisioned(const Provisioned& value) { m_provisionedHasBeenSet = true; m_provisioned = value; } /** *Information about the provisioned cluster.
*/ inline void SetProvisioned(Provisioned&& value) { m_provisionedHasBeenSet = true; m_provisioned = std::move(value); } /** *Information about the provisioned cluster.
*/ inline Cluster& WithProvisioned(const Provisioned& value) { SetProvisioned(value); return *this;} /** *Information about the provisioned cluster.
*/ inline Cluster& WithProvisioned(Provisioned&& value) { SetProvisioned(std::move(value)); return *this;} /** *Information about the serverless cluster.
*/ inline const Serverless& GetServerless() const{ return m_serverless; } /** *Information about the serverless cluster.
*/ inline bool ServerlessHasBeenSet() const { return m_serverlessHasBeenSet; } /** *Information about the serverless cluster.
*/ inline void SetServerless(const Serverless& value) { m_serverlessHasBeenSet = true; m_serverless = value; } /** *Information about the serverless cluster.
*/ inline void SetServerless(Serverless&& value) { m_serverlessHasBeenSet = true; m_serverless = std::move(value); } /** *Information about the serverless cluster.
*/ inline Cluster& WithServerless(const Serverless& value) { SetServerless(value); return *this;} /** *Information about the serverless cluster.
*/ inline Cluster& WithServerless(Serverless&& value) { SetServerless(std::move(value)); return *this;} private: Aws::String m_activeOperationArn; bool m_activeOperationArnHasBeenSet = false; ClusterType m_clusterType; bool m_clusterTypeHasBeenSet = false; Aws::String m_clusterArn; bool m_clusterArnHasBeenSet = false; Aws::String m_clusterName; bool m_clusterNameHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::String m_currentVersion; bool m_currentVersionHasBeenSet = false; ClusterState m_state; bool m_stateHasBeenSet = false; StateInfo m_stateInfo; bool m_stateInfoHasBeenSet = false; Aws::Map