All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.migrationhubstrategyrecommendations.model.StrategyOption Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Migration Hub Strategy Recommendations module holds the client classes that are used for communicating with Migration Hub Strategy Recommendations Service

There is a newer version: 1.12.772
Show newest version
/*
 * Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.migrationhubstrategyrecommendations.model;

import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;

/**
 * 

* Information about all the available strategy options for migrating and modernizing an application component. *

* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class StrategyOption implements Serializable, Cloneable, StructuredPojo { /** *

* Indicates if a specific strategy is preferred for the application component. *

*/ private Boolean isPreferred; /** *

* Type of transformation. For example, Rehost, Replatform, and so on. *

*/ private String strategy; /** *

* Destination information about where the application component can migrate to. For example, EC2, * ECS, and so on. *

*/ private String targetDestination; /** *

* The name of the tool that can be used to transform an application component using this strategy. *

*/ private String toolName; /** *

* Indicates if a specific strategy is preferred for the application component. *

* * @param isPreferred * Indicates if a specific strategy is preferred for the application component. */ public void setIsPreferred(Boolean isPreferred) { this.isPreferred = isPreferred; } /** *

* Indicates if a specific strategy is preferred for the application component. *

* * @return Indicates if a specific strategy is preferred for the application component. */ public Boolean getIsPreferred() { return this.isPreferred; } /** *

* Indicates if a specific strategy is preferred for the application component. *

* * @param isPreferred * Indicates if a specific strategy is preferred for the application component. * @return Returns a reference to this object so that method calls can be chained together. */ public StrategyOption withIsPreferred(Boolean isPreferred) { setIsPreferred(isPreferred); return this; } /** *

* Indicates if a specific strategy is preferred for the application component. *

* * @return Indicates if a specific strategy is preferred for the application component. */ public Boolean isPreferred() { return this.isPreferred; } /** *

* Type of transformation. For example, Rehost, Replatform, and so on. *

* * @param strategy * Type of transformation. For example, Rehost, Replatform, and so on. * @see Strategy */ public void setStrategy(String strategy) { this.strategy = strategy; } /** *

* Type of transformation. For example, Rehost, Replatform, and so on. *

* * @return Type of transformation. For example, Rehost, Replatform, and so on. * @see Strategy */ public String getStrategy() { return this.strategy; } /** *

* Type of transformation. For example, Rehost, Replatform, and so on. *

* * @param strategy * Type of transformation. For example, Rehost, Replatform, and so on. * @return Returns a reference to this object so that method calls can be chained together. * @see Strategy */ public StrategyOption withStrategy(String strategy) { setStrategy(strategy); return this; } /** *

* Type of transformation. For example, Rehost, Replatform, and so on. *

* * @param strategy * Type of transformation. For example, Rehost, Replatform, and so on. * @return Returns a reference to this object so that method calls can be chained together. * @see Strategy */ public StrategyOption withStrategy(Strategy strategy) { this.strategy = strategy.toString(); return this; } /** *

* Destination information about where the application component can migrate to. For example, EC2, * ECS, and so on. *

* * @param targetDestination * Destination information about where the application component can migrate to. For example, * EC2, ECS, and so on. * @see TargetDestination */ public void setTargetDestination(String targetDestination) { this.targetDestination = targetDestination; } /** *

* Destination information about where the application component can migrate to. For example, EC2, * ECS, and so on. *

* * @return Destination information about where the application component can migrate to. For example, * EC2, ECS, and so on. * @see TargetDestination */ public String getTargetDestination() { return this.targetDestination; } /** *

* Destination information about where the application component can migrate to. For example, EC2, * ECS, and so on. *

* * @param targetDestination * Destination information about where the application component can migrate to. For example, * EC2, ECS, and so on. * @return Returns a reference to this object so that method calls can be chained together. * @see TargetDestination */ public StrategyOption withTargetDestination(String targetDestination) { setTargetDestination(targetDestination); return this; } /** *

* Destination information about where the application component can migrate to. For example, EC2, * ECS, and so on. *

* * @param targetDestination * Destination information about where the application component can migrate to. For example, * EC2, ECS, and so on. * @return Returns a reference to this object so that method calls can be chained together. * @see TargetDestination */ public StrategyOption withTargetDestination(TargetDestination targetDestination) { this.targetDestination = targetDestination.toString(); return this; } /** *

* The name of the tool that can be used to transform an application component using this strategy. *

* * @param toolName * The name of the tool that can be used to transform an application component using this strategy. * @see TransformationToolName */ public void setToolName(String toolName) { this.toolName = toolName; } /** *

* The name of the tool that can be used to transform an application component using this strategy. *

* * @return The name of the tool that can be used to transform an application component using this strategy. * @see TransformationToolName */ public String getToolName() { return this.toolName; } /** *

* The name of the tool that can be used to transform an application component using this strategy. *

* * @param toolName * The name of the tool that can be used to transform an application component using this strategy. * @return Returns a reference to this object so that method calls can be chained together. * @see TransformationToolName */ public StrategyOption withToolName(String toolName) { setToolName(toolName); return this; } /** *

* The name of the tool that can be used to transform an application component using this strategy. *

* * @param toolName * The name of the tool that can be used to transform an application component using this strategy. * @return Returns a reference to this object so that method calls can be chained together. * @see TransformationToolName */ public StrategyOption withToolName(TransformationToolName toolName) { this.toolName = toolName.toString(); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getIsPreferred() != null) sb.append("IsPreferred: ").append(getIsPreferred()).append(","); if (getStrategy() != null) sb.append("Strategy: ").append(getStrategy()).append(","); if (getTargetDestination() != null) sb.append("TargetDestination: ").append(getTargetDestination()).append(","); if (getToolName() != null) sb.append("ToolName: ").append(getToolName()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof StrategyOption == false) return false; StrategyOption other = (StrategyOption) obj; if (other.getIsPreferred() == null ^ this.getIsPreferred() == null) return false; if (other.getIsPreferred() != null && other.getIsPreferred().equals(this.getIsPreferred()) == false) return false; if (other.getStrategy() == null ^ this.getStrategy() == null) return false; if (other.getStrategy() != null && other.getStrategy().equals(this.getStrategy()) == false) return false; if (other.getTargetDestination() == null ^ this.getTargetDestination() == null) return false; if (other.getTargetDestination() != null && other.getTargetDestination().equals(this.getTargetDestination()) == false) return false; if (other.getToolName() == null ^ this.getToolName() == null) return false; if (other.getToolName() != null && other.getToolName().equals(this.getToolName()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getIsPreferred() == null) ? 0 : getIsPreferred().hashCode()); hashCode = prime * hashCode + ((getStrategy() == null) ? 0 : getStrategy().hashCode()); hashCode = prime * hashCode + ((getTargetDestination() == null) ? 0 : getTargetDestination().hashCode()); hashCode = prime * hashCode + ((getToolName() == null) ? 0 : getToolName().hashCode()); return hashCode; } @Override public StrategyOption clone() { try { return (StrategyOption) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.migrationhubstrategyrecommendations.model.transform.StrategyOptionMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy