/** * 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 { /** *

History of the last 10 Upgrades and Upgrade Eligibility Checks.

See * Also:

AWS * API Reference

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

A string that describes the update briefly

*/ inline const Aws::String& GetUpgradeName() const{ return m_upgradeName; } /** *

A string that describes the update briefly

*/ inline bool UpgradeNameHasBeenSet() const { return m_upgradeNameHasBeenSet; } /** *

A string that describes the update briefly

*/ inline void SetUpgradeName(const Aws::String& value) { m_upgradeNameHasBeenSet = true; m_upgradeName = value; } /** *

A string that describes the update briefly

*/ inline void SetUpgradeName(Aws::String&& value) { m_upgradeNameHasBeenSet = true; m_upgradeName = std::move(value); } /** *

A string that describes the update briefly

*/ inline void SetUpgradeName(const char* value) { m_upgradeNameHasBeenSet = true; m_upgradeName.assign(value); } /** *

A string that describes the update briefly

*/ inline UpgradeHistory& WithUpgradeName(const Aws::String& value) { SetUpgradeName(value); return *this;} /** *

A string that describes the update briefly

*/ inline UpgradeHistory& WithUpgradeName(Aws::String&& value) { SetUpgradeName(std::move(value)); return *this;} /** *

A string that describes the update briefly

*/ inline UpgradeHistory& WithUpgradeName(const char* value) { SetUpgradeName(value); return *this;} /** *

UTC Timestamp at which the Upgrade API call was made in * "yyyy-MM-ddTHH:mm:ssZ" format.

*/ inline const Aws::Utils::DateTime& GetStartTimestamp() const{ return m_startTimestamp; } /** *

UTC Timestamp at which the Upgrade API call was made in * "yyyy-MM-ddTHH:mm:ssZ" format.

*/ inline bool StartTimestampHasBeenSet() const { return m_startTimestampHasBeenSet; } /** *

UTC Timestamp at which the Upgrade API call was made in * "yyyy-MM-ddTHH:mm:ssZ" format.

*/ inline void SetStartTimestamp(const Aws::Utils::DateTime& value) { m_startTimestampHasBeenSet = true; m_startTimestamp = value; } /** *

UTC Timestamp at which the Upgrade API call was made in * "yyyy-MM-ddTHH:mm:ssZ" format.

*/ inline void SetStartTimestamp(Aws::Utils::DateTime&& value) { m_startTimestampHasBeenSet = true; m_startTimestamp = std::move(value); } /** *

UTC Timestamp at which the Upgrade API call was made in * "yyyy-MM-ddTHH:mm:ssZ" format.

*/ inline UpgradeHistory& WithStartTimestamp(const Aws::Utils::DateTime& value) { SetStartTimestamp(value); return *this;} /** *

UTC Timestamp at which the Upgrade API call was made in * "yyyy-MM-ddTHH:mm:ssZ" format.

*/ inline UpgradeHistory& WithStartTimestamp(Aws::Utils::DateTime&& value) { SetStartTimestamp(std::move(value)); return *this;} /** *

The overall status of the update. The status can take one of the following * values:

  • In Progress
  • Succeeded
  • Succeeded with * Issues
  • Failed

*/ inline const UpgradeStatus& GetUpgradeStatus() const{ return m_upgradeStatus; } /** *

The overall status of the update. The status can take one of the following * values:

  • In Progress
  • Succeeded
  • Succeeded with * Issues
  • Failed

*/ inline bool UpgradeStatusHasBeenSet() const { return m_upgradeStatusHasBeenSet; } /** *

The overall status of the update. The status can take one of the following * values:

  • In Progress
  • Succeeded
  • Succeeded with * Issues
  • Failed

*/ inline void SetUpgradeStatus(const UpgradeStatus& value) { m_upgradeStatusHasBeenSet = true; m_upgradeStatus = value; } /** *

The overall status of the update. The status can take one of the following * values:

  • In Progress
  • Succeeded
  • Succeeded with * Issues
  • Failed

*/ inline void SetUpgradeStatus(UpgradeStatus&& value) { m_upgradeStatusHasBeenSet = true; m_upgradeStatus = std::move(value); } /** *

The overall status of the update. The status can take one of the following * values:

  • In Progress
  • Succeeded
  • Succeeded with * Issues
  • Failed

*/ inline UpgradeHistory& WithUpgradeStatus(const UpgradeStatus& value) { SetUpgradeStatus(value); return *this;} /** *

The overall status of the update. The status can take one of the following * values:

  • In Progress
  • Succeeded
  • Succeeded with * Issues
  • Failed

*/ inline UpgradeHistory& WithUpgradeStatus(UpgradeStatus&& value) { SetUpgradeStatus(std::move(value)); return *this;} /** *

A list of UpgradeStepItem s representing information * about each step performed as pard of a specific Upgrade or Upgrade Eligibility * Check.

*/ inline const Aws::Vector& GetStepsList() const{ return m_stepsList; } /** *

A list of UpgradeStepItem s representing information * about each step performed as pard of a specific Upgrade or Upgrade Eligibility * Check.

*/ inline bool StepsListHasBeenSet() const { return m_stepsListHasBeenSet; } /** *

A list of UpgradeStepItem s representing information * about each step performed as pard of a specific Upgrade or Upgrade Eligibility * Check.

*/ inline void SetStepsList(const Aws::Vector& value) { m_stepsListHasBeenSet = true; m_stepsList = value; } /** *

A list of UpgradeStepItem s representing information * about each step performed as pard of a specific Upgrade or Upgrade Eligibility * Check.

*/ inline void SetStepsList(Aws::Vector&& value) { m_stepsListHasBeenSet = true; m_stepsList = std::move(value); } /** *

A list of UpgradeStepItem s representing information * about each step performed as pard of a specific Upgrade or Upgrade Eligibility * Check.

*/ inline UpgradeHistory& WithStepsList(const Aws::Vector& value) { SetStepsList(value); return *this;} /** *

A list of UpgradeStepItem s representing information * about each step performed as pard of a specific Upgrade or Upgrade Eligibility * Check.

*/ inline UpgradeHistory& WithStepsList(Aws::Vector&& value) { SetStepsList(std::move(value)); return *this;} /** *

A list of UpgradeStepItem s representing information * about each step performed as pard of a specific Upgrade or Upgrade Eligibility * Check.

*/ inline UpgradeHistory& AddStepsList(const UpgradeStepItem& value) { m_stepsListHasBeenSet = true; m_stepsList.push_back(value); return *this; } /** *

A list of UpgradeStepItem s representing information * about each step performed as pard of a specific Upgrade or Upgrade Eligibility * Check.

*/ inline UpgradeHistory& AddStepsList(UpgradeStepItem&& value) { m_stepsListHasBeenSet = true; m_stepsList.push_back(std::move(value)); return *this; } private: Aws::String m_upgradeName; bool m_upgradeNameHasBeenSet = false; Aws::Utils::DateTime m_startTimestamp; bool m_startTimestampHasBeenSet = false; UpgradeStatus m_upgradeStatus; bool m_upgradeStatusHasBeenSet = false; Aws::Vector m_stepsList; bool m_stepsListHasBeenSet = false; }; } // namespace Model } // namespace ElasticsearchService } // namespace Aws