/* * 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.sagemaker.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 CreateEndpointRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *

* The name of the endpoint.The name must be unique within an Amazon Web Services Region in your Amazon Web Services * account. The name is case-insensitive in CreateEndpoint, but the case is preserved and must be * matched in InvokeEndpoint * . *

*/ private String endpointName; /** *

* The name of an endpoint configuration. For more information, see CreateEndpointConfig. *

*/ private String endpointConfigName; private DeploymentConfig deploymentConfig; /** *

* An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, * for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources. *

*/ private java.util.List tags; /** *

* The name of the endpoint.The name must be unique within an Amazon Web Services Region in your Amazon Web Services * account. The name is case-insensitive in CreateEndpoint, but the case is preserved and must be * matched in InvokeEndpoint * . *

* * @param endpointName * The name of the endpoint.The name must be unique within an Amazon Web Services Region in your Amazon Web * Services account. The name is case-insensitive in CreateEndpoint, but the case is preserved * and must be matched in InvokeEndpoint. */ public void setEndpointName(String endpointName) { this.endpointName = endpointName; } /** *

* The name of the endpoint.The name must be unique within an Amazon Web Services Region in your Amazon Web Services * account. The name is case-insensitive in CreateEndpoint, but the case is preserved and must be * matched in InvokeEndpoint * . *

* * @return The name of the endpoint.The name must be unique within an Amazon Web Services Region in your Amazon Web * Services account. The name is case-insensitive in CreateEndpoint, but the case is preserved * and must be matched in InvokeEndpoint. */ public String getEndpointName() { return this.endpointName; } /** *

* The name of the endpoint.The name must be unique within an Amazon Web Services Region in your Amazon Web Services * account. The name is case-insensitive in CreateEndpoint, but the case is preserved and must be * matched in InvokeEndpoint * . *

* * @param endpointName * The name of the endpoint.The name must be unique within an Amazon Web Services Region in your Amazon Web * Services account. The name is case-insensitive in CreateEndpoint, but the case is preserved * and must be matched in InvokeEndpoint. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateEndpointRequest withEndpointName(String endpointName) { setEndpointName(endpointName); return this; } /** *

* The name of an endpoint configuration. For more information, see CreateEndpointConfig. *

* * @param endpointConfigName * The name of an endpoint configuration. For more information, see CreateEndpointConfig. */ public void setEndpointConfigName(String endpointConfigName) { this.endpointConfigName = endpointConfigName; } /** *

* The name of an endpoint configuration. For more information, see CreateEndpointConfig. *

* * @return The name of an endpoint configuration. For more information, see CreateEndpointConfig. */ public String getEndpointConfigName() { return this.endpointConfigName; } /** *

* The name of an endpoint configuration. For more information, see CreateEndpointConfig. *

* * @param endpointConfigName * The name of an endpoint configuration. For more information, see CreateEndpointConfig. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateEndpointRequest withEndpointConfigName(String endpointConfigName) { setEndpointConfigName(endpointConfigName); return this; } /** * @param deploymentConfig */ public void setDeploymentConfig(DeploymentConfig deploymentConfig) { this.deploymentConfig = deploymentConfig; } /** * @return */ public DeploymentConfig getDeploymentConfig() { return this.deploymentConfig; } /** * @param deploymentConfig * @return Returns a reference to this object so that method calls can be chained together. */ public CreateEndpointRequest withDeploymentConfig(DeploymentConfig deploymentConfig) { setDeploymentConfig(deploymentConfig); return this; } /** *

* An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, * for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources. *

* * @return An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in * different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services * Resources. */ public java.util.List getTags() { return tags; } /** *

* An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, * for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources. *

* * @param tags * An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in * different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services * Resources. */ public void setTags(java.util.Collection tags) { if (tags == null) { this.tags = null; return; } this.tags = new java.util.ArrayList(tags); } /** *

* An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, * for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the * existing values. *

* * @param tags * An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in * different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services * Resources. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateEndpointRequest withTags(Tag... tags) { if (this.tags == null) { setTags(new java.util.ArrayList(tags.length)); } for (Tag ele : tags) { this.tags.add(ele); } return this; } /** *

* An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in different ways, * for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services Resources. *

* * @param tags * An array of key-value pairs. You can use tags to categorize your Amazon Web Services resources in * different ways, for example, by purpose, owner, or environment. For more information, see Tagging Amazon Web Services * Resources. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateEndpointRequest withTags(java.util.Collection tags) { setTags(tags); 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 (getEndpointName() != null) sb.append("EndpointName: ").append(getEndpointName()).append(","); if (getEndpointConfigName() != null) sb.append("EndpointConfigName: ").append(getEndpointConfigName()).append(","); if (getDeploymentConfig() != null) sb.append("DeploymentConfig: ").append(getDeploymentConfig()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateEndpointRequest == false) return false; CreateEndpointRequest other = (CreateEndpointRequest) obj; if (other.getEndpointName() == null ^ this.getEndpointName() == null) return false; if (other.getEndpointName() != null && other.getEndpointName().equals(this.getEndpointName()) == false) return false; if (other.getEndpointConfigName() == null ^ this.getEndpointConfigName() == null) return false; if (other.getEndpointConfigName() != null && other.getEndpointConfigName().equals(this.getEndpointConfigName()) == false) return false; if (other.getDeploymentConfig() == null ^ this.getDeploymentConfig() == null) return false; if (other.getDeploymentConfig() != null && other.getDeploymentConfig().equals(this.getDeploymentConfig()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getEndpointName() == null) ? 0 : getEndpointName().hashCode()); hashCode = prime * hashCode + ((getEndpointConfigName() == null) ? 0 : getEndpointConfigName().hashCode()); hashCode = prime * hashCode + ((getDeploymentConfig() == null) ? 0 : getDeploymentConfig().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); return hashCode; } @Override public CreateEndpointRequest clone() { return (CreateEndpointRequest) super.clone(); } }