/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace Lightsail { namespace Model { class GetAutoSnapshotsResult { public: AWS_LIGHTSAIL_API GetAutoSnapshotsResult(); AWS_LIGHTSAIL_API GetAutoSnapshotsResult(const Aws::AmazonWebServiceResult& result); AWS_LIGHTSAIL_API GetAutoSnapshotsResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The name of the source instance or disk for the automatic snapshots.

*/ inline const Aws::String& GetResourceName() const{ return m_resourceName; } /** *

The name of the source instance or disk for the automatic snapshots.

*/ inline void SetResourceName(const Aws::String& value) { m_resourceName = value; } /** *

The name of the source instance or disk for the automatic snapshots.

*/ inline void SetResourceName(Aws::String&& value) { m_resourceName = std::move(value); } /** *

The name of the source instance or disk for the automatic snapshots.

*/ inline void SetResourceName(const char* value) { m_resourceName.assign(value); } /** *

The name of the source instance or disk for the automatic snapshots.

*/ inline GetAutoSnapshotsResult& WithResourceName(const Aws::String& value) { SetResourceName(value); return *this;} /** *

The name of the source instance or disk for the automatic snapshots.

*/ inline GetAutoSnapshotsResult& WithResourceName(Aws::String&& value) { SetResourceName(std::move(value)); return *this;} /** *

The name of the source instance or disk for the automatic snapshots.

*/ inline GetAutoSnapshotsResult& WithResourceName(const char* value) { SetResourceName(value); return *this;} /** *

The resource type (e.g., Instance or Disk).

*/ inline const ResourceType& GetResourceType() const{ return m_resourceType; } /** *

The resource type (e.g., Instance or Disk).

*/ inline void SetResourceType(const ResourceType& value) { m_resourceType = value; } /** *

The resource type (e.g., Instance or Disk).

*/ inline void SetResourceType(ResourceType&& value) { m_resourceType = std::move(value); } /** *

The resource type (e.g., Instance or Disk).

*/ inline GetAutoSnapshotsResult& WithResourceType(const ResourceType& value) { SetResourceType(value); return *this;} /** *

The resource type (e.g., Instance or Disk).

*/ inline GetAutoSnapshotsResult& WithResourceType(ResourceType&& value) { SetResourceType(std::move(value)); return *this;} /** *

An array of objects that describe the automatic snapshots that are available * for the specified source instance or disk.

*/ inline const Aws::Vector& GetAutoSnapshots() const{ return m_autoSnapshots; } /** *

An array of objects that describe the automatic snapshots that are available * for the specified source instance or disk.

*/ inline void SetAutoSnapshots(const Aws::Vector& value) { m_autoSnapshots = value; } /** *

An array of objects that describe the automatic snapshots that are available * for the specified source instance or disk.

*/ inline void SetAutoSnapshots(Aws::Vector&& value) { m_autoSnapshots = std::move(value); } /** *

An array of objects that describe the automatic snapshots that are available * for the specified source instance or disk.

*/ inline GetAutoSnapshotsResult& WithAutoSnapshots(const Aws::Vector& value) { SetAutoSnapshots(value); return *this;} /** *

An array of objects that describe the automatic snapshots that are available * for the specified source instance or disk.

*/ inline GetAutoSnapshotsResult& WithAutoSnapshots(Aws::Vector&& value) { SetAutoSnapshots(std::move(value)); return *this;} /** *

An array of objects that describe the automatic snapshots that are available * for the specified source instance or disk.

*/ inline GetAutoSnapshotsResult& AddAutoSnapshots(const AutoSnapshotDetails& value) { m_autoSnapshots.push_back(value); return *this; } /** *

An array of objects that describe the automatic snapshots that are available * for the specified source instance or disk.

*/ inline GetAutoSnapshotsResult& AddAutoSnapshots(AutoSnapshotDetails&& value) { m_autoSnapshots.push_back(std::move(value)); return *this; } inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline GetAutoSnapshotsResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetAutoSnapshotsResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetAutoSnapshotsResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_resourceName; ResourceType m_resourceType; Aws::Vector m_autoSnapshots; Aws::String m_requestId; }; } // namespace Model } // namespace Lightsail } // namespace Aws