/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Configuration of requested EBS block device associated with the instance
* group.See Also:
AWS
* API Reference
EBS volume specifications such as volume type, IOPS, size (GiB) and * throughput (MiB/s) that are requested for the EBS volume attached to an Amazon * EC2 instance in the cluster.
*/ inline const VolumeSpecification& GetVolumeSpecification() const{ return m_volumeSpecification; } /** *EBS volume specifications such as volume type, IOPS, size (GiB) and * throughput (MiB/s) that are requested for the EBS volume attached to an Amazon * EC2 instance in the cluster.
*/ inline bool VolumeSpecificationHasBeenSet() const { return m_volumeSpecificationHasBeenSet; } /** *EBS volume specifications such as volume type, IOPS, size (GiB) and * throughput (MiB/s) that are requested for the EBS volume attached to an Amazon * EC2 instance in the cluster.
*/ inline void SetVolumeSpecification(const VolumeSpecification& value) { m_volumeSpecificationHasBeenSet = true; m_volumeSpecification = value; } /** *EBS volume specifications such as volume type, IOPS, size (GiB) and * throughput (MiB/s) that are requested for the EBS volume attached to an Amazon * EC2 instance in the cluster.
*/ inline void SetVolumeSpecification(VolumeSpecification&& value) { m_volumeSpecificationHasBeenSet = true; m_volumeSpecification = std::move(value); } /** *EBS volume specifications such as volume type, IOPS, size (GiB) and * throughput (MiB/s) that are requested for the EBS volume attached to an Amazon * EC2 instance in the cluster.
*/ inline EbsBlockDevice& WithVolumeSpecification(const VolumeSpecification& value) { SetVolumeSpecification(value); return *this;} /** *EBS volume specifications such as volume type, IOPS, size (GiB) and * throughput (MiB/s) that are requested for the EBS volume attached to an Amazon * EC2 instance in the cluster.
*/ inline EbsBlockDevice& WithVolumeSpecification(VolumeSpecification&& value) { SetVolumeSpecification(std::move(value)); return *this;} /** *The device name that is exposed to the instance, such as /dev/sdh.
*/ inline const Aws::String& GetDevice() const{ return m_device; } /** *The device name that is exposed to the instance, such as /dev/sdh.
*/ inline bool DeviceHasBeenSet() const { return m_deviceHasBeenSet; } /** *The device name that is exposed to the instance, such as /dev/sdh.
*/ inline void SetDevice(const Aws::String& value) { m_deviceHasBeenSet = true; m_device = value; } /** *The device name that is exposed to the instance, such as /dev/sdh.
*/ inline void SetDevice(Aws::String&& value) { m_deviceHasBeenSet = true; m_device = std::move(value); } /** *The device name that is exposed to the instance, such as /dev/sdh.
*/ inline void SetDevice(const char* value) { m_deviceHasBeenSet = true; m_device.assign(value); } /** *The device name that is exposed to the instance, such as /dev/sdh.
*/ inline EbsBlockDevice& WithDevice(const Aws::String& value) { SetDevice(value); return *this;} /** *The device name that is exposed to the instance, such as /dev/sdh.
*/ inline EbsBlockDevice& WithDevice(Aws::String&& value) { SetDevice(std::move(value)); return *this;} /** *The device name that is exposed to the instance, such as /dev/sdh.
*/ inline EbsBlockDevice& WithDevice(const char* value) { SetDevice(value); return *this;} private: VolumeSpecification m_volumeSpecification; bool m_volumeSpecificationHasBeenSet = false; Aws::String m_device; bool m_deviceHasBeenSet = false; }; } // namespace Model } // namespace EMR } // namespace Aws