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

A combination of existing analysis statuses.

See Also:

AWS * API Reference

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

The status of the analysis.

*/ inline const RuntimeAnalysisStatus& GetRuntimeAnalysisStatus() const{ return m_runtimeAnalysisStatus; } /** *

The status of the analysis.

*/ inline bool RuntimeAnalysisStatusHasBeenSet() const { return m_runtimeAnalysisStatusHasBeenSet; } /** *

The status of the analysis.

*/ inline void SetRuntimeAnalysisStatus(const RuntimeAnalysisStatus& value) { m_runtimeAnalysisStatusHasBeenSet = true; m_runtimeAnalysisStatus = value; } /** *

The status of the analysis.

*/ inline void SetRuntimeAnalysisStatus(RuntimeAnalysisStatus&& value) { m_runtimeAnalysisStatusHasBeenSet = true; m_runtimeAnalysisStatus = std::move(value); } /** *

The status of the analysis.

*/ inline AnalysisStatusUnion& WithRuntimeAnalysisStatus(const RuntimeAnalysisStatus& value) { SetRuntimeAnalysisStatus(value); return *this;} /** *

The status of the analysis.

*/ inline AnalysisStatusUnion& WithRuntimeAnalysisStatus(RuntimeAnalysisStatus&& value) { SetRuntimeAnalysisStatus(std::move(value)); return *this;} /** *

The status of the source code or database analysis.

*/ inline const SrcCodeOrDbAnalysisStatus& GetSrcCodeOrDbAnalysisStatus() const{ return m_srcCodeOrDbAnalysisStatus; } /** *

The status of the source code or database analysis.

*/ inline bool SrcCodeOrDbAnalysisStatusHasBeenSet() const { return m_srcCodeOrDbAnalysisStatusHasBeenSet; } /** *

The status of the source code or database analysis.

*/ inline void SetSrcCodeOrDbAnalysisStatus(const SrcCodeOrDbAnalysisStatus& value) { m_srcCodeOrDbAnalysisStatusHasBeenSet = true; m_srcCodeOrDbAnalysisStatus = value; } /** *

The status of the source code or database analysis.

*/ inline void SetSrcCodeOrDbAnalysisStatus(SrcCodeOrDbAnalysisStatus&& value) { m_srcCodeOrDbAnalysisStatusHasBeenSet = true; m_srcCodeOrDbAnalysisStatus = std::move(value); } /** *

The status of the source code or database analysis.

*/ inline AnalysisStatusUnion& WithSrcCodeOrDbAnalysisStatus(const SrcCodeOrDbAnalysisStatus& value) { SetSrcCodeOrDbAnalysisStatus(value); return *this;} /** *

The status of the source code or database analysis.

*/ inline AnalysisStatusUnion& WithSrcCodeOrDbAnalysisStatus(SrcCodeOrDbAnalysisStatus&& value) { SetSrcCodeOrDbAnalysisStatus(std::move(value)); return *this;} private: RuntimeAnalysisStatus m_runtimeAnalysisStatus; bool m_runtimeAnalysisStatusHasBeenSet = false; SrcCodeOrDbAnalysisStatus m_srcCodeOrDbAnalysisStatus; bool m_srcCodeOrDbAnalysisStatusHasBeenSet = false; }; } // namespace Model } // namespace MigrationHubStrategyRecommendations } // namespace Aws