/** * 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 Utils { namespace Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace S3Control { namespace Model { /** *

A container for the response details that are returned when querying about an * asynchronous request.

See Also:

AWS * API Reference

*/ class AsyncResponseDetails { public: AWS_S3CONTROL_API AsyncResponseDetails(); AWS_S3CONTROL_API AsyncResponseDetails(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_S3CONTROL_API AsyncResponseDetails& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const; /** *

The details for the Multi-Region Access Point.

*/ inline const MultiRegionAccessPointsAsyncResponse& GetMultiRegionAccessPointDetails() const{ return m_multiRegionAccessPointDetails; } /** *

The details for the Multi-Region Access Point.

*/ inline bool MultiRegionAccessPointDetailsHasBeenSet() const { return m_multiRegionAccessPointDetailsHasBeenSet; } /** *

The details for the Multi-Region Access Point.

*/ inline void SetMultiRegionAccessPointDetails(const MultiRegionAccessPointsAsyncResponse& value) { m_multiRegionAccessPointDetailsHasBeenSet = true; m_multiRegionAccessPointDetails = value; } /** *

The details for the Multi-Region Access Point.

*/ inline void SetMultiRegionAccessPointDetails(MultiRegionAccessPointsAsyncResponse&& value) { m_multiRegionAccessPointDetailsHasBeenSet = true; m_multiRegionAccessPointDetails = std::move(value); } /** *

The details for the Multi-Region Access Point.

*/ inline AsyncResponseDetails& WithMultiRegionAccessPointDetails(const MultiRegionAccessPointsAsyncResponse& value) { SetMultiRegionAccessPointDetails(value); return *this;} /** *

The details for the Multi-Region Access Point.

*/ inline AsyncResponseDetails& WithMultiRegionAccessPointDetails(MultiRegionAccessPointsAsyncResponse&& value) { SetMultiRegionAccessPointDetails(std::move(value)); return *this;} /** *

Error details for an asynchronous request.

*/ inline const AsyncErrorDetails& GetErrorDetails() const{ return m_errorDetails; } /** *

Error details for an asynchronous request.

*/ inline bool ErrorDetailsHasBeenSet() const { return m_errorDetailsHasBeenSet; } /** *

Error details for an asynchronous request.

*/ inline void SetErrorDetails(const AsyncErrorDetails& value) { m_errorDetailsHasBeenSet = true; m_errorDetails = value; } /** *

Error details for an asynchronous request.

*/ inline void SetErrorDetails(AsyncErrorDetails&& value) { m_errorDetailsHasBeenSet = true; m_errorDetails = std::move(value); } /** *

Error details for an asynchronous request.

*/ inline AsyncResponseDetails& WithErrorDetails(const AsyncErrorDetails& value) { SetErrorDetails(value); return *this;} /** *

Error details for an asynchronous request.

*/ inline AsyncResponseDetails& WithErrorDetails(AsyncErrorDetails&& value) { SetErrorDetails(std::move(value)); return *this;} private: MultiRegionAccessPointsAsyncResponse m_multiRegionAccessPointDetails; bool m_multiRegionAccessPointDetailsHasBeenSet = false; AsyncErrorDetails m_errorDetails; bool m_errorDetailsHasBeenSet = false; }; } // namespace Model } // namespace S3Control } // namespace Aws