/** * 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 mgn { namespace Model { class Application { public: AWS_MGN_API Application(); AWS_MGN_API Application(Aws::Utils::Json::JsonView jsonValue); AWS_MGN_API Application& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_MGN_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Application aggregated status.

*/ inline const ApplicationAggregatedStatus& GetApplicationAggregatedStatus() const{ return m_applicationAggregatedStatus; } /** *

Application aggregated status.

*/ inline bool ApplicationAggregatedStatusHasBeenSet() const { return m_applicationAggregatedStatusHasBeenSet; } /** *

Application aggregated status.

*/ inline void SetApplicationAggregatedStatus(const ApplicationAggregatedStatus& value) { m_applicationAggregatedStatusHasBeenSet = true; m_applicationAggregatedStatus = value; } /** *

Application aggregated status.

*/ inline void SetApplicationAggregatedStatus(ApplicationAggregatedStatus&& value) { m_applicationAggregatedStatusHasBeenSet = true; m_applicationAggregatedStatus = std::move(value); } /** *

Application aggregated status.

*/ inline Application& WithApplicationAggregatedStatus(const ApplicationAggregatedStatus& value) { SetApplicationAggregatedStatus(value); return *this;} /** *

Application aggregated status.

*/ inline Application& WithApplicationAggregatedStatus(ApplicationAggregatedStatus&& value) { SetApplicationAggregatedStatus(std::move(value)); return *this;} /** *

Application ID.

*/ inline const Aws::String& GetApplicationID() const{ return m_applicationID; } /** *

Application ID.

*/ inline bool ApplicationIDHasBeenSet() const { return m_applicationIDHasBeenSet; } /** *

Application ID.

*/ inline void SetApplicationID(const Aws::String& value) { m_applicationIDHasBeenSet = true; m_applicationID = value; } /** *

Application ID.

*/ inline void SetApplicationID(Aws::String&& value) { m_applicationIDHasBeenSet = true; m_applicationID = std::move(value); } /** *

Application ID.

*/ inline void SetApplicationID(const char* value) { m_applicationIDHasBeenSet = true; m_applicationID.assign(value); } /** *

Application ID.

*/ inline Application& WithApplicationID(const Aws::String& value) { SetApplicationID(value); return *this;} /** *

Application ID.

*/ inline Application& WithApplicationID(Aws::String&& value) { SetApplicationID(std::move(value)); return *this;} /** *

Application ID.

*/ inline Application& WithApplicationID(const char* value) { SetApplicationID(value); return *this;} /** *

Application ARN.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

Application ARN.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

Application ARN.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

Application ARN.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

Application ARN.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

Application ARN.

*/ inline Application& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

Application ARN.

*/ inline Application& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

Application ARN.

*/ inline Application& WithArn(const char* value) { SetArn(value); return *this;} /** *

Application creation dateTime.

*/ inline const Aws::String& GetCreationDateTime() const{ return m_creationDateTime; } /** *

Application creation dateTime.

*/ inline bool CreationDateTimeHasBeenSet() const { return m_creationDateTimeHasBeenSet; } /** *

Application creation dateTime.

*/ inline void SetCreationDateTime(const Aws::String& value) { m_creationDateTimeHasBeenSet = true; m_creationDateTime = value; } /** *

Application creation dateTime.

*/ inline void SetCreationDateTime(Aws::String&& value) { m_creationDateTimeHasBeenSet = true; m_creationDateTime = std::move(value); } /** *

Application creation dateTime.

*/ inline void SetCreationDateTime(const char* value) { m_creationDateTimeHasBeenSet = true; m_creationDateTime.assign(value); } /** *

Application creation dateTime.

*/ inline Application& WithCreationDateTime(const Aws::String& value) { SetCreationDateTime(value); return *this;} /** *

Application creation dateTime.

*/ inline Application& WithCreationDateTime(Aws::String&& value) { SetCreationDateTime(std::move(value)); return *this;} /** *

Application creation dateTime.

*/ inline Application& WithCreationDateTime(const char* value) { SetCreationDateTime(value); return *this;} /** *

Application description.

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

Application description.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

Application description.

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

Application description.

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

Application description.

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

Application description.

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

Application description.

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

Application description.

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

Application archival status.

*/ inline bool GetIsArchived() const{ return m_isArchived; } /** *

Application archival status.

*/ inline bool IsArchivedHasBeenSet() const { return m_isArchivedHasBeenSet; } /** *

Application archival status.

*/ inline void SetIsArchived(bool value) { m_isArchivedHasBeenSet = true; m_isArchived = value; } /** *

Application archival status.

*/ inline Application& WithIsArchived(bool value) { SetIsArchived(value); return *this;} /** *

Application last modified dateTime.

*/ inline const Aws::String& GetLastModifiedDateTime() const{ return m_lastModifiedDateTime; } /** *

Application last modified dateTime.

*/ inline bool LastModifiedDateTimeHasBeenSet() const { return m_lastModifiedDateTimeHasBeenSet; } /** *

Application last modified dateTime.

*/ inline void SetLastModifiedDateTime(const Aws::String& value) { m_lastModifiedDateTimeHasBeenSet = true; m_lastModifiedDateTime = value; } /** *

Application last modified dateTime.

*/ inline void SetLastModifiedDateTime(Aws::String&& value) { m_lastModifiedDateTimeHasBeenSet = true; m_lastModifiedDateTime = std::move(value); } /** *

Application last modified dateTime.

*/ inline void SetLastModifiedDateTime(const char* value) { m_lastModifiedDateTimeHasBeenSet = true; m_lastModifiedDateTime.assign(value); } /** *

Application last modified dateTime.

*/ inline Application& WithLastModifiedDateTime(const Aws::String& value) { SetLastModifiedDateTime(value); return *this;} /** *

Application last modified dateTime.

*/ inline Application& WithLastModifiedDateTime(Aws::String&& value) { SetLastModifiedDateTime(std::move(value)); return *this;} /** *

Application last modified dateTime.

*/ inline Application& WithLastModifiedDateTime(const char* value) { SetLastModifiedDateTime(value); return *this;} /** *

Application name.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

Application name.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

Application name.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

Application name.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

Application name.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

Application name.

*/ inline Application& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

Application name.

*/ inline Application& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

Application name.

*/ inline Application& WithName(const char* value) { SetName(value); return *this;} /** *

Application tags.

*/ inline const Aws::Map& GetTags() const{ return m_tags; } /** *

Application tags.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

Application tags.

*/ inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

Application tags.

*/ inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

Application tags.

*/ inline Application& WithTags(const Aws::Map& value) { SetTags(value); return *this;} /** *

Application tags.

*/ inline Application& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} /** *

Application tags.

*/ inline Application& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *

Application tags.

*/ inline Application& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *

Application tags.

*/ inline Application& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *

Application tags.

*/ inline Application& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *

Application tags.

*/ inline Application& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *

Application tags.

*/ inline Application& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *

Application tags.

*/ inline Application& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *

Application wave ID.

*/ inline const Aws::String& GetWaveID() const{ return m_waveID; } /** *

Application wave ID.

*/ inline bool WaveIDHasBeenSet() const { return m_waveIDHasBeenSet; } /** *

Application wave ID.

*/ inline void SetWaveID(const Aws::String& value) { m_waveIDHasBeenSet = true; m_waveID = value; } /** *

Application wave ID.

*/ inline void SetWaveID(Aws::String&& value) { m_waveIDHasBeenSet = true; m_waveID = std::move(value); } /** *

Application wave ID.

*/ inline void SetWaveID(const char* value) { m_waveIDHasBeenSet = true; m_waveID.assign(value); } /** *

Application wave ID.

*/ inline Application& WithWaveID(const Aws::String& value) { SetWaveID(value); return *this;} /** *

Application wave ID.

*/ inline Application& WithWaveID(Aws::String&& value) { SetWaveID(std::move(value)); return *this;} /** *

Application wave ID.

*/ inline Application& WithWaveID(const char* value) { SetWaveID(value); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; } inline void SetRequestId(const Aws::String& value) { m_requestIdHasBeenSet = true; m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestIdHasBeenSet = true; m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestIdHasBeenSet = true; m_requestId.assign(value); } inline Application& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline Application& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline Application& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: ApplicationAggregatedStatus m_applicationAggregatedStatus; bool m_applicationAggregatedStatusHasBeenSet = false; Aws::String m_applicationID; bool m_applicationIDHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_creationDateTime; bool m_creationDateTimeHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; bool m_isArchived; bool m_isArchivedHasBeenSet = false; Aws::String m_lastModifiedDateTime; bool m_lastModifiedDateTimeHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::Map m_tags; bool m_tagsHasBeenSet = false; Aws::String m_waveID; bool m_waveIDHasBeenSet = false; Aws::String m_requestId; bool m_requestIdHasBeenSet = false; }; } // namespace Model } // namespace mgn } // namespace Aws