/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include EBS volume specifications such as volume type, IOPS, and size (GiB) that will
* be requested for the EBS volume attached to an EC2 instance in the
* cluster.See Also:
AWS
* API Reference
The volume type. Volume types supported are gp2, io1, standard.
*/ inline const Aws::String& GetVolumeType() const{ return m_volumeType; } /** *The volume type. Volume types supported are gp2, io1, standard.
*/ inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; } /** *The volume type. Volume types supported are gp2, io1, standard.
*/ inline void SetVolumeType(const Aws::String& value) { m_volumeTypeHasBeenSet = true; m_volumeType = value; } /** *The volume type. Volume types supported are gp2, io1, standard.
*/ inline void SetVolumeType(Aws::String&& value) { m_volumeTypeHasBeenSet = true; m_volumeType = std::move(value); } /** *The volume type. Volume types supported are gp2, io1, standard.
*/ inline void SetVolumeType(const char* value) { m_volumeTypeHasBeenSet = true; m_volumeType.assign(value); } /** *The volume type. Volume types supported are gp2, io1, standard.
*/ inline VolumeSpecification& WithVolumeType(const Aws::String& value) { SetVolumeType(value); return *this;} /** *The volume type. Volume types supported are gp2, io1, standard.
*/ inline VolumeSpecification& WithVolumeType(Aws::String&& value) { SetVolumeType(std::move(value)); return *this;} /** *The volume type. Volume types supported are gp2, io1, standard.
*/ inline VolumeSpecification& WithVolumeType(const char* value) { SetVolumeType(value); return *this;} /** *The number of I/O operations per second (IOPS) that the volume supports.
*/ inline int GetIops() const{ return m_iops; } /** *The number of I/O operations per second (IOPS) that the volume supports.
*/ inline bool IopsHasBeenSet() const { return m_iopsHasBeenSet; } /** *The number of I/O operations per second (IOPS) that the volume supports.
*/ inline void SetIops(int value) { m_iopsHasBeenSet = true; m_iops = value; } /** *The number of I/O operations per second (IOPS) that the volume supports.
*/ inline VolumeSpecification& WithIops(int value) { SetIops(value); return *this;} /** *The volume size, in gibibytes (GiB). This can be a number from 1 - 1024. If * the volume type is EBS-optimized, the minimum value is 10.
*/ inline int GetSizeInGB() const{ return m_sizeInGB; } /** *The volume size, in gibibytes (GiB). This can be a number from 1 - 1024. If * the volume type is EBS-optimized, the minimum value is 10.
*/ inline bool SizeInGBHasBeenSet() const { return m_sizeInGBHasBeenSet; } /** *The volume size, in gibibytes (GiB). This can be a number from 1 - 1024. If * the volume type is EBS-optimized, the minimum value is 10.
*/ inline void SetSizeInGB(int value) { m_sizeInGBHasBeenSet = true; m_sizeInGB = value; } /** *The volume size, in gibibytes (GiB). This can be a number from 1 - 1024. If * the volume type is EBS-optimized, the minimum value is 10.
*/ inline VolumeSpecification& WithSizeInGB(int value) { SetSizeInGB(value); return *this;} private: Aws::String m_volumeType; bool m_volumeTypeHasBeenSet; int m_iops; bool m_iopsHasBeenSet; int m_sizeInGB; bool m_sizeInGBHasBeenSet; }; } // namespace Model } // namespace EMR } // namespace Aws