/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace Backup { namespace Model { class GetLegalHoldResult { public: AWS_BACKUP_API GetLegalHoldResult(); AWS_BACKUP_API GetLegalHoldResult(const Aws::AmazonWebServiceResult& result); AWS_BACKUP_API GetLegalHoldResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

This is the string title of the legal hold.

*/ inline const Aws::String& GetTitle() const{ return m_title; } /** *

This is the string title of the legal hold.

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

This is the string title of the legal hold.

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

This is the string title of the legal hold.

*/ inline void SetTitle(const char* value) { m_title.assign(value); } /** *

This is the string title of the legal hold.

*/ inline GetLegalHoldResult& WithTitle(const Aws::String& value) { SetTitle(value); return *this;} /** *

This is the string title of the legal hold.

*/ inline GetLegalHoldResult& WithTitle(Aws::String&& value) { SetTitle(std::move(value)); return *this;} /** *

This is the string title of the legal hold.

*/ inline GetLegalHoldResult& WithTitle(const char* value) { SetTitle(value); return *this;} /** *

This is the status of the legal hold. Statuses can be ACTIVE, * CREATING, CANCELED, and CANCELING.

*/ inline const LegalHoldStatus& GetStatus() const{ return m_status; } /** *

This is the status of the legal hold. Statuses can be ACTIVE, * CREATING, CANCELED, and CANCELING.

*/ inline void SetStatus(const LegalHoldStatus& value) { m_status = value; } /** *

This is the status of the legal hold. Statuses can be ACTIVE, * CREATING, CANCELED, and CANCELING.

*/ inline void SetStatus(LegalHoldStatus&& value) { m_status = std::move(value); } /** *

This is the status of the legal hold. Statuses can be ACTIVE, * CREATING, CANCELED, and CANCELING.

*/ inline GetLegalHoldResult& WithStatus(const LegalHoldStatus& value) { SetStatus(value); return *this;} /** *

This is the status of the legal hold. Statuses can be ACTIVE, * CREATING, CANCELED, and CANCELING.

*/ inline GetLegalHoldResult& WithStatus(LegalHoldStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

This is the returned string description of the legal hold.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

This is the returned string description of the legal hold.

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

This is the returned string description of the legal hold.

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

This is the returned string description of the legal hold.

*/ inline void SetDescription(const char* value) { m_description.assign(value); } /** *

This is the returned string description of the legal hold.

*/ inline GetLegalHoldResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

This is the returned string description of the legal hold.

*/ inline GetLegalHoldResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

This is the returned string description of the legal hold.

*/ inline GetLegalHoldResult& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

String describing the reason for removing the legal hold.

*/ inline const Aws::String& GetCancelDescription() const{ return m_cancelDescription; } /** *

String describing the reason for removing the legal hold.

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

String describing the reason for removing the legal hold.

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

String describing the reason for removing the legal hold.

*/ inline void SetCancelDescription(const char* value) { m_cancelDescription.assign(value); } /** *

String describing the reason for removing the legal hold.

*/ inline GetLegalHoldResult& WithCancelDescription(const Aws::String& value) { SetCancelDescription(value); return *this;} /** *

String describing the reason for removing the legal hold.

*/ inline GetLegalHoldResult& WithCancelDescription(Aws::String&& value) { SetCancelDescription(std::move(value)); return *this;} /** *

String describing the reason for removing the legal hold.

*/ inline GetLegalHoldResult& WithCancelDescription(const char* value) { SetCancelDescription(value); return *this;} /** *

This is the returned ID associated with a specified legal hold.

*/ inline const Aws::String& GetLegalHoldId() const{ return m_legalHoldId; } /** *

This is the returned ID associated with a specified legal hold.

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

This is the returned ID associated with a specified legal hold.

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

This is the returned ID associated with a specified legal hold.

*/ inline void SetLegalHoldId(const char* value) { m_legalHoldId.assign(value); } /** *

This is the returned ID associated with a specified legal hold.

*/ inline GetLegalHoldResult& WithLegalHoldId(const Aws::String& value) { SetLegalHoldId(value); return *this;} /** *

This is the returned ID associated with a specified legal hold.

*/ inline GetLegalHoldResult& WithLegalHoldId(Aws::String&& value) { SetLegalHoldId(std::move(value)); return *this;} /** *

This is the returned ID associated with a specified legal hold.

*/ inline GetLegalHoldResult& WithLegalHoldId(const char* value) { SetLegalHoldId(value); return *this;} /** *

This is the returned framework ARN for the specified legal hold. An Amazon * Resource Name (ARN) uniquely identifies a resource. The format of the ARN * depends on the resource type.

*/ inline const Aws::String& GetLegalHoldArn() const{ return m_legalHoldArn; } /** *

This is the returned framework ARN for the specified legal hold. An Amazon * Resource Name (ARN) uniquely identifies a resource. The format of the ARN * depends on the resource type.

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

This is the returned framework ARN for the specified legal hold. An Amazon * Resource Name (ARN) uniquely identifies a resource. The format of the ARN * depends on the resource type.

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

This is the returned framework ARN for the specified legal hold. An Amazon * Resource Name (ARN) uniquely identifies a resource. The format of the ARN * depends on the resource type.

*/ inline void SetLegalHoldArn(const char* value) { m_legalHoldArn.assign(value); } /** *

This is the returned framework ARN for the specified legal hold. An Amazon * Resource Name (ARN) uniquely identifies a resource. The format of the ARN * depends on the resource type.

*/ inline GetLegalHoldResult& WithLegalHoldArn(const Aws::String& value) { SetLegalHoldArn(value); return *this;} /** *

This is the returned framework ARN for the specified legal hold. An Amazon * Resource Name (ARN) uniquely identifies a resource. The format of the ARN * depends on the resource type.

*/ inline GetLegalHoldResult& WithLegalHoldArn(Aws::String&& value) { SetLegalHoldArn(std::move(value)); return *this;} /** *

This is the returned framework ARN for the specified legal hold. An Amazon * Resource Name (ARN) uniquely identifies a resource. The format of the ARN * depends on the resource type.

*/ inline GetLegalHoldResult& WithLegalHoldArn(const char* value) { SetLegalHoldArn(value); return *this;} /** *

Time in number format when legal hold was created.

*/ inline const Aws::Utils::DateTime& GetCreationDate() const{ return m_creationDate; } /** *

Time in number format when legal hold was created.

*/ inline void SetCreationDate(const Aws::Utils::DateTime& value) { m_creationDate = value; } /** *

Time in number format when legal hold was created.

*/ inline void SetCreationDate(Aws::Utils::DateTime&& value) { m_creationDate = std::move(value); } /** *

Time in number format when legal hold was created.

*/ inline GetLegalHoldResult& WithCreationDate(const Aws::Utils::DateTime& value) { SetCreationDate(value); return *this;} /** *

Time in number format when legal hold was created.

*/ inline GetLegalHoldResult& WithCreationDate(Aws::Utils::DateTime&& value) { SetCreationDate(std::move(value)); return *this;} /** *

Time in number when legal hold was cancelled.

*/ inline const Aws::Utils::DateTime& GetCancellationDate() const{ return m_cancellationDate; } /** *

Time in number when legal hold was cancelled.

*/ inline void SetCancellationDate(const Aws::Utils::DateTime& value) { m_cancellationDate = value; } /** *

Time in number when legal hold was cancelled.

*/ inline void SetCancellationDate(Aws::Utils::DateTime&& value) { m_cancellationDate = std::move(value); } /** *

Time in number when legal hold was cancelled.

*/ inline GetLegalHoldResult& WithCancellationDate(const Aws::Utils::DateTime& value) { SetCancellationDate(value); return *this;} /** *

Time in number when legal hold was cancelled.

*/ inline GetLegalHoldResult& WithCancellationDate(Aws::Utils::DateTime&& value) { SetCancellationDate(std::move(value)); return *this;} /** *

This is the date and time until which the legal hold record will be * retained.

*/ inline const Aws::Utils::DateTime& GetRetainRecordUntil() const{ return m_retainRecordUntil; } /** *

This is the date and time until which the legal hold record will be * retained.

*/ inline void SetRetainRecordUntil(const Aws::Utils::DateTime& value) { m_retainRecordUntil = value; } /** *

This is the date and time until which the legal hold record will be * retained.

*/ inline void SetRetainRecordUntil(Aws::Utils::DateTime&& value) { m_retainRecordUntil = std::move(value); } /** *

This is the date and time until which the legal hold record will be * retained.

*/ inline GetLegalHoldResult& WithRetainRecordUntil(const Aws::Utils::DateTime& value) { SetRetainRecordUntil(value); return *this;} /** *

This is the date and time until which the legal hold record will be * retained.

*/ inline GetLegalHoldResult& WithRetainRecordUntil(Aws::Utils::DateTime&& value) { SetRetainRecordUntil(std::move(value)); return *this;} /** *

This specifies criteria to assign a set of resources, such as resource types * or backup vaults.

*/ inline const RecoveryPointSelection& GetRecoveryPointSelection() const{ return m_recoveryPointSelection; } /** *

This specifies criteria to assign a set of resources, such as resource types * or backup vaults.

*/ inline void SetRecoveryPointSelection(const RecoveryPointSelection& value) { m_recoveryPointSelection = value; } /** *

This specifies criteria to assign a set of resources, such as resource types * or backup vaults.

*/ inline void SetRecoveryPointSelection(RecoveryPointSelection&& value) { m_recoveryPointSelection = std::move(value); } /** *

This specifies criteria to assign a set of resources, such as resource types * or backup vaults.

*/ inline GetLegalHoldResult& WithRecoveryPointSelection(const RecoveryPointSelection& value) { SetRecoveryPointSelection(value); return *this;} /** *

This specifies criteria to assign a set of resources, such as resource types * or backup vaults.

*/ inline GetLegalHoldResult& WithRecoveryPointSelection(RecoveryPointSelection&& value) { SetRecoveryPointSelection(std::move(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 GetLegalHoldResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetLegalHoldResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetLegalHoldResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_title; LegalHoldStatus m_status; Aws::String m_description; Aws::String m_cancelDescription; Aws::String m_legalHoldId; Aws::String m_legalHoldArn; Aws::Utils::DateTime m_creationDate; Aws::Utils::DateTime m_cancellationDate; Aws::Utils::DateTime m_retainRecordUntil; RecoveryPointSelection m_recoveryPointSelection; Aws::String m_requestId; }; } // namespace Model } // namespace Backup } // namespace Aws