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

com.amazonaws.services.ec2.model.DescribeScheduledInstanceAvailabilityRequest Maven / Gradle / Ivy

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * 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.ec2.model;

import java.io.Serializable;
import com.amazonaws.AmazonWebServiceRequest;
import com.amazonaws.Request;
import com.amazonaws.services.ec2.model.transform.DescribeScheduledInstanceAvailabilityRequestMarshaller;

/**
 * 

* Contains the parameters for DescribeScheduledInstanceAvailability. *

*/ public class DescribeScheduledInstanceAvailabilityRequest extends AmazonWebServiceRequest implements Serializable, Cloneable, DryRunSupportedRequest { /** *

* The schedule recurrence. *

*/ private ScheduledInstanceRecurrenceRequest recurrence; /** *

* The time period for the first schedule to start. *

*/ private SlotDateTimeRangeRequest firstSlotStartTimeRange; /** *

* The minimum available duration, in hours. The minimum required duration * is 1,200 hours per year. For example, the minimum daily schedule is 4 * hours, the minimum weekly schedule is 24 hours, and the minimum monthly * schedule is 100 hours. *

*/ private Integer minSlotDurationInHours; /** *

* The maximum available duration, in hours. This value must be greater than * MinSlotDurationInHours and less than 1,720. *

*/ private Integer maxSlotDurationInHours; /** *

* The token for the next set of results. *

*/ private String nextToken; /** *

* The maximum number of results to return in a single call. This value can * be between 5 and 300. The default value is 300. To retrieve the remaining * results, make another call with the returned NextToken * value. *

*/ private Integer maxResults; /** *

* One or more filters. *

*
    *
  • *

    * availability-zone - The Availability Zone (for example, * us-west-2a). *

    *
  • *
  • *

    * instance-type - The instance type (for example, * c4.large). *

    *
  • *
  • *

    * network-platform - The network platform ( * EC2-Classic or EC2-VPC). *

    *
  • *
  • *

    * platform - The platform (Linux/UNIX or * Windows). *

    *
  • *
*/ private com.amazonaws.internal.SdkInternalList filters; /** *

* The schedule recurrence. *

* * @param recurrence * The schedule recurrence. */ public void setRecurrence(ScheduledInstanceRecurrenceRequest recurrence) { this.recurrence = recurrence; } /** *

* The schedule recurrence. *

* * @return The schedule recurrence. */ public ScheduledInstanceRecurrenceRequest getRecurrence() { return this.recurrence; } /** *

* The schedule recurrence. *

* * @param recurrence * The schedule recurrence. * @return Returns a reference to this object so that method calls can be * chained together. */ public DescribeScheduledInstanceAvailabilityRequest withRecurrence( ScheduledInstanceRecurrenceRequest recurrence) { setRecurrence(recurrence); return this; } /** *

* The time period for the first schedule to start. *

* * @param firstSlotStartTimeRange * The time period for the first schedule to start. */ public void setFirstSlotStartTimeRange( SlotDateTimeRangeRequest firstSlotStartTimeRange) { this.firstSlotStartTimeRange = firstSlotStartTimeRange; } /** *

* The time period for the first schedule to start. *

* * @return The time period for the first schedule to start. */ public SlotDateTimeRangeRequest getFirstSlotStartTimeRange() { return this.firstSlotStartTimeRange; } /** *

* The time period for the first schedule to start. *

* * @param firstSlotStartTimeRange * The time period for the first schedule to start. * @return Returns a reference to this object so that method calls can be * chained together. */ public DescribeScheduledInstanceAvailabilityRequest withFirstSlotStartTimeRange( SlotDateTimeRangeRequest firstSlotStartTimeRange) { setFirstSlotStartTimeRange(firstSlotStartTimeRange); return this; } /** *

* The minimum available duration, in hours. The minimum required duration * is 1,200 hours per year. For example, the minimum daily schedule is 4 * hours, the minimum weekly schedule is 24 hours, and the minimum monthly * schedule is 100 hours. *

* * @param minSlotDurationInHours * The minimum available duration, in hours. The minimum required * duration is 1,200 hours per year. For example, the minimum daily * schedule is 4 hours, the minimum weekly schedule is 24 hours, and * the minimum monthly schedule is 100 hours. */ public void setMinSlotDurationInHours(Integer minSlotDurationInHours) { this.minSlotDurationInHours = minSlotDurationInHours; } /** *

* The minimum available duration, in hours. The minimum required duration * is 1,200 hours per year. For example, the minimum daily schedule is 4 * hours, the minimum weekly schedule is 24 hours, and the minimum monthly * schedule is 100 hours. *

* * @return The minimum available duration, in hours. The minimum required * duration is 1,200 hours per year. For example, the minimum daily * schedule is 4 hours, the minimum weekly schedule is 24 hours, and * the minimum monthly schedule is 100 hours. */ public Integer getMinSlotDurationInHours() { return this.minSlotDurationInHours; } /** *

* The minimum available duration, in hours. The minimum required duration * is 1,200 hours per year. For example, the minimum daily schedule is 4 * hours, the minimum weekly schedule is 24 hours, and the minimum monthly * schedule is 100 hours. *

* * @param minSlotDurationInHours * The minimum available duration, in hours. The minimum required * duration is 1,200 hours per year. For example, the minimum daily * schedule is 4 hours, the minimum weekly schedule is 24 hours, and * the minimum monthly schedule is 100 hours. * @return Returns a reference to this object so that method calls can be * chained together. */ public DescribeScheduledInstanceAvailabilityRequest withMinSlotDurationInHours( Integer minSlotDurationInHours) { setMinSlotDurationInHours(minSlotDurationInHours); return this; } /** *

* The maximum available duration, in hours. This value must be greater than * MinSlotDurationInHours and less than 1,720. *

* * @param maxSlotDurationInHours * The maximum available duration, in hours. This value must be * greater than MinSlotDurationInHours and less than * 1,720. */ public void setMaxSlotDurationInHours(Integer maxSlotDurationInHours) { this.maxSlotDurationInHours = maxSlotDurationInHours; } /** *

* The maximum available duration, in hours. This value must be greater than * MinSlotDurationInHours and less than 1,720. *

* * @return The maximum available duration, in hours. This value must be * greater than MinSlotDurationInHours and less than * 1,720. */ public Integer getMaxSlotDurationInHours() { return this.maxSlotDurationInHours; } /** *

* The maximum available duration, in hours. This value must be greater than * MinSlotDurationInHours and less than 1,720. *

* * @param maxSlotDurationInHours * The maximum available duration, in hours. This value must be * greater than MinSlotDurationInHours and less than * 1,720. * @return Returns a reference to this object so that method calls can be * chained together. */ public DescribeScheduledInstanceAvailabilityRequest withMaxSlotDurationInHours( Integer maxSlotDurationInHours) { setMaxSlotDurationInHours(maxSlotDurationInHours); return this; } /** *

* The token for the next set of results. *

* * @param nextToken * The token for the next set of results. */ public void setNextToken(String nextToken) { this.nextToken = nextToken; } /** *

* The token for the next set of results. *

* * @return The token for the next set of results. */ public String getNextToken() { return this.nextToken; } /** *

* The token for the next set of results. *

* * @param nextToken * The token for the next set of results. * @return Returns a reference to this object so that method calls can be * chained together. */ public DescribeScheduledInstanceAvailabilityRequest withNextToken( String nextToken) { setNextToken(nextToken); return this; } /** *

* The maximum number of results to return in a single call. This value can * be between 5 and 300. The default value is 300. To retrieve the remaining * results, make another call with the returned NextToken * value. *

* * @param maxResults * The maximum number of results to return in a single call. This * value can be between 5 and 300. The default value is 300. To * retrieve the remaining results, make another call with the * returned NextToken value. */ public void setMaxResults(Integer maxResults) { this.maxResults = maxResults; } /** *

* The maximum number of results to return in a single call. This value can * be between 5 and 300. The default value is 300. To retrieve the remaining * results, make another call with the returned NextToken * value. *

* * @return The maximum number of results to return in a single call. This * value can be between 5 and 300. The default value is 300. To * retrieve the remaining results, make another call with the * returned NextToken value. */ public Integer getMaxResults() { return this.maxResults; } /** *

* The maximum number of results to return in a single call. This value can * be between 5 and 300. The default value is 300. To retrieve the remaining * results, make another call with the returned NextToken * value. *

* * @param maxResults * The maximum number of results to return in a single call. This * value can be between 5 and 300. The default value is 300. To * retrieve the remaining results, make another call with the * returned NextToken value. * @return Returns a reference to this object so that method calls can be * chained together. */ public DescribeScheduledInstanceAvailabilityRequest withMaxResults( Integer maxResults) { setMaxResults(maxResults); return this; } /** *

* One or more filters. *

*
    *
  • *

    * availability-zone - The Availability Zone (for example, * us-west-2a). *

    *
  • *
  • *

    * instance-type - The instance type (for example, * c4.large). *

    *
  • *
  • *

    * network-platform - The network platform ( * EC2-Classic or EC2-VPC). *

    *
  • *
  • *

    * platform - The platform (Linux/UNIX or * Windows). *

    *
  • *
* * @return One or more filters.

*
    *
  • *

    * availability-zone - The Availability Zone (for * example, us-west-2a). *

    *
  • *
  • *

    * instance-type - The instance type (for example, * c4.large). *

    *
  • *
  • *

    * network-platform - The network platform ( * EC2-Classic or EC2-VPC). *

    *
  • *
  • *

    * platform - The platform (Linux/UNIX or * Windows). *

    *
  • */ public java.util.List getFilters() { if (filters == null) { filters = new com.amazonaws.internal.SdkInternalList(); } return filters; } /** *

    * One or more filters. *

    *
      *
    • *

      * availability-zone - The Availability Zone (for example, * us-west-2a). *

      *
    • *
    • *

      * instance-type - The instance type (for example, * c4.large). *

      *
    • *
    • *

      * network-platform - The network platform ( * EC2-Classic or EC2-VPC). *

      *
    • *
    • *

      * platform - The platform (Linux/UNIX or * Windows). *

      *
    • *
    * * @param filters * One or more filters.

    *
      *
    • *

      * availability-zone - The Availability Zone (for * example, us-west-2a). *

      *
    • *
    • *

      * instance-type - The instance type (for example, * c4.large). *

      *
    • *
    • *

      * network-platform - The network platform ( * EC2-Classic or EC2-VPC). *

      *
    • *
    • *

      * platform - The platform (Linux/UNIX or * Windows). *

      *
    • */ public void setFilters(java.util.Collection filters) { if (filters == null) { this.filters = null; return; } this.filters = new com.amazonaws.internal.SdkInternalList( filters); } /** *

      * One or more filters. *

      *
        *
      • *

        * availability-zone - The Availability Zone (for example, * us-west-2a). *

        *
      • *
      • *

        * instance-type - The instance type (for example, * c4.large). *

        *
      • *
      • *

        * network-platform - The network platform ( * EC2-Classic or EC2-VPC). *

        *
      • *
      • *

        * platform - The platform (Linux/UNIX or * Windows). *

        *
      • *
      *

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

      * * @param filters * One or more filters.

      *
        *
      • *

        * availability-zone - The Availability Zone (for * example, us-west-2a). *

        *
      • *
      • *

        * instance-type - The instance type (for example, * c4.large). *

        *
      • *
      • *

        * network-platform - The network platform ( * EC2-Classic or EC2-VPC). *

        *
      • *
      • *

        * platform - The platform (Linux/UNIX or * Windows). *

        *
      • * @return Returns a reference to this object so that method calls can be * chained together. */ public DescribeScheduledInstanceAvailabilityRequest withFilters( Filter... filters) { if (this.filters == null) { setFilters(new com.amazonaws.internal.SdkInternalList( filters.length)); } for (Filter ele : filters) { this.filters.add(ele); } return this; } /** *

        * One or more filters. *

        *
          *
        • *

          * availability-zone - The Availability Zone (for example, * us-west-2a). *

          *
        • *
        • *

          * instance-type - The instance type (for example, * c4.large). *

          *
        • *
        • *

          * network-platform - The network platform ( * EC2-Classic or EC2-VPC). *

          *
        • *
        • *

          * platform - The platform (Linux/UNIX or * Windows). *

          *
        • *
        * * @param filters * One or more filters.

        *
          *
        • *

          * availability-zone - The Availability Zone (for * example, us-west-2a). *

          *
        • *
        • *

          * instance-type - The instance type (for example, * c4.large). *

          *
        • *
        • *

          * network-platform - The network platform ( * EC2-Classic or EC2-VPC). *

          *
        • *
        • *

          * platform - The platform (Linux/UNIX or * Windows). *

          *
        • * @return Returns a reference to this object so that method calls can be * chained together. */ public DescribeScheduledInstanceAvailabilityRequest withFilters( java.util.Collection filters) { setFilters(filters); return this; } /** * This method is intended for internal use only. Returns the marshaled * request configured with additional parameters to enable operation * dry-run. */ @Override public Request getDryRunRequest() { Request request = new DescribeScheduledInstanceAvailabilityRequestMarshaller() .marshall(this); request.addParameter("DryRun", Boolean.toString(true)); return request; } /** * 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 (getRecurrence() != null) sb.append("Recurrence: " + getRecurrence() + ","); if (getFirstSlotStartTimeRange() != null) sb.append("FirstSlotStartTimeRange: " + getFirstSlotStartTimeRange() + ","); if (getMinSlotDurationInHours() != null) sb.append("MinSlotDurationInHours: " + getMinSlotDurationInHours() + ","); if (getMaxSlotDurationInHours() != null) sb.append("MaxSlotDurationInHours: " + getMaxSlotDurationInHours() + ","); if (getNextToken() != null) sb.append("NextToken: " + getNextToken() + ","); if (getMaxResults() != null) sb.append("MaxResults: " + getMaxResults() + ","); if (getFilters() != null) sb.append("Filters: " + getFilters()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof DescribeScheduledInstanceAvailabilityRequest == false) return false; DescribeScheduledInstanceAvailabilityRequest other = (DescribeScheduledInstanceAvailabilityRequest) obj; if (other.getRecurrence() == null ^ this.getRecurrence() == null) return false; if (other.getRecurrence() != null && other.getRecurrence().equals(this.getRecurrence()) == false) return false; if (other.getFirstSlotStartTimeRange() == null ^ this.getFirstSlotStartTimeRange() == null) return false; if (other.getFirstSlotStartTimeRange() != null && other.getFirstSlotStartTimeRange().equals( this.getFirstSlotStartTimeRange()) == false) return false; if (other.getMinSlotDurationInHours() == null ^ this.getMinSlotDurationInHours() == null) return false; if (other.getMinSlotDurationInHours() != null && other.getMinSlotDurationInHours().equals( this.getMinSlotDurationInHours()) == false) return false; if (other.getMaxSlotDurationInHours() == null ^ this.getMaxSlotDurationInHours() == null) return false; if (other.getMaxSlotDurationInHours() != null && other.getMaxSlotDurationInHours().equals( this.getMaxSlotDurationInHours()) == false) return false; if (other.getNextToken() == null ^ this.getNextToken() == null) return false; if (other.getNextToken() != null && other.getNextToken().equals(this.getNextToken()) == 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.getFilters() == null ^ this.getFilters() == null) return false; if (other.getFilters() != null && other.getFilters().equals(this.getFilters()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getRecurrence() == null) ? 0 : getRecurrence().hashCode()); hashCode = prime * hashCode + ((getFirstSlotStartTimeRange() == null) ? 0 : getFirstSlotStartTimeRange().hashCode()); hashCode = prime * hashCode + ((getMinSlotDurationInHours() == null) ? 0 : getMinSlotDurationInHours().hashCode()); hashCode = prime * hashCode + ((getMaxSlotDurationInHours() == null) ? 0 : getMaxSlotDurationInHours().hashCode()); hashCode = prime * hashCode + ((getNextToken() == null) ? 0 : getNextToken().hashCode()); hashCode = prime * hashCode + ((getMaxResults() == null) ? 0 : getMaxResults().hashCode()); hashCode = prime * hashCode + ((getFilters() == null) ? 0 : getFilters().hashCode()); return hashCode; } @Override public DescribeScheduledInstanceAvailabilityRequest clone() { return (DescribeScheduledInstanceAvailabilityRequest) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy