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

The combination of the existing analyzers.

See Also:

AWS * API Reference

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

The binary analyzer names.

*/ inline const BinaryAnalyzerName& GetBinaryAnalyzerName() const{ return m_binaryAnalyzerName; } /** *

The binary analyzer names.

*/ inline bool BinaryAnalyzerNameHasBeenSet() const { return m_binaryAnalyzerNameHasBeenSet; } /** *

The binary analyzer names.

*/ inline void SetBinaryAnalyzerName(const BinaryAnalyzerName& value) { m_binaryAnalyzerNameHasBeenSet = true; m_binaryAnalyzerName = value; } /** *

The binary analyzer names.

*/ inline void SetBinaryAnalyzerName(BinaryAnalyzerName&& value) { m_binaryAnalyzerNameHasBeenSet = true; m_binaryAnalyzerName = std::move(value); } /** *

The binary analyzer names.

*/ inline AnalyzerNameUnion& WithBinaryAnalyzerName(const BinaryAnalyzerName& value) { SetBinaryAnalyzerName(value); return *this;} /** *

The binary analyzer names.

*/ inline AnalyzerNameUnion& WithBinaryAnalyzerName(BinaryAnalyzerName&& value) { SetBinaryAnalyzerName(std::move(value)); return *this;} /** *

The assessment analyzer names.

*/ inline const RunTimeAnalyzerName& GetRunTimeAnalyzerName() const{ return m_runTimeAnalyzerName; } /** *

The assessment analyzer names.

*/ inline bool RunTimeAnalyzerNameHasBeenSet() const { return m_runTimeAnalyzerNameHasBeenSet; } /** *

The assessment analyzer names.

*/ inline void SetRunTimeAnalyzerName(const RunTimeAnalyzerName& value) { m_runTimeAnalyzerNameHasBeenSet = true; m_runTimeAnalyzerName = value; } /** *

The assessment analyzer names.

*/ inline void SetRunTimeAnalyzerName(RunTimeAnalyzerName&& value) { m_runTimeAnalyzerNameHasBeenSet = true; m_runTimeAnalyzerName = std::move(value); } /** *

The assessment analyzer names.

*/ inline AnalyzerNameUnion& WithRunTimeAnalyzerName(const RunTimeAnalyzerName& value) { SetRunTimeAnalyzerName(value); return *this;} /** *

The assessment analyzer names.

*/ inline AnalyzerNameUnion& WithRunTimeAnalyzerName(RunTimeAnalyzerName&& value) { SetRunTimeAnalyzerName(std::move(value)); return *this;} /** *

The source code analyzer names.

*/ inline const SourceCodeAnalyzerName& GetSourceCodeAnalyzerName() const{ return m_sourceCodeAnalyzerName; } /** *

The source code analyzer names.

*/ inline bool SourceCodeAnalyzerNameHasBeenSet() const { return m_sourceCodeAnalyzerNameHasBeenSet; } /** *

The source code analyzer names.

*/ inline void SetSourceCodeAnalyzerName(const SourceCodeAnalyzerName& value) { m_sourceCodeAnalyzerNameHasBeenSet = true; m_sourceCodeAnalyzerName = value; } /** *

The source code analyzer names.

*/ inline void SetSourceCodeAnalyzerName(SourceCodeAnalyzerName&& value) { m_sourceCodeAnalyzerNameHasBeenSet = true; m_sourceCodeAnalyzerName = std::move(value); } /** *

The source code analyzer names.

*/ inline AnalyzerNameUnion& WithSourceCodeAnalyzerName(const SourceCodeAnalyzerName& value) { SetSourceCodeAnalyzerName(value); return *this;} /** *

The source code analyzer names.

*/ inline AnalyzerNameUnion& WithSourceCodeAnalyzerName(SourceCodeAnalyzerName&& value) { SetSourceCodeAnalyzerName(std::move(value)); return *this;} private: BinaryAnalyzerName m_binaryAnalyzerName; bool m_binaryAnalyzerNameHasBeenSet = false; RunTimeAnalyzerName m_runTimeAnalyzerName; bool m_runTimeAnalyzerNameHasBeenSet = false; SourceCodeAnalyzerName m_sourceCodeAnalyzerName; bool m_sourceCodeAnalyzerNameHasBeenSet = false; }; } // namespace Model } // namespace MigrationHubStrategyRecommendations } // namespace Aws