/** * 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 ElasticsearchService { namespace Model { /** *

The progress details of a specific domain configuration change.

See * Also:

AWS * API Reference

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

The unique change identifier associated with a specific domain configuration * change.

*/ inline const Aws::String& GetChangeId() const{ return m_changeId; } /** *

The unique change identifier associated with a specific domain configuration * change.

*/ inline bool ChangeIdHasBeenSet() const { return m_changeIdHasBeenSet; } /** *

The unique change identifier associated with a specific domain configuration * change.

*/ inline void SetChangeId(const Aws::String& value) { m_changeIdHasBeenSet = true; m_changeId = value; } /** *

The unique change identifier associated with a specific domain configuration * change.

*/ inline void SetChangeId(Aws::String&& value) { m_changeIdHasBeenSet = true; m_changeId = std::move(value); } /** *

The unique change identifier associated with a specific domain configuration * change.

*/ inline void SetChangeId(const char* value) { m_changeIdHasBeenSet = true; m_changeId.assign(value); } /** *

The unique change identifier associated with a specific domain configuration * change.

*/ inline ChangeProgressStatusDetails& WithChangeId(const Aws::String& value) { SetChangeId(value); return *this;} /** *

The unique change identifier associated with a specific domain configuration * change.

*/ inline ChangeProgressStatusDetails& WithChangeId(Aws::String&& value) { SetChangeId(std::move(value)); return *this;} /** *

The unique change identifier associated with a specific domain configuration * change.

*/ inline ChangeProgressStatusDetails& WithChangeId(const char* value) { SetChangeId(value); return *this;} /** *

The time at which the configuration change is made on the domain.

*/ inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } /** *

The time at which the configuration change is made on the domain.

*/ inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } /** *

The time at which the configuration change is made on the domain.

*/ inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; } /** *

The time at which the configuration change is made on the domain.

*/ inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } /** *

The time at which the configuration change is made on the domain.

*/ inline ChangeProgressStatusDetails& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} /** *

The time at which the configuration change is made on the domain.

*/ inline ChangeProgressStatusDetails& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} /** *

The overall status of the domain configuration change. This field can take * the following values: PENDING, PROCESSING, * COMPLETED and FAILED

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

The overall status of the domain configuration change. This field can take * the following values: PENDING, PROCESSING, * COMPLETED and FAILED

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

The overall status of the domain configuration change. This field can take * the following values: PENDING, PROCESSING, * COMPLETED and FAILED

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

The overall status of the domain configuration change. This field can take * the following values: PENDING, PROCESSING, * COMPLETED and FAILED

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

The overall status of the domain configuration change. This field can take * the following values: PENDING, PROCESSING, * COMPLETED and FAILED

*/ inline ChangeProgressStatusDetails& WithStatus(const OverallChangeStatus& value) { SetStatus(value); return *this;} /** *

The overall status of the domain configuration change. This field can take * the following values: PENDING, PROCESSING, * COMPLETED and FAILED

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

The list of properties involved in the domain configuration change that are * still in pending.

*/ inline const Aws::Vector& GetPendingProperties() const{ return m_pendingProperties; } /** *

The list of properties involved in the domain configuration change that are * still in pending.

*/ inline bool PendingPropertiesHasBeenSet() const { return m_pendingPropertiesHasBeenSet; } /** *

The list of properties involved in the domain configuration change that are * still in pending.

*/ inline void SetPendingProperties(const Aws::Vector& value) { m_pendingPropertiesHasBeenSet = true; m_pendingProperties = value; } /** *

The list of properties involved in the domain configuration change that are * still in pending.

*/ inline void SetPendingProperties(Aws::Vector&& value) { m_pendingPropertiesHasBeenSet = true; m_pendingProperties = std::move(value); } /** *

The list of properties involved in the domain configuration change that are * still in pending.

*/ inline ChangeProgressStatusDetails& WithPendingProperties(const Aws::Vector& value) { SetPendingProperties(value); return *this;} /** *

The list of properties involved in the domain configuration change that are * still in pending.

*/ inline ChangeProgressStatusDetails& WithPendingProperties(Aws::Vector&& value) { SetPendingProperties(std::move(value)); return *this;} /** *

The list of properties involved in the domain configuration change that are * still in pending.

*/ inline ChangeProgressStatusDetails& AddPendingProperties(const Aws::String& value) { m_pendingPropertiesHasBeenSet = true; m_pendingProperties.push_back(value); return *this; } /** *

The list of properties involved in the domain configuration change that are * still in pending.

*/ inline ChangeProgressStatusDetails& AddPendingProperties(Aws::String&& value) { m_pendingPropertiesHasBeenSet = true; m_pendingProperties.push_back(std::move(value)); return *this; } /** *

The list of properties involved in the domain configuration change that are * still in pending.

*/ inline ChangeProgressStatusDetails& AddPendingProperties(const char* value) { m_pendingPropertiesHasBeenSet = true; m_pendingProperties.push_back(value); return *this; } /** *

The list of properties involved in the domain configuration change that are * completed.

*/ inline const Aws::Vector& GetCompletedProperties() const{ return m_completedProperties; } /** *

The list of properties involved in the domain configuration change that are * completed.

*/ inline bool CompletedPropertiesHasBeenSet() const { return m_completedPropertiesHasBeenSet; } /** *

The list of properties involved in the domain configuration change that are * completed.

*/ inline void SetCompletedProperties(const Aws::Vector& value) { m_completedPropertiesHasBeenSet = true; m_completedProperties = value; } /** *

The list of properties involved in the domain configuration change that are * completed.

*/ inline void SetCompletedProperties(Aws::Vector&& value) { m_completedPropertiesHasBeenSet = true; m_completedProperties = std::move(value); } /** *

The list of properties involved in the domain configuration change that are * completed.

*/ inline ChangeProgressStatusDetails& WithCompletedProperties(const Aws::Vector& value) { SetCompletedProperties(value); return *this;} /** *

The list of properties involved in the domain configuration change that are * completed.

*/ inline ChangeProgressStatusDetails& WithCompletedProperties(Aws::Vector&& value) { SetCompletedProperties(std::move(value)); return *this;} /** *

The list of properties involved in the domain configuration change that are * completed.

*/ inline ChangeProgressStatusDetails& AddCompletedProperties(const Aws::String& value) { m_completedPropertiesHasBeenSet = true; m_completedProperties.push_back(value); return *this; } /** *

The list of properties involved in the domain configuration change that are * completed.

*/ inline ChangeProgressStatusDetails& AddCompletedProperties(Aws::String&& value) { m_completedPropertiesHasBeenSet = true; m_completedProperties.push_back(std::move(value)); return *this; } /** *

The list of properties involved in the domain configuration change that are * completed.

*/ inline ChangeProgressStatusDetails& AddCompletedProperties(const char* value) { m_completedPropertiesHasBeenSet = true; m_completedProperties.push_back(value); return *this; } /** *

The total number of stages required for the configuration change.

*/ inline int GetTotalNumberOfStages() const{ return m_totalNumberOfStages; } /** *

The total number of stages required for the configuration change.

*/ inline bool TotalNumberOfStagesHasBeenSet() const { return m_totalNumberOfStagesHasBeenSet; } /** *

The total number of stages required for the configuration change.

*/ inline void SetTotalNumberOfStages(int value) { m_totalNumberOfStagesHasBeenSet = true; m_totalNumberOfStages = value; } /** *

The total number of stages required for the configuration change.

*/ inline ChangeProgressStatusDetails& WithTotalNumberOfStages(int value) { SetTotalNumberOfStages(value); return *this;} /** *

The specific stages that the domain is going through to perform the * configuration change.

*/ inline const Aws::Vector& GetChangeProgressStages() const{ return m_changeProgressStages; } /** *

The specific stages that the domain is going through to perform the * configuration change.

*/ inline bool ChangeProgressStagesHasBeenSet() const { return m_changeProgressStagesHasBeenSet; } /** *

The specific stages that the domain is going through to perform the * configuration change.

*/ inline void SetChangeProgressStages(const Aws::Vector& value) { m_changeProgressStagesHasBeenSet = true; m_changeProgressStages = value; } /** *

The specific stages that the domain is going through to perform the * configuration change.

*/ inline void SetChangeProgressStages(Aws::Vector&& value) { m_changeProgressStagesHasBeenSet = true; m_changeProgressStages = std::move(value); } /** *

The specific stages that the domain is going through to perform the * configuration change.

*/ inline ChangeProgressStatusDetails& WithChangeProgressStages(const Aws::Vector& value) { SetChangeProgressStages(value); return *this;} /** *

The specific stages that the domain is going through to perform the * configuration change.

*/ inline ChangeProgressStatusDetails& WithChangeProgressStages(Aws::Vector&& value) { SetChangeProgressStages(std::move(value)); return *this;} /** *

The specific stages that the domain is going through to perform the * configuration change.

*/ inline ChangeProgressStatusDetails& AddChangeProgressStages(const ChangeProgressStage& value) { m_changeProgressStagesHasBeenSet = true; m_changeProgressStages.push_back(value); return *this; } /** *

The specific stages that the domain is going through to perform the * configuration change.

*/ inline ChangeProgressStatusDetails& AddChangeProgressStages(ChangeProgressStage&& value) { m_changeProgressStagesHasBeenSet = true; m_changeProgressStages.push_back(std::move(value)); return *this; } private: Aws::String m_changeId; bool m_changeIdHasBeenSet = false; Aws::Utils::DateTime m_startTime; bool m_startTimeHasBeenSet = false; OverallChangeStatus m_status; bool m_statusHasBeenSet = false; Aws::Vector m_pendingProperties; bool m_pendingPropertiesHasBeenSet = false; Aws::Vector m_completedProperties; bool m_completedPropertiesHasBeenSet = false; int m_totalNumberOfStages; bool m_totalNumberOfStagesHasBeenSet = false; Aws::Vector m_changeProgressStages; bool m_changeProgressStagesHasBeenSet = false; }; } // namespace Model } // namespace ElasticsearchService } // namespace Aws