/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about all the available strategy options for migrating and
* modernizing an application component. See Also:
AWS
* API Reference
Indicates if a specific strategy is preferred for the application component. *
*/ inline bool GetIsPreferred() const{ return m_isPreferred; } /** *Indicates if a specific strategy is preferred for the application component. *
*/ inline bool IsPreferredHasBeenSet() const { return m_isPreferredHasBeenSet; } /** *Indicates if a specific strategy is preferred for the application component. *
*/ inline void SetIsPreferred(bool value) { m_isPreferredHasBeenSet = true; m_isPreferred = value; } /** *Indicates if a specific strategy is preferred for the application component. *
*/ inline StrategyOption& WithIsPreferred(bool value) { SetIsPreferred(value); return *this;} /** *Type of transformation. For example, Rehost, Replatform, and so on.
*/ inline const Strategy& GetStrategy() const{ return m_strategy; } /** *Type of transformation. For example, Rehost, Replatform, and so on.
*/ inline bool StrategyHasBeenSet() const { return m_strategyHasBeenSet; } /** *Type of transformation. For example, Rehost, Replatform, and so on.
*/ inline void SetStrategy(const Strategy& value) { m_strategyHasBeenSet = true; m_strategy = value; } /** *Type of transformation. For example, Rehost, Replatform, and so on.
*/ inline void SetStrategy(Strategy&& value) { m_strategyHasBeenSet = true; m_strategy = std::move(value); } /** *Type of transformation. For example, Rehost, Replatform, and so on.
*/ inline StrategyOption& WithStrategy(const Strategy& value) { SetStrategy(value); return *this;} /** *Type of transformation. For example, Rehost, Replatform, and so on.
*/ inline StrategyOption& WithStrategy(Strategy&& value) { SetStrategy(std::move(value)); return *this;} /** * Destination information about where the application component can migrate
* to. For example, EC2
, ECS
, and so on.
Destination information about where the application component can migrate
* to. For example, EC2
, ECS
, and so on.
Destination information about where the application component can migrate
* to. For example, EC2
, ECS
, and so on.
Destination information about where the application component can migrate
* to. For example, EC2
, ECS
, and so on.
Destination information about where the application component can migrate
* to. For example, EC2
, ECS
, and so on.
Destination information about where the application component can migrate
* to. For example, EC2
, ECS
, and so on.
The name of the tool that can be used to transform an application component * using this strategy.
*/ inline const TransformationToolName& GetToolName() const{ return m_toolName; } /** *The name of the tool that can be used to transform an application component * using this strategy.
*/ inline bool ToolNameHasBeenSet() const { return m_toolNameHasBeenSet; } /** *The name of the tool that can be used to transform an application component * using this strategy.
*/ inline void SetToolName(const TransformationToolName& value) { m_toolNameHasBeenSet = true; m_toolName = value; } /** *The name of the tool that can be used to transform an application component * using this strategy.
*/ inline void SetToolName(TransformationToolName&& value) { m_toolNameHasBeenSet = true; m_toolName = std::move(value); } /** *The name of the tool that can be used to transform an application component * using this strategy.
*/ inline StrategyOption& WithToolName(const TransformationToolName& value) { SetToolName(value); return *this;} /** *The name of the tool that can be used to transform an application component * using this strategy.
*/ inline StrategyOption& WithToolName(TransformationToolName&& value) { SetToolName(std::move(value)); return *this;} private: bool m_isPreferred; bool m_isPreferredHasBeenSet = false; Strategy m_strategy; bool m_strategyHasBeenSet = false; TargetDestination m_targetDestination; bool m_targetDestinationHasBeenSet = false; TransformationToolName m_toolName; bool m_toolNameHasBeenSet = false; }; } // namespace Model } // namespace MigrationHubStrategyRecommendations } // namespace Aws