/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The summary description of the cluster.See Also:
AWS
* API Reference
The unique identifier for the cluster.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The unique identifier for the cluster.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The unique identifier for the cluster.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The unique identifier for the cluster.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The unique identifier for the cluster.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The unique identifier for the cluster.
*/ inline ClusterSummary& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The unique identifier for the cluster.
*/ inline ClusterSummary& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The unique identifier for the cluster.
*/ inline ClusterSummary& WithId(const char* value) { SetId(value); return *this;} /** *The name of the cluster.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The name of the cluster.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The name of the cluster.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The name of the cluster.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The name of the cluster.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The name of the cluster.
*/ inline ClusterSummary& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The name of the cluster.
*/ inline ClusterSummary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The name of the cluster.
*/ inline ClusterSummary& WithName(const char* value) { SetName(value); return *this;} /** *The details about the current status of the cluster.
*/ inline const ClusterStatus& GetStatus() const{ return m_status; } /** *The details about the current status of the cluster.
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *The details about the current status of the cluster.
*/ inline void SetStatus(const ClusterStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *The details about the current status of the cluster.
*/ inline void SetStatus(ClusterStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *The details about the current status of the cluster.
*/ inline ClusterSummary& WithStatus(const ClusterStatus& value) { SetStatus(value); return *this;} /** *The details about the current status of the cluster.
*/ inline ClusterSummary& WithStatus(ClusterStatus&& value) { SetStatus(std::move(value)); return *this;} /** *An approximation of the cost of the cluster, represented in m1.small/hours. * This value is incremented one time for every hour an m1.small instance runs. * Larger instances are weighted more, so an Amazon EC2 instance that is roughly * four times more expensive would result in the normalized instance hours being * incremented by four. This result is only an approximation and does not reflect * the actual billing rate.
*/ inline int GetNormalizedInstanceHours() const{ return m_normalizedInstanceHours; } /** *An approximation of the cost of the cluster, represented in m1.small/hours. * This value is incremented one time for every hour an m1.small instance runs. * Larger instances are weighted more, so an Amazon EC2 instance that is roughly * four times more expensive would result in the normalized instance hours being * incremented by four. This result is only an approximation and does not reflect * the actual billing rate.
*/ inline bool NormalizedInstanceHoursHasBeenSet() const { return m_normalizedInstanceHoursHasBeenSet; } /** *An approximation of the cost of the cluster, represented in m1.small/hours. * This value is incremented one time for every hour an m1.small instance runs. * Larger instances are weighted more, so an Amazon EC2 instance that is roughly * four times more expensive would result in the normalized instance hours being * incremented by four. This result is only an approximation and does not reflect * the actual billing rate.
*/ inline void SetNormalizedInstanceHours(int value) { m_normalizedInstanceHoursHasBeenSet = true; m_normalizedInstanceHours = value; } /** *An approximation of the cost of the cluster, represented in m1.small/hours. * This value is incremented one time for every hour an m1.small instance runs. * Larger instances are weighted more, so an Amazon EC2 instance that is roughly * four times more expensive would result in the normalized instance hours being * incremented by four. This result is only an approximation and does not reflect * the actual billing rate.
*/ inline ClusterSummary& WithNormalizedInstanceHours(int value) { SetNormalizedInstanceHours(value); return *this;} /** *The Amazon Resource Name of the cluster.
*/ inline const Aws::String& GetClusterArn() const{ return m_clusterArn; } /** *The Amazon Resource Name of the cluster.
*/ inline bool ClusterArnHasBeenSet() const { return m_clusterArnHasBeenSet; } /** *The Amazon Resource Name of the cluster.
*/ inline void SetClusterArn(const Aws::String& value) { m_clusterArnHasBeenSet = true; m_clusterArn = value; } /** *The Amazon Resource Name of the cluster.
*/ inline void SetClusterArn(Aws::String&& value) { m_clusterArnHasBeenSet = true; m_clusterArn = std::move(value); } /** *The Amazon Resource Name of the cluster.
*/ inline void SetClusterArn(const char* value) { m_clusterArnHasBeenSet = true; m_clusterArn.assign(value); } /** *The Amazon Resource Name of the cluster.
*/ inline ClusterSummary& WithClusterArn(const Aws::String& value) { SetClusterArn(value); return *this;} /** *The Amazon Resource Name of the cluster.
*/ inline ClusterSummary& WithClusterArn(Aws::String&& value) { SetClusterArn(std::move(value)); return *this;} /** *The Amazon Resource Name of the cluster.
*/ inline ClusterSummary& WithClusterArn(const char* value) { SetClusterArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. *
*/ inline const Aws::String& GetOutpostArn() const{ return m_outpostArn; } /** *The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. *
*/ inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. *
*/ inline void SetOutpostArn(const Aws::String& value) { m_outpostArnHasBeenSet = true; m_outpostArn = value; } /** *The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. *
*/ inline void SetOutpostArn(Aws::String&& value) { m_outpostArnHasBeenSet = true; m_outpostArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. *
*/ inline void SetOutpostArn(const char* value) { m_outpostArnHasBeenSet = true; m_outpostArn.assign(value); } /** *The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. *
*/ inline ClusterSummary& WithOutpostArn(const Aws::String& value) { SetOutpostArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. *
*/ inline ClusterSummary& WithOutpostArn(Aws::String&& value) { SetOutpostArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. *
*/ inline ClusterSummary& WithOutpostArn(const char* value) { SetOutpostArn(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; ClusterStatus m_status; bool m_statusHasBeenSet = false; int m_normalizedInstanceHours; bool m_normalizedInstanceHoursHasBeenSet = false; Aws::String m_clusterArn; bool m_clusterArnHasBeenSet = false; Aws::String m_outpostArn; bool m_outpostArnHasBeenSet = false; }; } // namespace Model } // namespace EMR } // namespace Aws