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

com.amazonaws.services.applicationautoscaling.model.DescribeScalableTargetsRequest Maven / Gradle / Ivy

/*
 * Copyright 2011-2016 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.applicationautoscaling.model;

import java.io.Serializable;
import com.amazonaws.AmazonWebServiceRequest;

/**
 * 
 */
public class DescribeScalableTargetsRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {

    /**
     * 

* The namespace for the AWS service that the scalable target is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference. *

*/ private String serviceNamespace; /** *

* The resource type and unique identifier string for the resource associated with the scalable target. For Amazon * ECS services, the resource type is services, and the identifier is the cluster name and service * name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource * type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you specify a scalable dimension, * you must also specify a resource ID. *

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

* The scalable dimension associated with the scalable target. The scalable dimension contains the service * namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired * task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target * capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also specify a * resource ID. *

*/ private String scalableDimension; /** *

* The maximum number of scalable target results returned by DescribeScalableTargets in paginated * output. When this parameter is used, DescribeScalableTargets returns up to MaxResults * results in a single page along with a NextToken response element. The remaining results of the * initial request can be seen by sending another DescribeScalableTargets request with the returned * NextToken value. This value can be between 1 and 50. If this parameter is not used, then * DescribeScalableTargets returns up to 50 results and a NextToken value, if applicable. *

*/ private Integer maxResults; /** *

* The NextToken value returned from a previous paginated DescribeScalableTargets request. * Pagination continues from the end of the previous results that returned the NextToken value. This * value is null when there are no more results to return. *

*/ private String nextToken; /** *

* The namespace for the AWS service that the scalable target is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference. *

* * @param serviceNamespace * The namespace for the AWS service that the scalable target is associated with. For more information, see * AWS Service Namespaces in the Amazon Web Services General Reference. * @see ServiceNamespace */ public void setServiceNamespace(String serviceNamespace) { this.serviceNamespace = serviceNamespace; } /** *

* The namespace for the AWS service that the scalable target is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference. *

* * @return The namespace for the AWS service that the scalable target is associated with. For more information, see * AWS Service Namespaces in the Amazon Web Services General Reference. * @see ServiceNamespace */ public String getServiceNamespace() { return this.serviceNamespace; } /** *

* The namespace for the AWS service that the scalable target is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference. *

* * @param serviceNamespace * The namespace for the AWS service that the scalable target is associated with. For more information, see * AWS Service Namespaces in the Amazon Web Services General Reference. * @return Returns a reference to this object so that method calls can be chained together. * @see ServiceNamespace */ public DescribeScalableTargetsRequest withServiceNamespace(String serviceNamespace) { setServiceNamespace(serviceNamespace); return this; } /** *

* The namespace for the AWS service that the scalable target is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference. *

* * @param serviceNamespace * The namespace for the AWS service that the scalable target is associated with. For more information, see * AWS Service Namespaces in the Amazon Web Services General Reference. * @see ServiceNamespace */ public void setServiceNamespace(ServiceNamespace serviceNamespace) { this.serviceNamespace = serviceNamespace.toString(); } /** *

* The namespace for the AWS service that the scalable target is associated with. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference. *

* * @param serviceNamespace * The namespace for the AWS service that the scalable target is associated with. For more information, see * AWS Service Namespaces in the Amazon Web Services General Reference. * @return Returns a reference to this object so that method calls can be chained together. * @see ServiceNamespace */ public DescribeScalableTargetsRequest withServiceNamespace(ServiceNamespace serviceNamespace) { setServiceNamespace(serviceNamespace); return this; } /** *

* The resource type and unique identifier string for the resource associated with the scalable target. For Amazon * ECS services, the resource type is services, and the identifier is the cluster name and service * name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource * type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you specify a scalable dimension, * you must also specify a resource ID. *

* * @return The resource type and unique identifier string for the resource associated with the scalable target. For * Amazon ECS services, the resource type is services, and the identifier is the cluster name * and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet * requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet * request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you * specify a scalable dimension, you must also specify a resource ID. */ public java.util.List getResourceIds() { return resourceIds; } /** *

* The resource type and unique identifier string for the resource associated with the scalable target. For Amazon * ECS services, the resource type is services, and the identifier is the cluster name and service * name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource * type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you specify a scalable dimension, * you must also specify a resource ID. *

* * @param resourceIds * The resource type and unique identifier string for the resource associated with the scalable target. For * Amazon ECS services, the resource type is services, and the identifier is the cluster name * and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet * requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet * request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you * specify a scalable dimension, you must also specify a resource ID. */ public void setResourceIds(java.util.Collection resourceIds) { if (resourceIds == null) { this.resourceIds = null; return; } this.resourceIds = new java.util.ArrayList(resourceIds); } /** *

* The resource type and unique identifier string for the resource associated with the scalable target. For Amazon * ECS services, the resource type is services, and the identifier is the cluster name and service * name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource * type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you specify a scalable dimension, * you must also specify a resource ID. *

*

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

* * @param resourceIds * The resource type and unique identifier string for the resource associated with the scalable target. For * Amazon ECS services, the resource type is services, and the identifier is the cluster name * and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet * requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet * request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you * specify a scalable dimension, you must also specify a resource ID. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeScalableTargetsRequest withResourceIds(String... resourceIds) { if (this.resourceIds == null) { setResourceIds(new java.util.ArrayList(resourceIds.length)); } for (String ele : resourceIds) { this.resourceIds.add(ele); } return this; } /** *

* The resource type and unique identifier string for the resource associated with the scalable target. For Amazon * ECS services, the resource type is services, and the identifier is the cluster name and service * name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet requests, the resource * type is spot-fleet-request, and the identifier is the Spot fleet request ID; for example, * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you specify a scalable dimension, * you must also specify a resource ID. *

* * @param resourceIds * The resource type and unique identifier string for the resource associated with the scalable target. For * Amazon ECS services, the resource type is services, and the identifier is the cluster name * and service name; for example, service/default/sample-webapp. For Amazon EC2 Spot fleet * requests, the resource type is spot-fleet-request, and the identifier is the Spot fleet * request ID; for example, spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE. If you * specify a scalable dimension, you must also specify a resource ID. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeScalableTargetsRequest withResourceIds(java.util.Collection resourceIds) { setResourceIds(resourceIds); return this; } /** *

* The scalable dimension associated with the scalable target. The scalable dimension contains the service * namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired * task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target * capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also specify a * resource ID. *

* * @param scalableDimension * The scalable dimension associated with the scalable target. The scalable dimension contains the service * namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the * desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the * target capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also * specify a resource ID. * @see ScalableDimension */ public void setScalableDimension(String scalableDimension) { this.scalableDimension = scalableDimension; } /** *

* The scalable dimension associated with the scalable target. The scalable dimension contains the service * namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired * task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target * capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also specify a * resource ID. *

* * @return The scalable dimension associated with the scalable target. The scalable dimension contains the service * namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the * desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for * the target capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must * also specify a resource ID. * @see ScalableDimension */ public String getScalableDimension() { return this.scalableDimension; } /** *

* The scalable dimension associated with the scalable target. The scalable dimension contains the service * namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired * task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target * capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also specify a * resource ID. *

* * @param scalableDimension * The scalable dimension associated with the scalable target. The scalable dimension contains the service * namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the * desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the * target capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also * specify a resource ID. * @return Returns a reference to this object so that method calls can be chained together. * @see ScalableDimension */ public DescribeScalableTargetsRequest withScalableDimension(String scalableDimension) { setScalableDimension(scalableDimension); return this; } /** *

* The scalable dimension associated with the scalable target. The scalable dimension contains the service * namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired * task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target * capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also specify a * resource ID. *

* * @param scalableDimension * The scalable dimension associated with the scalable target. The scalable dimension contains the service * namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the * desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the * target capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also * specify a resource ID. * @see ScalableDimension */ public void setScalableDimension(ScalableDimension scalableDimension) { this.scalableDimension = scalableDimension.toString(); } /** *

* The scalable dimension associated with the scalable target. The scalable dimension contains the service * namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the desired * task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the target * capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also specify a * resource ID. *

* * @param scalableDimension * The scalable dimension associated with the scalable target. The scalable dimension contains the service * namespace, resource type, and scaling property, such as ecs:service:DesiredCount for the * desired task count of an Amazon ECS service, or ec2:spot-fleet-request:TargetCapacity for the * target capacity of an Amazon EC2 Spot fleet request. If you specify a scalable dimension, you must also * specify a resource ID. * @return Returns a reference to this object so that method calls can be chained together. * @see ScalableDimension */ public DescribeScalableTargetsRequest withScalableDimension(ScalableDimension scalableDimension) { setScalableDimension(scalableDimension); return this; } /** *

* The maximum number of scalable target results returned by DescribeScalableTargets in paginated * output. When this parameter is used, DescribeScalableTargets returns up to MaxResults * results in a single page along with a NextToken response element. The remaining results of the * initial request can be seen by sending another DescribeScalableTargets request with the returned * NextToken value. This value can be between 1 and 50. If this parameter is not used, then * DescribeScalableTargets returns up to 50 results and a NextToken value, if applicable. *

* * @param maxResults * The maximum number of scalable target results returned by DescribeScalableTargets in * paginated output. When this parameter is used, DescribeScalableTargets returns up to * MaxResults results in a single page along with a NextToken response element. The * remaining results of the initial request can be seen by sending another * DescribeScalableTargets request with the returned NextToken value. This value * can be between 1 and 50. If this parameter is not used, then DescribeScalableTargets returns * up to 50 results and a NextToken value, if applicable. */ public void setMaxResults(Integer maxResults) { this.maxResults = maxResults; } /** *

* The maximum number of scalable target results returned by DescribeScalableTargets in paginated * output. When this parameter is used, DescribeScalableTargets returns up to MaxResults * results in a single page along with a NextToken response element. The remaining results of the * initial request can be seen by sending another DescribeScalableTargets request with the returned * NextToken value. This value can be between 1 and 50. If this parameter is not used, then * DescribeScalableTargets returns up to 50 results and a NextToken value, if applicable. *

* * @return The maximum number of scalable target results returned by DescribeScalableTargets in * paginated output. When this parameter is used, DescribeScalableTargets returns up to * MaxResults results in a single page along with a NextToken response element. * The remaining results of the initial request can be seen by sending another * DescribeScalableTargets request with the returned NextToken value. This value * can be between 1 and 50. If this parameter is not used, then DescribeScalableTargets returns * up to 50 results and a NextToken value, if applicable. */ public Integer getMaxResults() { return this.maxResults; } /** *

* The maximum number of scalable target results returned by DescribeScalableTargets in paginated * output. When this parameter is used, DescribeScalableTargets returns up to MaxResults * results in a single page along with a NextToken response element. The remaining results of the * initial request can be seen by sending another DescribeScalableTargets request with the returned * NextToken value. This value can be between 1 and 50. If this parameter is not used, then * DescribeScalableTargets returns up to 50 results and a NextToken value, if applicable. *

* * @param maxResults * The maximum number of scalable target results returned by DescribeScalableTargets in * paginated output. When this parameter is used, DescribeScalableTargets returns up to * MaxResults results in a single page along with a NextToken response element. The * remaining results of the initial request can be seen by sending another * DescribeScalableTargets request with the returned NextToken value. This value * can be between 1 and 50. If this parameter is not used, then DescribeScalableTargets returns * up to 50 results and a NextToken value, if applicable. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeScalableTargetsRequest withMaxResults(Integer maxResults) { setMaxResults(maxResults); return this; } /** *

* The NextToken value returned from a previous paginated DescribeScalableTargets request. * Pagination continues from the end of the previous results that returned the NextToken value. This * value is null when there are no more results to return. *

* * @param nextToken * The NextToken value returned from a previous paginated DescribeScalableTargets * request. Pagination continues from the end of the previous results that returned the * NextToken value. This value is null when there are no more results to return. */ public void setNextToken(String nextToken) { this.nextToken = nextToken; } /** *

* The NextToken value returned from a previous paginated DescribeScalableTargets request. * Pagination continues from the end of the previous results that returned the NextToken value. This * value is null when there are no more results to return. *

* * @return The NextToken value returned from a previous paginated DescribeScalableTargets * request. Pagination continues from the end of the previous results that returned the * NextToken value. This value is null when there are no more results to return. */ public String getNextToken() { return this.nextToken; } /** *

* The NextToken value returned from a previous paginated DescribeScalableTargets request. * Pagination continues from the end of the previous results that returned the NextToken value. This * value is null when there are no more results to return. *

* * @param nextToken * The NextToken value returned from a previous paginated DescribeScalableTargets * request. Pagination continues from the end of the previous results that returned the * NextToken value. This value is null when there are no more results to return. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeScalableTargetsRequest withNextToken(String nextToken) { setNextToken(nextToken); return this; } /** * Returns a string representation of this object; useful for testing and debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getServiceNamespace() != null) sb.append("ServiceNamespace: " + getServiceNamespace() + ","); if (getResourceIds() != null) sb.append("ResourceIds: " + getResourceIds() + ","); if (getScalableDimension() != null) sb.append("ScalableDimension: " + getScalableDimension() + ","); if (getMaxResults() != null) sb.append("MaxResults: " + getMaxResults() + ","); if (getNextToken() != null) sb.append("NextToken: " + getNextToken()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof DescribeScalableTargetsRequest == false) return false; DescribeScalableTargetsRequest other = (DescribeScalableTargetsRequest) obj; if (other.getServiceNamespace() == null ^ this.getServiceNamespace() == null) return false; if (other.getServiceNamespace() != null && other.getServiceNamespace().equals(this.getServiceNamespace()) == false) return false; if (other.getResourceIds() == null ^ this.getResourceIds() == null) return false; if (other.getResourceIds() != null && other.getResourceIds().equals(this.getResourceIds()) == false) return false; if (other.getScalableDimension() == null ^ this.getScalableDimension() == null) return false; if (other.getScalableDimension() != null && other.getScalableDimension().equals(this.getScalableDimension()) == false) return false; if (other.getMaxResults() == null ^ this.getMaxResults() == null) return false; if (other.getMaxResults() != null && other.getMaxResults().equals(this.getMaxResults()) == false) return false; if (other.getNextToken() == null ^ this.getNextToken() == null) return false; if (other.getNextToken() != null && other.getNextToken().equals(this.getNextToken()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getServiceNamespace() == null) ? 0 : getServiceNamespace().hashCode()); hashCode = prime * hashCode + ((getResourceIds() == null) ? 0 : getResourceIds().hashCode()); hashCode = prime * hashCode + ((getScalableDimension() == null) ? 0 : getScalableDimension().hashCode()); hashCode = prime * hashCode + ((getMaxResults() == null) ? 0 : getMaxResults().hashCode()); hashCode = prime * hashCode + ((getNextToken() == null) ? 0 : getNextToken().hashCode()); return hashCode; } @Override public DescribeScalableTargetsRequest clone() { return (DescribeScalableTargetsRequest) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy