/* * Copyright 2018-2023 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.applicationinsights.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** * * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class DescribeComponentConfigurationRecommendationRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *

* The name of the resource group. *

*/ private String resourceGroupName; /** *

* The name of the component. *

*/ private String componentName; /** *

* The tier of the application component. *

*/ private String tier; /** *

* The recommended configuration type. *

*/ private String recommendationType; /** *

* The name of the resource group. *

* * @param resourceGroupName * The name of the resource group. */ public void setResourceGroupName(String resourceGroupName) { this.resourceGroupName = resourceGroupName; } /** *

* The name of the resource group. *

* * @return The name of the resource group. */ public String getResourceGroupName() { return this.resourceGroupName; } /** *

* The name of the resource group. *

* * @param resourceGroupName * The name of the resource group. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeComponentConfigurationRecommendationRequest withResourceGroupName(String resourceGroupName) { setResourceGroupName(resourceGroupName); return this; } /** *

* The name of the component. *

* * @param componentName * The name of the component. */ public void setComponentName(String componentName) { this.componentName = componentName; } /** *

* The name of the component. *

* * @return The name of the component. */ public String getComponentName() { return this.componentName; } /** *

* The name of the component. *

* * @param componentName * The name of the component. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeComponentConfigurationRecommendationRequest withComponentName(String componentName) { setComponentName(componentName); return this; } /** *

* The tier of the application component. *

* * @param tier * The tier of the application component. * @see Tier */ public void setTier(String tier) { this.tier = tier; } /** *

* The tier of the application component. *

* * @return The tier of the application component. * @see Tier */ public String getTier() { return this.tier; } /** *

* The tier of the application component. *

* * @param tier * The tier of the application component. * @return Returns a reference to this object so that method calls can be chained together. * @see Tier */ public DescribeComponentConfigurationRecommendationRequest withTier(String tier) { setTier(tier); return this; } /** *

* The tier of the application component. *

* * @param tier * The tier of the application component. * @return Returns a reference to this object so that method calls can be chained together. * @see Tier */ public DescribeComponentConfigurationRecommendationRequest withTier(Tier tier) { this.tier = tier.toString(); return this; } /** *

* The recommended configuration type. *

* * @param recommendationType * The recommended configuration type. * @see RecommendationType */ public void setRecommendationType(String recommendationType) { this.recommendationType = recommendationType; } /** *

* The recommended configuration type. *

* * @return The recommended configuration type. * @see RecommendationType */ public String getRecommendationType() { return this.recommendationType; } /** *

* The recommended configuration type. *

* * @param recommendationType * The recommended configuration type. * @return Returns a reference to this object so that method calls can be chained together. * @see RecommendationType */ public DescribeComponentConfigurationRecommendationRequest withRecommendationType(String recommendationType) { setRecommendationType(recommendationType); return this; } /** *

* The recommended configuration type. *

* * @param recommendationType * The recommended configuration type. * @return Returns a reference to this object so that method calls can be chained together. * @see RecommendationType */ public DescribeComponentConfigurationRecommendationRequest withRecommendationType(RecommendationType recommendationType) { this.recommendationType = recommendationType.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 (getResourceGroupName() != null) sb.append("ResourceGroupName: ").append(getResourceGroupName()).append(","); if (getComponentName() != null) sb.append("ComponentName: ").append(getComponentName()).append(","); if (getTier() != null) sb.append("Tier: ").append(getTier()).append(","); if (getRecommendationType() != null) sb.append("RecommendationType: ").append(getRecommendationType()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof DescribeComponentConfigurationRecommendationRequest == false) return false; DescribeComponentConfigurationRecommendationRequest other = (DescribeComponentConfigurationRecommendationRequest) obj; if (other.getResourceGroupName() == null ^ this.getResourceGroupName() == null) return false; if (other.getResourceGroupName() != null && other.getResourceGroupName().equals(this.getResourceGroupName()) == false) return false; if (other.getComponentName() == null ^ this.getComponentName() == null) return false; if (other.getComponentName() != null && other.getComponentName().equals(this.getComponentName()) == false) return false; if (other.getTier() == null ^ this.getTier() == null) return false; if (other.getTier() != null && other.getTier().equals(this.getTier()) == false) return false; if (other.getRecommendationType() == null ^ this.getRecommendationType() == null) return false; if (other.getRecommendationType() != null && other.getRecommendationType().equals(this.getRecommendationType()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getResourceGroupName() == null) ? 0 : getResourceGroupName().hashCode()); hashCode = prime * hashCode + ((getComponentName() == null) ? 0 : getComponentName().hashCode()); hashCode = prime * hashCode + ((getTier() == null) ? 0 : getTier().hashCode()); hashCode = prime * hashCode + ((getRecommendationType() == null) ? 0 : getRecommendationType().hashCode()); return hashCode; } @Override public DescribeComponentConfigurationRecommendationRequest clone() { return (DescribeComponentConfigurationRecommendationRequest) super.clone(); } }