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

Provides the current status of the Auto-Tune options.

See * Also:

AWS * API Reference

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

Timestamp which tells Auto-Tune options creation date .

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

Timestamp which tells Auto-Tune options creation date .

*/ inline bool CreationDateHasBeenSet() const { return m_creationDateHasBeenSet; } /** *

Timestamp which tells Auto-Tune options creation date .

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

Timestamp which tells Auto-Tune options creation date .

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

Timestamp which tells Auto-Tune options creation date .

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

Timestamp which tells Auto-Tune options creation date .

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

Timestamp which tells Auto-Tune options last updated time.

*/ inline const Aws::Utils::DateTime& GetUpdateDate() const{ return m_updateDate; } /** *

Timestamp which tells Auto-Tune options last updated time.

*/ inline bool UpdateDateHasBeenSet() const { return m_updateDateHasBeenSet; } /** *

Timestamp which tells Auto-Tune options last updated time.

*/ inline void SetUpdateDate(const Aws::Utils::DateTime& value) { m_updateDateHasBeenSet = true; m_updateDate = value; } /** *

Timestamp which tells Auto-Tune options last updated time.

*/ inline void SetUpdateDate(Aws::Utils::DateTime&& value) { m_updateDateHasBeenSet = true; m_updateDate = std::move(value); } /** *

Timestamp which tells Auto-Tune options last updated time.

*/ inline AutoTuneStatus& WithUpdateDate(const Aws::Utils::DateTime& value) { SetUpdateDate(value); return *this;} /** *

Timestamp which tells Auto-Tune options last updated time.

*/ inline AutoTuneStatus& WithUpdateDate(Aws::Utils::DateTime&& value) { SetUpdateDate(std::move(value)); return *this;} /** *

Specifies the Auto-Tune options latest version.

*/ inline int GetUpdateVersion() const{ return m_updateVersion; } /** *

Specifies the Auto-Tune options latest version.

*/ inline bool UpdateVersionHasBeenSet() const { return m_updateVersionHasBeenSet; } /** *

Specifies the Auto-Tune options latest version.

*/ inline void SetUpdateVersion(int value) { m_updateVersionHasBeenSet = true; m_updateVersion = value; } /** *

Specifies the Auto-Tune options latest version.

*/ inline AutoTuneStatus& WithUpdateVersion(int value) { SetUpdateVersion(value); return *this;} /** *

Specifies the AutoTuneState for the Elasticsearch domain.

*/ inline const AutoTuneState& GetState() const{ return m_state; } /** *

Specifies the AutoTuneState for the Elasticsearch domain.

*/ inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } /** *

Specifies the AutoTuneState for the Elasticsearch domain.

*/ inline void SetState(const AutoTuneState& value) { m_stateHasBeenSet = true; m_state = value; } /** *

Specifies the AutoTuneState for the Elasticsearch domain.

*/ inline void SetState(AutoTuneState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } /** *

Specifies the AutoTuneState for the Elasticsearch domain.

*/ inline AutoTuneStatus& WithState(const AutoTuneState& value) { SetState(value); return *this;} /** *

Specifies the AutoTuneState for the Elasticsearch domain.

*/ inline AutoTuneStatus& WithState(AutoTuneState&& value) { SetState(std::move(value)); return *this;} /** *

Specifies the error message while enabling or disabling the Auto-Tune * options.

*/ inline const Aws::String& GetErrorMessage() const{ return m_errorMessage; } /** *

Specifies the error message while enabling or disabling the Auto-Tune * options.

*/ inline bool ErrorMessageHasBeenSet() const { return m_errorMessageHasBeenSet; } /** *

Specifies the error message while enabling or disabling the Auto-Tune * options.

*/ inline void SetErrorMessage(const Aws::String& value) { m_errorMessageHasBeenSet = true; m_errorMessage = value; } /** *

Specifies the error message while enabling or disabling the Auto-Tune * options.

*/ inline void SetErrorMessage(Aws::String&& value) { m_errorMessageHasBeenSet = true; m_errorMessage = std::move(value); } /** *

Specifies the error message while enabling or disabling the Auto-Tune * options.

*/ inline void SetErrorMessage(const char* value) { m_errorMessageHasBeenSet = true; m_errorMessage.assign(value); } /** *

Specifies the error message while enabling or disabling the Auto-Tune * options.

*/ inline AutoTuneStatus& WithErrorMessage(const Aws::String& value) { SetErrorMessage(value); return *this;} /** *

Specifies the error message while enabling or disabling the Auto-Tune * options.

*/ inline AutoTuneStatus& WithErrorMessage(Aws::String&& value) { SetErrorMessage(std::move(value)); return *this;} /** *

Specifies the error message while enabling or disabling the Auto-Tune * options.

*/ inline AutoTuneStatus& WithErrorMessage(const char* value) { SetErrorMessage(value); return *this;} /** *

Indicates whether the Elasticsearch domain is being deleted.

*/ inline bool GetPendingDeletion() const{ return m_pendingDeletion; } /** *

Indicates whether the Elasticsearch domain is being deleted.

*/ inline bool PendingDeletionHasBeenSet() const { return m_pendingDeletionHasBeenSet; } /** *

Indicates whether the Elasticsearch domain is being deleted.

*/ inline void SetPendingDeletion(bool value) { m_pendingDeletionHasBeenSet = true; m_pendingDeletion = value; } /** *

Indicates whether the Elasticsearch domain is being deleted.

*/ inline AutoTuneStatus& WithPendingDeletion(bool value) { SetPendingDeletion(value); return *this;} private: Aws::Utils::DateTime m_creationDate; bool m_creationDateHasBeenSet = false; Aws::Utils::DateTime m_updateDate; bool m_updateDateHasBeenSet = false; int m_updateVersion; bool m_updateVersionHasBeenSet = false; AutoTuneState m_state; bool m_stateHasBeenSet = false; Aws::String m_errorMessage; bool m_errorMessageHasBeenSet = false; bool m_pendingDeletion; bool m_pendingDeletionHasBeenSet = false; }; } // namespace Model } // namespace ElasticsearchService } // namespace Aws