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

Provides status of the delivery of the snapshot or the configuration history * to the specified Amazon S3 bucket. Also provides the status of notifications * about the Amazon S3 delivery to the specified Amazon SNS topic.

See * Also:

AWS * API Reference

*/ class ConfigExportDeliveryInfo { public: AWS_CONFIGSERVICE_API ConfigExportDeliveryInfo(); AWS_CONFIGSERVICE_API ConfigExportDeliveryInfo(Aws::Utils::Json::JsonView jsonValue); AWS_CONFIGSERVICE_API ConfigExportDeliveryInfo& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_CONFIGSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Status of the last attempted delivery.

*/ inline const DeliveryStatus& GetLastStatus() const{ return m_lastStatus; } /** *

Status of the last attempted delivery.

*/ inline bool LastStatusHasBeenSet() const { return m_lastStatusHasBeenSet; } /** *

Status of the last attempted delivery.

*/ inline void SetLastStatus(const DeliveryStatus& value) { m_lastStatusHasBeenSet = true; m_lastStatus = value; } /** *

Status of the last attempted delivery.

*/ inline void SetLastStatus(DeliveryStatus&& value) { m_lastStatusHasBeenSet = true; m_lastStatus = std::move(value); } /** *

Status of the last attempted delivery.

*/ inline ConfigExportDeliveryInfo& WithLastStatus(const DeliveryStatus& value) { SetLastStatus(value); return *this;} /** *

Status of the last attempted delivery.

*/ inline ConfigExportDeliveryInfo& WithLastStatus(DeliveryStatus&& value) { SetLastStatus(std::move(value)); return *this;} /** *

The error code from the last attempted delivery.

*/ inline const Aws::String& GetLastErrorCode() const{ return m_lastErrorCode; } /** *

The error code from the last attempted delivery.

*/ inline bool LastErrorCodeHasBeenSet() const { return m_lastErrorCodeHasBeenSet; } /** *

The error code from the last attempted delivery.

*/ inline void SetLastErrorCode(const Aws::String& value) { m_lastErrorCodeHasBeenSet = true; m_lastErrorCode = value; } /** *

The error code from the last attempted delivery.

*/ inline void SetLastErrorCode(Aws::String&& value) { m_lastErrorCodeHasBeenSet = true; m_lastErrorCode = std::move(value); } /** *

The error code from the last attempted delivery.

*/ inline void SetLastErrorCode(const char* value) { m_lastErrorCodeHasBeenSet = true; m_lastErrorCode.assign(value); } /** *

The error code from the last attempted delivery.

*/ inline ConfigExportDeliveryInfo& WithLastErrorCode(const Aws::String& value) { SetLastErrorCode(value); return *this;} /** *

The error code from the last attempted delivery.

*/ inline ConfigExportDeliveryInfo& WithLastErrorCode(Aws::String&& value) { SetLastErrorCode(std::move(value)); return *this;} /** *

The error code from the last attempted delivery.

*/ inline ConfigExportDeliveryInfo& WithLastErrorCode(const char* value) { SetLastErrorCode(value); return *this;} /** *

The error message from the last attempted delivery.

*/ inline const Aws::String& GetLastErrorMessage() const{ return m_lastErrorMessage; } /** *

The error message from the last attempted delivery.

*/ inline bool LastErrorMessageHasBeenSet() const { return m_lastErrorMessageHasBeenSet; } /** *

The error message from the last attempted delivery.

*/ inline void SetLastErrorMessage(const Aws::String& value) { m_lastErrorMessageHasBeenSet = true; m_lastErrorMessage = value; } /** *

The error message from the last attempted delivery.

*/ inline void SetLastErrorMessage(Aws::String&& value) { m_lastErrorMessageHasBeenSet = true; m_lastErrorMessage = std::move(value); } /** *

The error message from the last attempted delivery.

*/ inline void SetLastErrorMessage(const char* value) { m_lastErrorMessageHasBeenSet = true; m_lastErrorMessage.assign(value); } /** *

The error message from the last attempted delivery.

*/ inline ConfigExportDeliveryInfo& WithLastErrorMessage(const Aws::String& value) { SetLastErrorMessage(value); return *this;} /** *

The error message from the last attempted delivery.

*/ inline ConfigExportDeliveryInfo& WithLastErrorMessage(Aws::String&& value) { SetLastErrorMessage(std::move(value)); return *this;} /** *

The error message from the last attempted delivery.

*/ inline ConfigExportDeliveryInfo& WithLastErrorMessage(const char* value) { SetLastErrorMessage(value); return *this;} /** *

The time of the last attempted delivery.

*/ inline const Aws::Utils::DateTime& GetLastAttemptTime() const{ return m_lastAttemptTime; } /** *

The time of the last attempted delivery.

*/ inline bool LastAttemptTimeHasBeenSet() const { return m_lastAttemptTimeHasBeenSet; } /** *

The time of the last attempted delivery.

*/ inline void SetLastAttemptTime(const Aws::Utils::DateTime& value) { m_lastAttemptTimeHasBeenSet = true; m_lastAttemptTime = value; } /** *

The time of the last attempted delivery.

*/ inline void SetLastAttemptTime(Aws::Utils::DateTime&& value) { m_lastAttemptTimeHasBeenSet = true; m_lastAttemptTime = std::move(value); } /** *

The time of the last attempted delivery.

*/ inline ConfigExportDeliveryInfo& WithLastAttemptTime(const Aws::Utils::DateTime& value) { SetLastAttemptTime(value); return *this;} /** *

The time of the last attempted delivery.

*/ inline ConfigExportDeliveryInfo& WithLastAttemptTime(Aws::Utils::DateTime&& value) { SetLastAttemptTime(std::move(value)); return *this;} /** *

The time of the last successful delivery.

*/ inline const Aws::Utils::DateTime& GetLastSuccessfulTime() const{ return m_lastSuccessfulTime; } /** *

The time of the last successful delivery.

*/ inline bool LastSuccessfulTimeHasBeenSet() const { return m_lastSuccessfulTimeHasBeenSet; } /** *

The time of the last successful delivery.

*/ inline void SetLastSuccessfulTime(const Aws::Utils::DateTime& value) { m_lastSuccessfulTimeHasBeenSet = true; m_lastSuccessfulTime = value; } /** *

The time of the last successful delivery.

*/ inline void SetLastSuccessfulTime(Aws::Utils::DateTime&& value) { m_lastSuccessfulTimeHasBeenSet = true; m_lastSuccessfulTime = std::move(value); } /** *

The time of the last successful delivery.

*/ inline ConfigExportDeliveryInfo& WithLastSuccessfulTime(const Aws::Utils::DateTime& value) { SetLastSuccessfulTime(value); return *this;} /** *

The time of the last successful delivery.

*/ inline ConfigExportDeliveryInfo& WithLastSuccessfulTime(Aws::Utils::DateTime&& value) { SetLastSuccessfulTime(std::move(value)); return *this;} /** *

The time that the next delivery occurs.

*/ inline const Aws::Utils::DateTime& GetNextDeliveryTime() const{ return m_nextDeliveryTime; } /** *

The time that the next delivery occurs.

*/ inline bool NextDeliveryTimeHasBeenSet() const { return m_nextDeliveryTimeHasBeenSet; } /** *

The time that the next delivery occurs.

*/ inline void SetNextDeliveryTime(const Aws::Utils::DateTime& value) { m_nextDeliveryTimeHasBeenSet = true; m_nextDeliveryTime = value; } /** *

The time that the next delivery occurs.

*/ inline void SetNextDeliveryTime(Aws::Utils::DateTime&& value) { m_nextDeliveryTimeHasBeenSet = true; m_nextDeliveryTime = std::move(value); } /** *

The time that the next delivery occurs.

*/ inline ConfigExportDeliveryInfo& WithNextDeliveryTime(const Aws::Utils::DateTime& value) { SetNextDeliveryTime(value); return *this;} /** *

The time that the next delivery occurs.

*/ inline ConfigExportDeliveryInfo& WithNextDeliveryTime(Aws::Utils::DateTime&& value) { SetNextDeliveryTime(std::move(value)); return *this;} private: DeliveryStatus m_lastStatus; bool m_lastStatusHasBeenSet = false; Aws::String m_lastErrorCode; bool m_lastErrorCodeHasBeenSet = false; Aws::String m_lastErrorMessage; bool m_lastErrorMessageHasBeenSet = false; Aws::Utils::DateTime m_lastAttemptTime; bool m_lastAttemptTimeHasBeenSet = false; Aws::Utils::DateTime m_lastSuccessfulTime; bool m_lastSuccessfulTimeHasBeenSet = false; Aws::Utils::DateTime m_nextDeliveryTime; bool m_nextDeliveryTimeHasBeenSet = false; }; } // namespace Model } // namespace ConfigService } // namespace Aws