/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace Mobile { namespace Model { /** *

Result structure used for requests to export project configuration details. *

See Also:

AWS * API Reference

*/ class ExportProjectResult { public: AWS_MOBILE_API ExportProjectResult(); AWS_MOBILE_API ExportProjectResult(const Aws::AmazonWebServiceResult& result); AWS_MOBILE_API ExportProjectResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

URL which can be used to download the exported project configuation file(s). *

*/ inline const Aws::String& GetDownloadUrl() const{ return m_downloadUrl; } /** *

URL which can be used to download the exported project configuation file(s). *

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

URL which can be used to download the exported project configuation file(s). *

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

URL which can be used to download the exported project configuation file(s). *

*/ inline void SetDownloadUrl(const char* value) { m_downloadUrl.assign(value); } /** *

URL which can be used to download the exported project configuation file(s). *

*/ inline ExportProjectResult& WithDownloadUrl(const Aws::String& value) { SetDownloadUrl(value); return *this;} /** *

URL which can be used to download the exported project configuation file(s). *

*/ inline ExportProjectResult& WithDownloadUrl(Aws::String&& value) { SetDownloadUrl(std::move(value)); return *this;} /** *

URL which can be used to download the exported project configuation file(s). *

*/ inline ExportProjectResult& WithDownloadUrl(const char* value) { SetDownloadUrl(value); return *this;} /** *

URL which can be shared to allow other AWS users to create their own project * in AWS Mobile Hub with the same configuration as the specified project. This URL * pertains to a snapshot in time of the project configuration that is created when * this API is called. If you want to share additional changes to your project * configuration, then you will need to create and share a new snapshot by calling * this method again.

*/ inline const Aws::String& GetShareUrl() const{ return m_shareUrl; } /** *

URL which can be shared to allow other AWS users to create their own project * in AWS Mobile Hub with the same configuration as the specified project. This URL * pertains to a snapshot in time of the project configuration that is created when * this API is called. If you want to share additional changes to your project * configuration, then you will need to create and share a new snapshot by calling * this method again.

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

URL which can be shared to allow other AWS users to create their own project * in AWS Mobile Hub with the same configuration as the specified project. This URL * pertains to a snapshot in time of the project configuration that is created when * this API is called. If you want to share additional changes to your project * configuration, then you will need to create and share a new snapshot by calling * this method again.

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

URL which can be shared to allow other AWS users to create their own project * in AWS Mobile Hub with the same configuration as the specified project. This URL * pertains to a snapshot in time of the project configuration that is created when * this API is called. If you want to share additional changes to your project * configuration, then you will need to create and share a new snapshot by calling * this method again.

*/ inline void SetShareUrl(const char* value) { m_shareUrl.assign(value); } /** *

URL which can be shared to allow other AWS users to create their own project * in AWS Mobile Hub with the same configuration as the specified project. This URL * pertains to a snapshot in time of the project configuration that is created when * this API is called. If you want to share additional changes to your project * configuration, then you will need to create and share a new snapshot by calling * this method again.

*/ inline ExportProjectResult& WithShareUrl(const Aws::String& value) { SetShareUrl(value); return *this;} /** *

URL which can be shared to allow other AWS users to create their own project * in AWS Mobile Hub with the same configuration as the specified project. This URL * pertains to a snapshot in time of the project configuration that is created when * this API is called. If you want to share additional changes to your project * configuration, then you will need to create and share a new snapshot by calling * this method again.

*/ inline ExportProjectResult& WithShareUrl(Aws::String&& value) { SetShareUrl(std::move(value)); return *this;} /** *

URL which can be shared to allow other AWS users to create their own project * in AWS Mobile Hub with the same configuration as the specified project. This URL * pertains to a snapshot in time of the project configuration that is created when * this API is called. If you want to share additional changes to your project * configuration, then you will need to create and share a new snapshot by calling * this method again.

*/ inline ExportProjectResult& WithShareUrl(const char* value) { SetShareUrl(value); return *this;} /** *

Unique identifier for the exported snapshot of the project configuration. * This snapshot identifier is included in the share URL.

*/ inline const Aws::String& GetSnapshotId() const{ return m_snapshotId; } /** *

Unique identifier for the exported snapshot of the project configuration. * This snapshot identifier is included in the share URL.

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

Unique identifier for the exported snapshot of the project configuration. * This snapshot identifier is included in the share URL.

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

Unique identifier for the exported snapshot of the project configuration. * This snapshot identifier is included in the share URL.

*/ inline void SetSnapshotId(const char* value) { m_snapshotId.assign(value); } /** *

Unique identifier for the exported snapshot of the project configuration. * This snapshot identifier is included in the share URL.

*/ inline ExportProjectResult& WithSnapshotId(const Aws::String& value) { SetSnapshotId(value); return *this;} /** *

Unique identifier for the exported snapshot of the project configuration. * This snapshot identifier is included in the share URL.

*/ inline ExportProjectResult& WithSnapshotId(Aws::String&& value) { SetSnapshotId(std::move(value)); return *this;} /** *

Unique identifier for the exported snapshot of the project configuration. * This snapshot identifier is included in the share URL.

*/ inline ExportProjectResult& WithSnapshotId(const char* value) { SetSnapshotId(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 ExportProjectResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline ExportProjectResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline ExportProjectResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_downloadUrl; Aws::String m_shareUrl; Aws::String m_snapshotId; Aws::String m_requestId; }; } // namespace Model } // namespace Mobile } // namespace Aws