/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A container for the information about an asynchronous
* operation.See Also:
AWS
* API Reference
The time that the request was sent to the service.
*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *The time that the request was sent to the service.
*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *The time that the request was sent to the service.
*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *The time that the request was sent to the service.
*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *The time that the request was sent to the service.
*/ inline AsyncOperation& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *The time that the request was sent to the service.
*/ inline AsyncOperation& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *The specific operation for the asynchronous request.
*/ inline const AsyncOperationName& GetOperation() const{ return m_operation; } /** *The specific operation for the asynchronous request.
*/ inline bool OperationHasBeenSet() const { return m_operationHasBeenSet; } /** *The specific operation for the asynchronous request.
*/ inline void SetOperation(const AsyncOperationName& value) { m_operationHasBeenSet = true; m_operation = value; } /** *The specific operation for the asynchronous request.
*/ inline void SetOperation(AsyncOperationName&& value) { m_operationHasBeenSet = true; m_operation = std::move(value); } /** *The specific operation for the asynchronous request.
*/ inline AsyncOperation& WithOperation(const AsyncOperationName& value) { SetOperation(value); return *this;} /** *The specific operation for the asynchronous request.
*/ inline AsyncOperation& WithOperation(AsyncOperationName&& value) { SetOperation(std::move(value)); return *this;} /** *The request token associated with the request.
*/ inline const Aws::String& GetRequestTokenARN() const{ return m_requestTokenARN; } /** *The request token associated with the request.
*/ inline bool RequestTokenARNHasBeenSet() const { return m_requestTokenARNHasBeenSet; } /** *The request token associated with the request.
*/ inline void SetRequestTokenARN(const Aws::String& value) { m_requestTokenARNHasBeenSet = true; m_requestTokenARN = value; } /** *The request token associated with the request.
*/ inline void SetRequestTokenARN(Aws::String&& value) { m_requestTokenARNHasBeenSet = true; m_requestTokenARN = std::move(value); } /** *The request token associated with the request.
*/ inline void SetRequestTokenARN(const char* value) { m_requestTokenARNHasBeenSet = true; m_requestTokenARN.assign(value); } /** *The request token associated with the request.
*/ inline AsyncOperation& WithRequestTokenARN(const Aws::String& value) { SetRequestTokenARN(value); return *this;} /** *The request token associated with the request.
*/ inline AsyncOperation& WithRequestTokenARN(Aws::String&& value) { SetRequestTokenARN(std::move(value)); return *this;} /** *The request token associated with the request.
*/ inline AsyncOperation& WithRequestTokenARN(const char* value) { SetRequestTokenARN(value); return *this;} /** *The parameters associated with the request.
*/ inline const AsyncRequestParameters& GetRequestParameters() const{ return m_requestParameters; } /** *The parameters associated with the request.
*/ inline bool RequestParametersHasBeenSet() const { return m_requestParametersHasBeenSet; } /** *The parameters associated with the request.
*/ inline void SetRequestParameters(const AsyncRequestParameters& value) { m_requestParametersHasBeenSet = true; m_requestParameters = value; } /** *The parameters associated with the request.
*/ inline void SetRequestParameters(AsyncRequestParameters&& value) { m_requestParametersHasBeenSet = true; m_requestParameters = std::move(value); } /** *The parameters associated with the request.
*/ inline AsyncOperation& WithRequestParameters(const AsyncRequestParameters& value) { SetRequestParameters(value); return *this;} /** *The parameters associated with the request.
*/ inline AsyncOperation& WithRequestParameters(AsyncRequestParameters&& value) { SetRequestParameters(std::move(value)); return *this;} /** *The current status of the request.
*/ inline const Aws::String& GetRequestStatus() const{ return m_requestStatus; } /** *The current status of the request.
*/ inline bool RequestStatusHasBeenSet() const { return m_requestStatusHasBeenSet; } /** *The current status of the request.
*/ inline void SetRequestStatus(const Aws::String& value) { m_requestStatusHasBeenSet = true; m_requestStatus = value; } /** *The current status of the request.
*/ inline void SetRequestStatus(Aws::String&& value) { m_requestStatusHasBeenSet = true; m_requestStatus = std::move(value); } /** *The current status of the request.
*/ inline void SetRequestStatus(const char* value) { m_requestStatusHasBeenSet = true; m_requestStatus.assign(value); } /** *The current status of the request.
*/ inline AsyncOperation& WithRequestStatus(const Aws::String& value) { SetRequestStatus(value); return *this;} /** *The current status of the request.
*/ inline AsyncOperation& WithRequestStatus(Aws::String&& value) { SetRequestStatus(std::move(value)); return *this;} /** *The current status of the request.
*/ inline AsyncOperation& WithRequestStatus(const char* value) { SetRequestStatus(value); return *this;} /** *The details of the response.
*/ inline const AsyncResponseDetails& GetResponseDetails() const{ return m_responseDetails; } /** *The details of the response.
*/ inline bool ResponseDetailsHasBeenSet() const { return m_responseDetailsHasBeenSet; } /** *The details of the response.
*/ inline void SetResponseDetails(const AsyncResponseDetails& value) { m_responseDetailsHasBeenSet = true; m_responseDetails = value; } /** *The details of the response.
*/ inline void SetResponseDetails(AsyncResponseDetails&& value) { m_responseDetailsHasBeenSet = true; m_responseDetails = std::move(value); } /** *The details of the response.
*/ inline AsyncOperation& WithResponseDetails(const AsyncResponseDetails& value) { SetResponseDetails(value); return *this;} /** *The details of the response.
*/ inline AsyncOperation& WithResponseDetails(AsyncResponseDetails&& value) { SetResponseDetails(std::move(value)); return *this;} private: Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; AsyncOperationName m_operation; bool m_operationHasBeenSet = false; Aws::String m_requestTokenARN; bool m_requestTokenARNHasBeenSet = false; AsyncRequestParameters m_requestParameters; bool m_requestParametersHasBeenSet = false; Aws::String m_requestStatus; bool m_requestStatusHasBeenSet = false; AsyncResponseDetails m_responseDetails; bool m_responseDetailsHasBeenSet = false; }; } // namespace Model } // namespace S3Control } // namespace Aws