/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Lightsail { namespace Model { /** */ class AttachDiskRequest : public LightsailRequest { public: AWS_LIGHTSAIL_API AttachDiskRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "AttachDisk"; } AWS_LIGHTSAIL_API Aws::String SerializePayload() const override; AWS_LIGHTSAIL_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The unique Lightsail disk name (e.g., my-disk).

*/ inline const Aws::String& GetDiskName() const{ return m_diskName; } /** *

The unique Lightsail disk name (e.g., my-disk).

*/ inline bool DiskNameHasBeenSet() const { return m_diskNameHasBeenSet; } /** *

The unique Lightsail disk name (e.g., my-disk).

*/ inline void SetDiskName(const Aws::String& value) { m_diskNameHasBeenSet = true; m_diskName = value; } /** *

The unique Lightsail disk name (e.g., my-disk).

*/ inline void SetDiskName(Aws::String&& value) { m_diskNameHasBeenSet = true; m_diskName = std::move(value); } /** *

The unique Lightsail disk name (e.g., my-disk).

*/ inline void SetDiskName(const char* value) { m_diskNameHasBeenSet = true; m_diskName.assign(value); } /** *

The unique Lightsail disk name (e.g., my-disk).

*/ inline AttachDiskRequest& WithDiskName(const Aws::String& value) { SetDiskName(value); return *this;} /** *

The unique Lightsail disk name (e.g., my-disk).

*/ inline AttachDiskRequest& WithDiskName(Aws::String&& value) { SetDiskName(std::move(value)); return *this;} /** *

The unique Lightsail disk name (e.g., my-disk).

*/ inline AttachDiskRequest& WithDiskName(const char* value) { SetDiskName(value); return *this;} /** *

The name of the Lightsail instance where you want to utilize the storage * disk.

*/ inline const Aws::String& GetInstanceName() const{ return m_instanceName; } /** *

The name of the Lightsail instance where you want to utilize the storage * disk.

*/ inline bool InstanceNameHasBeenSet() const { return m_instanceNameHasBeenSet; } /** *

The name of the Lightsail instance where you want to utilize the storage * disk.

*/ inline void SetInstanceName(const Aws::String& value) { m_instanceNameHasBeenSet = true; m_instanceName = value; } /** *

The name of the Lightsail instance where you want to utilize the storage * disk.

*/ inline void SetInstanceName(Aws::String&& value) { m_instanceNameHasBeenSet = true; m_instanceName = std::move(value); } /** *

The name of the Lightsail instance where you want to utilize the storage * disk.

*/ inline void SetInstanceName(const char* value) { m_instanceNameHasBeenSet = true; m_instanceName.assign(value); } /** *

The name of the Lightsail instance where you want to utilize the storage * disk.

*/ inline AttachDiskRequest& WithInstanceName(const Aws::String& value) { SetInstanceName(value); return *this;} /** *

The name of the Lightsail instance where you want to utilize the storage * disk.

*/ inline AttachDiskRequest& WithInstanceName(Aws::String&& value) { SetInstanceName(std::move(value)); return *this;} /** *

The name of the Lightsail instance where you want to utilize the storage * disk.

*/ inline AttachDiskRequest& WithInstanceName(const char* value) { SetInstanceName(value); return *this;} /** *

The disk path to expose to the instance (e.g., /dev/xvdf).

*/ inline const Aws::String& GetDiskPath() const{ return m_diskPath; } /** *

The disk path to expose to the instance (e.g., /dev/xvdf).

*/ inline bool DiskPathHasBeenSet() const { return m_diskPathHasBeenSet; } /** *

The disk path to expose to the instance (e.g., /dev/xvdf).

*/ inline void SetDiskPath(const Aws::String& value) { m_diskPathHasBeenSet = true; m_diskPath = value; } /** *

The disk path to expose to the instance (e.g., /dev/xvdf).

*/ inline void SetDiskPath(Aws::String&& value) { m_diskPathHasBeenSet = true; m_diskPath = std::move(value); } /** *

The disk path to expose to the instance (e.g., /dev/xvdf).

*/ inline void SetDiskPath(const char* value) { m_diskPathHasBeenSet = true; m_diskPath.assign(value); } /** *

The disk path to expose to the instance (e.g., /dev/xvdf).

*/ inline AttachDiskRequest& WithDiskPath(const Aws::String& value) { SetDiskPath(value); return *this;} /** *

The disk path to expose to the instance (e.g., /dev/xvdf).

*/ inline AttachDiskRequest& WithDiskPath(Aws::String&& value) { SetDiskPath(std::move(value)); return *this;} /** *

The disk path to expose to the instance (e.g., /dev/xvdf).

*/ inline AttachDiskRequest& WithDiskPath(const char* value) { SetDiskPath(value); return *this;} /** *

A Boolean value used to determine the automatic mounting of a storage volume * to a virtual computer. The default value is False.

*

This value only applies to Lightsail for Research resources.

*/ inline bool GetAutoMounting() const{ return m_autoMounting; } /** *

A Boolean value used to determine the automatic mounting of a storage volume * to a virtual computer. The default value is False.

*

This value only applies to Lightsail for Research resources.

*/ inline bool AutoMountingHasBeenSet() const { return m_autoMountingHasBeenSet; } /** *

A Boolean value used to determine the automatic mounting of a storage volume * to a virtual computer. The default value is False.

*

This value only applies to Lightsail for Research resources.

*/ inline void SetAutoMounting(bool value) { m_autoMountingHasBeenSet = true; m_autoMounting = value; } /** *

A Boolean value used to determine the automatic mounting of a storage volume * to a virtual computer. The default value is False.

*

This value only applies to Lightsail for Research resources.

*/ inline AttachDiskRequest& WithAutoMounting(bool value) { SetAutoMounting(value); return *this;} private: Aws::String m_diskName; bool m_diskNameHasBeenSet = false; Aws::String m_instanceName; bool m_instanceNameHasBeenSet = false; Aws::String m_diskPath; bool m_diskPathHasBeenSet = false; bool m_autoMounting; bool m_autoMountingHasBeenSet = false; }; } // namespace Model } // namespace Lightsail } // namespace Aws