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

org.finra.herd.sdk.model.EmrClusterDefinitionSpotSpecification Maven / Gradle / Ivy

There is a newer version: 0.160.0
Show newest version
/*
 * herd-external
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * OpenAPI spec version: 0.125.0
 * 
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


package org.finra.herd.sdk.model;

import java.util.Objects;
import java.util.Arrays;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * EmrClusterDefinitionSpotSpecification
 */
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2020-07-16T17:44:47.669-04:00[America/New_York]")
public class EmrClusterDefinitionSpotSpecification {
  @JsonProperty("timeoutDurationMinutes")
  private Integer timeoutDurationMinutes = null;

  @JsonProperty("timeoutAction")
  private String timeoutAction = null;

  @JsonProperty("blockDurationMinutes")
  private Integer blockDurationMinutes = null;

  public EmrClusterDefinitionSpotSpecification timeoutDurationMinutes(Integer timeoutDurationMinutes) {
    this.timeoutDurationMinutes = timeoutDurationMinutes;
    return this;
  }

   /**
   * The spot provisioning timeout period in minutes. If Spot instances are not provisioned within this time period, the                   TimeOutAction is taken. Minimum value is 5 and maximum value is 1440. The timeout applies only during initial provisioning, when the cluster                   is first created                
   * @return timeoutDurationMinutes
  **/
  @ApiModelProperty(value = "The spot provisioning timeout period in minutes. If Spot instances are not provisioned within this time period, the                   TimeOutAction is taken. Minimum value is 5 and maximum value is 1440. The timeout applies only during initial provisioning, when the cluster                   is first created                ")
  public Integer getTimeoutDurationMinutes() {
    return timeoutDurationMinutes;
  }

  public void setTimeoutDurationMinutes(Integer timeoutDurationMinutes) {
    this.timeoutDurationMinutes = timeoutDurationMinutes;
  }

  public EmrClusterDefinitionSpotSpecification timeoutAction(String timeoutAction) {
    this.timeoutAction = timeoutAction;
    return this;
  }

   /**
   * The action to take when TargetSpotCapacity has not been fulfilled when the TimeoutDurationMinutes has expired. Spot instances                   are not uprovisioned within the Spot provisioining timeout. Valid values are TERMINATE_CLUSTER and SWITCH_TO_ON_DEMAND to fulfill the                   remaining capacity                
   * @return timeoutAction
  **/
  @ApiModelProperty(value = "The action to take when TargetSpotCapacity has not been fulfilled when the TimeoutDurationMinutes has expired. Spot instances                   are not uprovisioned within the Spot provisioining timeout. Valid values are TERMINATE_CLUSTER and SWITCH_TO_ON_DEMAND to fulfill the                   remaining capacity                ")
  public String getTimeoutAction() {
    return timeoutAction;
  }

  public void setTimeoutAction(String timeoutAction) {
    this.timeoutAction = timeoutAction;
  }

  public EmrClusterDefinitionSpotSpecification blockDurationMinutes(Integer blockDurationMinutes) {
    this.blockDurationMinutes = blockDurationMinutes;
    return this;
  }

   /**
   * The defined duration for Spot instances (also known as Spot blocks) in minutes. When specified, the Spot instance does not                   terminate before the defined duration expires, and defined duration pricing for Spot instances applies. Valid values are 60, 120, 180, 240,                   300, or 360. The duration period starts as soon as a Spot instance receives its instance ID. At the end of the duration, Amazon EC2 marks the                   Spot instance for termination and provides a Spot instance termination notice, which gives the instance a two-minute warning before it                   terminates                
   * @return blockDurationMinutes
  **/
  @ApiModelProperty(value = "The defined duration for Spot instances (also known as Spot blocks) in minutes. When specified, the Spot instance does not                   terminate before the defined duration expires, and defined duration pricing for Spot instances applies. Valid values are 60, 120, 180, 240,                   300, or 360. The duration period starts as soon as a Spot instance receives its instance ID. At the end of the duration, Amazon EC2 marks the                   Spot instance for termination and provides a Spot instance termination notice, which gives the instance a two-minute warning before it                   terminates                ")
  public Integer getBlockDurationMinutes() {
    return blockDurationMinutes;
  }

  public void setBlockDurationMinutes(Integer blockDurationMinutes) {
    this.blockDurationMinutes = blockDurationMinutes;
  }


  @Override
  public boolean equals(java.lang.Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    EmrClusterDefinitionSpotSpecification emrClusterDefinitionSpotSpecification = (EmrClusterDefinitionSpotSpecification) o;
    return Objects.equals(this.timeoutDurationMinutes, emrClusterDefinitionSpotSpecification.timeoutDurationMinutes) &&
        Objects.equals(this.timeoutAction, emrClusterDefinitionSpotSpecification.timeoutAction) &&
        Objects.equals(this.blockDurationMinutes, emrClusterDefinitionSpotSpecification.blockDurationMinutes);
  }

  @Override
  public int hashCode() {
    return Objects.hash(timeoutDurationMinutes, timeoutAction, blockDurationMinutes);
  }


  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class EmrClusterDefinitionSpotSpecification {\n");
    
    sb.append("    timeoutDurationMinutes: ").append(toIndentedString(timeoutDurationMinutes)).append("\n");
    sb.append("    timeoutAction: ").append(toIndentedString(timeoutAction)).append("\n");
    sb.append("    blockDurationMinutes: ").append(toIndentedString(blockDurationMinutes)).append("\n");
    sb.append("}");
    return sb.toString();
  }

  /**
   * Convert the given object to string with each line indented by 4 spaces
   * (except the first line).
   */
  private String toIndentedString(java.lang.Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }

}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy