/** * 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 Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace StorageGateway { namespace Model { /** *

Describes a recovery point.

See Also:

AWS * API Reference

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

The Amazon Resource Name (ARN) of the virtual tape.

*/ inline const Aws::String& GetTapeARN() const{ return m_tapeARN; } /** *

The Amazon Resource Name (ARN) of the virtual tape.

*/ inline bool TapeARNHasBeenSet() const { return m_tapeARNHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the virtual tape.

*/ inline void SetTapeARN(const Aws::String& value) { m_tapeARNHasBeenSet = true; m_tapeARN = value; } /** *

The Amazon Resource Name (ARN) of the virtual tape.

*/ inline void SetTapeARN(Aws::String&& value) { m_tapeARNHasBeenSet = true; m_tapeARN = std::move(value); } /** *

The Amazon Resource Name (ARN) of the virtual tape.

*/ inline void SetTapeARN(const char* value) { m_tapeARNHasBeenSet = true; m_tapeARN.assign(value); } /** *

The Amazon Resource Name (ARN) of the virtual tape.

*/ inline TapeRecoveryPointInfo& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;} /** *

The Amazon Resource Name (ARN) of the virtual tape.

*/ inline TapeRecoveryPointInfo& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the virtual tape.

*/ inline TapeRecoveryPointInfo& WithTapeARN(const char* value) { SetTapeARN(value); return *this;} /** *

The time when the point-in-time view of the virtual tape was replicated for * later recovery.

The default timestamp format of the tape recovery point * time is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.

*/ inline const Aws::Utils::DateTime& GetTapeRecoveryPointTime() const{ return m_tapeRecoveryPointTime; } /** *

The time when the point-in-time view of the virtual tape was replicated for * later recovery.

The default timestamp format of the tape recovery point * time is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.

*/ inline bool TapeRecoveryPointTimeHasBeenSet() const { return m_tapeRecoveryPointTimeHasBeenSet; } /** *

The time when the point-in-time view of the virtual tape was replicated for * later recovery.

The default timestamp format of the tape recovery point * time is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.

*/ inline void SetTapeRecoveryPointTime(const Aws::Utils::DateTime& value) { m_tapeRecoveryPointTimeHasBeenSet = true; m_tapeRecoveryPointTime = value; } /** *

The time when the point-in-time view of the virtual tape was replicated for * later recovery.

The default timestamp format of the tape recovery point * time is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.

*/ inline void SetTapeRecoveryPointTime(Aws::Utils::DateTime&& value) { m_tapeRecoveryPointTimeHasBeenSet = true; m_tapeRecoveryPointTime = std::move(value); } /** *

The time when the point-in-time view of the virtual tape was replicated for * later recovery.

The default timestamp format of the tape recovery point * time is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.

*/ inline TapeRecoveryPointInfo& WithTapeRecoveryPointTime(const Aws::Utils::DateTime& value) { SetTapeRecoveryPointTime(value); return *this;} /** *

The time when the point-in-time view of the virtual tape was replicated for * later recovery.

The default timestamp format of the tape recovery point * time is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.

*/ inline TapeRecoveryPointInfo& WithTapeRecoveryPointTime(Aws::Utils::DateTime&& value) { SetTapeRecoveryPointTime(std::move(value)); return *this;} /** *

The size, in bytes, of the virtual tapes to recover.

*/ inline long long GetTapeSizeInBytes() const{ return m_tapeSizeInBytes; } /** *

The size, in bytes, of the virtual tapes to recover.

*/ inline bool TapeSizeInBytesHasBeenSet() const { return m_tapeSizeInBytesHasBeenSet; } /** *

The size, in bytes, of the virtual tapes to recover.

*/ inline void SetTapeSizeInBytes(long long value) { m_tapeSizeInBytesHasBeenSet = true; m_tapeSizeInBytes = value; } /** *

The size, in bytes, of the virtual tapes to recover.

*/ inline TapeRecoveryPointInfo& WithTapeSizeInBytes(long long value) { SetTapeSizeInBytes(value); return *this;} /** *

The status of the virtual tapes.

*/ inline const Aws::String& GetTapeStatus() const{ return m_tapeStatus; } /** *

The status of the virtual tapes.

*/ inline bool TapeStatusHasBeenSet() const { return m_tapeStatusHasBeenSet; } /** *

The status of the virtual tapes.

*/ inline void SetTapeStatus(const Aws::String& value) { m_tapeStatusHasBeenSet = true; m_tapeStatus = value; } /** *

The status of the virtual tapes.

*/ inline void SetTapeStatus(Aws::String&& value) { m_tapeStatusHasBeenSet = true; m_tapeStatus = std::move(value); } /** *

The status of the virtual tapes.

*/ inline void SetTapeStatus(const char* value) { m_tapeStatusHasBeenSet = true; m_tapeStatus.assign(value); } /** *

The status of the virtual tapes.

*/ inline TapeRecoveryPointInfo& WithTapeStatus(const Aws::String& value) { SetTapeStatus(value); return *this;} /** *

The status of the virtual tapes.

*/ inline TapeRecoveryPointInfo& WithTapeStatus(Aws::String&& value) { SetTapeStatus(std::move(value)); return *this;} /** *

The status of the virtual tapes.

*/ inline TapeRecoveryPointInfo& WithTapeStatus(const char* value) { SetTapeStatus(value); return *this;} private: Aws::String m_tapeARN; bool m_tapeARNHasBeenSet = false; Aws::Utils::DateTime m_tapeRecoveryPointTime; bool m_tapeRecoveryPointTimeHasBeenSet = false; long long m_tapeSizeInBytes; bool m_tapeSizeInBytesHasBeenSet = false; Aws::String m_tapeStatus; bool m_tapeStatusHasBeenSet = false; }; } // namespace Model } // namespace StorageGateway } // namespace Aws