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

Describes a specific Amazon FSx Administrative Action for the current Windows * file system.

See Also:

AWS * API Reference

*/ class AWS_FSX_API AdministrativeAction { public: AdministrativeAction(); AdministrativeAction(Aws::Utils::Json::JsonView jsonValue); AdministrativeAction& operator=(Aws::Utils::Json::JsonView jsonValue); Aws::Utils::Json::JsonValue Jsonize() const; inline const AdministrativeActionType& GetAdministrativeActionType() const{ return m_administrativeActionType; } inline bool AdministrativeActionTypeHasBeenSet() const { return m_administrativeActionTypeHasBeenSet; } inline void SetAdministrativeActionType(const AdministrativeActionType& value) { m_administrativeActionTypeHasBeenSet = true; m_administrativeActionType = value; } inline void SetAdministrativeActionType(AdministrativeActionType&& value) { m_administrativeActionTypeHasBeenSet = true; m_administrativeActionType = std::move(value); } inline AdministrativeAction& WithAdministrativeActionType(const AdministrativeActionType& value) { SetAdministrativeActionType(value); return *this;} inline AdministrativeAction& WithAdministrativeActionType(AdministrativeActionType&& value) { SetAdministrativeActionType(std::move(value)); return *this;} /** *

Provides the percent complete of a STORAGE_OPTIMIZATION * administrative action.

*/ inline int GetProgressPercent() const{ return m_progressPercent; } /** *

Provides the percent complete of a STORAGE_OPTIMIZATION * administrative action.

*/ inline bool ProgressPercentHasBeenSet() const { return m_progressPercentHasBeenSet; } /** *

Provides the percent complete of a STORAGE_OPTIMIZATION * administrative action.

*/ inline void SetProgressPercent(int value) { m_progressPercentHasBeenSet = true; m_progressPercent = value; } /** *

Provides the percent complete of a STORAGE_OPTIMIZATION * administrative action.

*/ inline AdministrativeAction& WithProgressPercent(int value) { SetProgressPercent(value); return *this;} /** *

Time that the administrative action request was received.

*/ inline const Aws::Utils::DateTime& GetRequestTime() const{ return m_requestTime; } /** *

Time that the administrative action request was received.

*/ inline bool RequestTimeHasBeenSet() const { return m_requestTimeHasBeenSet; } /** *

Time that the administrative action request was received.

*/ inline void SetRequestTime(const Aws::Utils::DateTime& value) { m_requestTimeHasBeenSet = true; m_requestTime = value; } /** *

Time that the administrative action request was received.

*/ inline void SetRequestTime(Aws::Utils::DateTime&& value) { m_requestTimeHasBeenSet = true; m_requestTime = std::move(value); } /** *

Time that the administrative action request was received.

*/ inline AdministrativeAction& WithRequestTime(const Aws::Utils::DateTime& value) { SetRequestTime(value); return *this;} /** *

Time that the administrative action request was received.

*/ inline AdministrativeAction& WithRequestTime(Aws::Utils::DateTime&& value) { SetRequestTime(std::move(value)); return *this;} /** *

Describes the status of the administrative action, as follows:

  • *

    FAILED - Amazon FSx failed to process the administrative action * successfully.

  • IN_PROGRESS - Amazon FSx is * processing the administrative action.

  • PENDING - * Amazon FSx is waiting to process the administrative action.

  • * COMPLETED - Amazon FSx has finished processing the administrative * task.

  • UPDATED_OPTIMIZING - For a storage * capacity increase update, Amazon FSx has updated the file system with the new * storage capacity, and is now performing the storage optimization process. For * more information, see Managing * Storage Capacity.

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

Describes the status of the administrative action, as follows:

  • *

    FAILED - Amazon FSx failed to process the administrative action * successfully.

  • IN_PROGRESS - Amazon FSx is * processing the administrative action.

  • PENDING - * Amazon FSx is waiting to process the administrative action.

  • * COMPLETED - Amazon FSx has finished processing the administrative * task.

  • UPDATED_OPTIMIZING - For a storage * capacity increase update, Amazon FSx has updated the file system with the new * storage capacity, and is now performing the storage optimization process. For * more information, see Managing * Storage Capacity.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

Describes the status of the administrative action, as follows:

  • *

    FAILED - Amazon FSx failed to process the administrative action * successfully.

  • IN_PROGRESS - Amazon FSx is * processing the administrative action.

  • PENDING - * Amazon FSx is waiting to process the administrative action.

  • * COMPLETED - Amazon FSx has finished processing the administrative * task.

  • UPDATED_OPTIMIZING - For a storage * capacity increase update, Amazon FSx has updated the file system with the new * storage capacity, and is now performing the storage optimization process. For * more information, see Managing * Storage Capacity.

*/ inline void SetStatus(const Status& value) { m_statusHasBeenSet = true; m_status = value; } /** *

Describes the status of the administrative action, as follows:

  • *

    FAILED - Amazon FSx failed to process the administrative action * successfully.

  • IN_PROGRESS - Amazon FSx is * processing the administrative action.

  • PENDING - * Amazon FSx is waiting to process the administrative action.

  • * COMPLETED - Amazon FSx has finished processing the administrative * task.

  • UPDATED_OPTIMIZING - For a storage * capacity increase update, Amazon FSx has updated the file system with the new * storage capacity, and is now performing the storage optimization process. For * more information, see Managing * Storage Capacity.

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

Describes the status of the administrative action, as follows:

  • *

    FAILED - Amazon FSx failed to process the administrative action * successfully.

  • IN_PROGRESS - Amazon FSx is * processing the administrative action.

  • PENDING - * Amazon FSx is waiting to process the administrative action.

  • * COMPLETED - Amazon FSx has finished processing the administrative * task.

  • UPDATED_OPTIMIZING - For a storage * capacity increase update, Amazon FSx has updated the file system with the new * storage capacity, and is now performing the storage optimization process. For * more information, see Managing * Storage Capacity.

*/ inline AdministrativeAction& WithStatus(const Status& value) { SetStatus(value); return *this;} /** *

Describes the status of the administrative action, as follows:

  • *

    FAILED - Amazon FSx failed to process the administrative action * successfully.

  • IN_PROGRESS - Amazon FSx is * processing the administrative action.

  • PENDING - * Amazon FSx is waiting to process the administrative action.

  • * COMPLETED - Amazon FSx has finished processing the administrative * task.

  • UPDATED_OPTIMIZING - For a storage * capacity increase update, Amazon FSx has updated the file system with the new * storage capacity, and is now performing the storage optimization process. For * more information, see Managing * Storage Capacity.

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

Describes the target StorageCapacity or * ThroughputCapacity value provided in the * UpdateFileSystem operation. Returned for * FILE_SYSTEM_UPDATE administrative actions.

*/ inline const FileSystem& GetTargetFileSystemValues() const{ return m_targetFileSystemValues; } /** *

Describes the target StorageCapacity or * ThroughputCapacity value provided in the * UpdateFileSystem operation. Returned for * FILE_SYSTEM_UPDATE administrative actions.

*/ inline bool TargetFileSystemValuesHasBeenSet() const { return m_targetFileSystemValuesHasBeenSet; } /** *

Describes the target StorageCapacity or * ThroughputCapacity value provided in the * UpdateFileSystem operation. Returned for * FILE_SYSTEM_UPDATE administrative actions.

*/ inline void SetTargetFileSystemValues(const FileSystem& value) { m_targetFileSystemValuesHasBeenSet = true; m_targetFileSystemValues = value; } /** *

Describes the target StorageCapacity or * ThroughputCapacity value provided in the * UpdateFileSystem operation. Returned for * FILE_SYSTEM_UPDATE administrative actions.

*/ inline void SetTargetFileSystemValues(FileSystem&& value) { m_targetFileSystemValuesHasBeenSet = true; m_targetFileSystemValues = std::move(value); } /** *

Describes the target StorageCapacity or * ThroughputCapacity value provided in the * UpdateFileSystem operation. Returned for * FILE_SYSTEM_UPDATE administrative actions.

*/ inline AdministrativeAction& WithTargetFileSystemValues(const FileSystem& value) { SetTargetFileSystemValues(value); return *this;} /** *

Describes the target StorageCapacity or * ThroughputCapacity value provided in the * UpdateFileSystem operation. Returned for * FILE_SYSTEM_UPDATE administrative actions.

*/ inline AdministrativeAction& WithTargetFileSystemValues(FileSystem&& value) { SetTargetFileSystemValues(std::move(value)); return *this;} inline const AdministrativeActionFailureDetails& GetFailureDetails() const{ return m_failureDetails; } inline bool FailureDetailsHasBeenSet() const { return m_failureDetailsHasBeenSet; } inline void SetFailureDetails(const AdministrativeActionFailureDetails& value) { m_failureDetailsHasBeenSet = true; m_failureDetails = value; } inline void SetFailureDetails(AdministrativeActionFailureDetails&& value) { m_failureDetailsHasBeenSet = true; m_failureDetails = std::move(value); } inline AdministrativeAction& WithFailureDetails(const AdministrativeActionFailureDetails& value) { SetFailureDetails(value); return *this;} inline AdministrativeAction& WithFailureDetails(AdministrativeActionFailureDetails&& value) { SetFailureDetails(std::move(value)); return *this;} private: AdministrativeActionType m_administrativeActionType; bool m_administrativeActionTypeHasBeenSet; int m_progressPercent; bool m_progressPercentHasBeenSet; Aws::Utils::DateTime m_requestTime; bool m_requestTimeHasBeenSet; Status m_status; bool m_statusHasBeenSet; FileSystem m_targetFileSystemValues; bool m_targetFileSystemValuesHasBeenSet; AdministrativeActionFailureDetails m_failureDetails; bool m_failureDetailsHasBeenSet; }; } // namespace Model } // namespace FSx } // namespace Aws