/* * 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.elasticmapreduce.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Describes an instance fleet, which is a group of Amazon EC2 instances that host a particular node type (master, core, * or task) in an Amazon EMR cluster. Instance fleets can consist of a mix of instance types and On-Demand and Spot * Instances, which are provisioned to meet a defined target capacity. *
** The instance fleet configuration is available only in Amazon EMR releases 4.8.0 and later, excluding 5.0.x versions. *
** The unique identifier of the instance fleet. *
*/ private String id; /** ** A friendly name for the instance fleet. *
*/ private String name; /** ** The current status of the instance fleet. *
*/ private InstanceFleetStatus status; /** ** The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK. *
*/ private String instanceFleetType; /** *
* The target capacity of On-Demand units for the instance fleet, which determines how many On-Demand Instances to
* provision. When the instance fleet launches, Amazon EMR tries to provision On-Demand Instances as specified by
* InstanceTypeConfig. Each instance configuration has a specified WeightedCapacity
. When an
* On-Demand Instance is provisioned, the WeightedCapacity
units count toward the target capacity.
* Amazon EMR provisions instances until the target capacity is totally fulfilled, even if this results in an
* overage. For example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an
* instance with a WeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is
* exceeded by 3 units. You can use InstanceFleet$ProvisionedOnDemandCapacity to determine the Spot capacity
* units that have been provisioned for the instance fleet.
*
* If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using
* TargetSpotCapacity
. At least one of TargetSpotCapacity
and
* TargetOnDemandCapacity
should be greater than 0. For a master instance fleet, only one of
* TargetSpotCapacity
and TargetOnDemandCapacity
can be specified, and its value must be
* 1.
*
* The target capacity of Spot units for the instance fleet, which determines how many Spot Instances to provision.
* When the instance fleet launches, Amazon EMR tries to provision Spot Instances as specified by
* InstanceTypeConfig. Each instance configuration has a specified WeightedCapacity
. When a Spot
* instance is provisioned, the WeightedCapacity
units count toward the target capacity. Amazon EMR
* provisions instances until the target capacity is totally fulfilled, even if this results in an overage. For
* example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an instance with a
* WeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is exceeded by 3
* units. You can use InstanceFleet$ProvisionedSpotCapacity to determine the Spot capacity units that have
* been provisioned for the instance fleet.
*
* If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least one of
* TargetSpotCapacity
and TargetOnDemandCapacity
should be greater than 0. For a master
* instance fleet, only one of TargetSpotCapacity
and TargetOnDemandCapacity
can be
* specified, and its value must be 1.
*
* The number of On-Demand units that have been provisioned for the instance fleet to fulfill
* TargetOnDemandCapacity
. This provisioned capacity might be less than or greater than
* TargetOnDemandCapacity
.
*
* The number of Spot units that have been provisioned for this instance fleet to fulfill
* TargetSpotCapacity
. This provisioned capacity might be less than or greater than
* TargetSpotCapacity
.
*
* An array of specifications for the instance types that comprise an instance fleet. *
*/ private com.amazonaws.internal.SdkInternalList* Describes the launch specification for an instance fleet. *
*/ private InstanceFleetProvisioningSpecifications launchSpecifications; /** ** The resize specification for the instance fleet. *
*/ private InstanceFleetResizingSpecifications resizeSpecifications; /** ** The unique identifier of the instance fleet. *
* * @param id * The unique identifier of the instance fleet. */ public void setId(String id) { this.id = id; } /** ** The unique identifier of the instance fleet. *
* * @return The unique identifier of the instance fleet. */ public String getId() { return this.id; } /** ** The unique identifier of the instance fleet. *
* * @param id * The unique identifier of the instance fleet. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceFleet withId(String id) { setId(id); return this; } /** ** A friendly name for the instance fleet. *
* * @param name * A friendly name for the instance fleet. */ public void setName(String name) { this.name = name; } /** ** A friendly name for the instance fleet. *
* * @return A friendly name for the instance fleet. */ public String getName() { return this.name; } /** ** A friendly name for the instance fleet. *
* * @param name * A friendly name for the instance fleet. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceFleet withName(String name) { setName(name); return this; } /** ** The current status of the instance fleet. *
* * @param status * The current status of the instance fleet. */ public void setStatus(InstanceFleetStatus status) { this.status = status; } /** ** The current status of the instance fleet. *
* * @return The current status of the instance fleet. */ public InstanceFleetStatus getStatus() { return this.status; } /** ** The current status of the instance fleet. *
* * @param status * The current status of the instance fleet. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceFleet withStatus(InstanceFleetStatus status) { setStatus(status); return this; } /** ** The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK. *
* * @param instanceFleetType * The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK. * @see InstanceFleetType */ public void setInstanceFleetType(String instanceFleetType) { this.instanceFleetType = instanceFleetType; } /** ** The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK. *
* * @return The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK. * @see InstanceFleetType */ public String getInstanceFleetType() { return this.instanceFleetType; } /** ** The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK. *
* * @param instanceFleetType * The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK. * @return Returns a reference to this object so that method calls can be chained together. * @see InstanceFleetType */ public InstanceFleet withInstanceFleetType(String instanceFleetType) { setInstanceFleetType(instanceFleetType); return this; } /** ** The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK. *
* * @param instanceFleetType * The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK. * @see InstanceFleetType */ public void setInstanceFleetType(InstanceFleetType instanceFleetType) { withInstanceFleetType(instanceFleetType); } /** ** The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK. *
* * @param instanceFleetType * The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK. * @return Returns a reference to this object so that method calls can be chained together. * @see InstanceFleetType */ public InstanceFleet withInstanceFleetType(InstanceFleetType instanceFleetType) { this.instanceFleetType = instanceFleetType.toString(); return this; } /** *
* The target capacity of On-Demand units for the instance fleet, which determines how many On-Demand Instances to
* provision. When the instance fleet launches, Amazon EMR tries to provision On-Demand Instances as specified by
* InstanceTypeConfig. Each instance configuration has a specified WeightedCapacity
. When an
* On-Demand Instance is provisioned, the WeightedCapacity
units count toward the target capacity.
* Amazon EMR provisions instances until the target capacity is totally fulfilled, even if this results in an
* overage. For example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an
* instance with a WeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is
* exceeded by 3 units. You can use InstanceFleet$ProvisionedOnDemandCapacity to determine the Spot capacity
* units that have been provisioned for the instance fleet.
*
* If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using
* TargetSpotCapacity
. At least one of TargetSpotCapacity
and
* TargetOnDemandCapacity
should be greater than 0. For a master instance fleet, only one of
* TargetSpotCapacity
and TargetOnDemandCapacity
can be specified, and its value must be
* 1.
*
WeightedCapacity
. When an On-Demand Instance is provisioned, the
* WeightedCapacity
units count toward the target capacity. Amazon EMR provisions instances
* until the target capacity is totally fulfilled, even if this results in an overage. For example, if there
* are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an instance with a
* WeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is exceeded
* by 3 units. You can use InstanceFleet$ProvisionedOnDemandCapacity to determine the Spot capacity
* units that have been provisioned for the instance fleet.
* If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using
* TargetSpotCapacity
. At least one of TargetSpotCapacity
and
* TargetOnDemandCapacity
should be greater than 0. For a master instance fleet, only one of
* TargetSpotCapacity
and TargetOnDemandCapacity
can be specified, and its value
* must be 1.
*
* The target capacity of On-Demand units for the instance fleet, which determines how many On-Demand Instances to
* provision. When the instance fleet launches, Amazon EMR tries to provision On-Demand Instances as specified by
* InstanceTypeConfig. Each instance configuration has a specified WeightedCapacity
. When an
* On-Demand Instance is provisioned, the WeightedCapacity
units count toward the target capacity.
* Amazon EMR provisions instances until the target capacity is totally fulfilled, even if this results in an
* overage. For example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an
* instance with a WeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is
* exceeded by 3 units. You can use InstanceFleet$ProvisionedOnDemandCapacity to determine the Spot capacity
* units that have been provisioned for the instance fleet.
*
* If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using
* TargetSpotCapacity
. At least one of TargetSpotCapacity
and
* TargetOnDemandCapacity
should be greater than 0. For a master instance fleet, only one of
* TargetSpotCapacity
and TargetOnDemandCapacity
can be specified, and its value must be
* 1.
*
WeightedCapacity
. When an On-Demand Instance is provisioned, the
* WeightedCapacity
units count toward the target capacity. Amazon EMR provisions instances
* until the target capacity is totally fulfilled, even if this results in an overage. For example, if there
* are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an instance with a
* WeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is
* exceeded by 3 units. You can use InstanceFleet$ProvisionedOnDemandCapacity to determine the Spot
* capacity units that have been provisioned for the instance fleet.
* If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using
* TargetSpotCapacity
. At least one of TargetSpotCapacity
and
* TargetOnDemandCapacity
should be greater than 0. For a master instance fleet, only one of
* TargetSpotCapacity
and TargetOnDemandCapacity
can be specified, and its value
* must be 1.
*
* The target capacity of On-Demand units for the instance fleet, which determines how many On-Demand Instances to
* provision. When the instance fleet launches, Amazon EMR tries to provision On-Demand Instances as specified by
* InstanceTypeConfig. Each instance configuration has a specified WeightedCapacity
. When an
* On-Demand Instance is provisioned, the WeightedCapacity
units count toward the target capacity.
* Amazon EMR provisions instances until the target capacity is totally fulfilled, even if this results in an
* overage. For example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an
* instance with a WeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is
* exceeded by 3 units. You can use InstanceFleet$ProvisionedOnDemandCapacity to determine the Spot capacity
* units that have been provisioned for the instance fleet.
*
* If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using
* TargetSpotCapacity
. At least one of TargetSpotCapacity
and
* TargetOnDemandCapacity
should be greater than 0. For a master instance fleet, only one of
* TargetSpotCapacity
and TargetOnDemandCapacity
can be specified, and its value must be
* 1.
*
WeightedCapacity
. When an On-Demand Instance is provisioned, the
* WeightedCapacity
units count toward the target capacity. Amazon EMR provisions instances
* until the target capacity is totally fulfilled, even if this results in an overage. For example, if there
* are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an instance with a
* WeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is exceeded
* by 3 units. You can use InstanceFleet$ProvisionedOnDemandCapacity to determine the Spot capacity
* units that have been provisioned for the instance fleet.
* If not specified or set to 0, only Spot Instances are provisioned for the instance fleet using
* TargetSpotCapacity
. At least one of TargetSpotCapacity
and
* TargetOnDemandCapacity
should be greater than 0. For a master instance fleet, only one of
* TargetSpotCapacity
and TargetOnDemandCapacity
can be specified, and its value
* must be 1.
*
* The target capacity of Spot units for the instance fleet, which determines how many Spot Instances to provision.
* When the instance fleet launches, Amazon EMR tries to provision Spot Instances as specified by
* InstanceTypeConfig. Each instance configuration has a specified WeightedCapacity
. When a Spot
* instance is provisioned, the WeightedCapacity
units count toward the target capacity. Amazon EMR
* provisions instances until the target capacity is totally fulfilled, even if this results in an overage. For
* example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an instance with a
* WeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is exceeded by 3
* units. You can use InstanceFleet$ProvisionedSpotCapacity to determine the Spot capacity units that have
* been provisioned for the instance fleet.
*
* If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least one of
* TargetSpotCapacity
and TargetOnDemandCapacity
should be greater than 0. For a master
* instance fleet, only one of TargetSpotCapacity
and TargetOnDemandCapacity
can be
* specified, and its value must be 1.
*
WeightedCapacity
. When
* a Spot instance is provisioned, the WeightedCapacity
units count toward the target capacity.
* Amazon EMR provisions instances until the target capacity is totally fulfilled, even if this results in an
* overage. For example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only
* provision an instance with a WeightedCapacity
of 5 units, the instance is provisioned, and
* the target capacity is exceeded by 3 units. You can use InstanceFleet$ProvisionedSpotCapacity to
* determine the Spot capacity units that have been provisioned for the instance fleet.
* If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least
* one of TargetSpotCapacity
and TargetOnDemandCapacity
should be greater than 0.
* For a master instance fleet, only one of TargetSpotCapacity
and
* TargetOnDemandCapacity
can be specified, and its value must be 1.
*
* The target capacity of Spot units for the instance fleet, which determines how many Spot Instances to provision.
* When the instance fleet launches, Amazon EMR tries to provision Spot Instances as specified by
* InstanceTypeConfig. Each instance configuration has a specified WeightedCapacity
. When a Spot
* instance is provisioned, the WeightedCapacity
units count toward the target capacity. Amazon EMR
* provisions instances until the target capacity is totally fulfilled, even if this results in an overage. For
* example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an instance with a
* WeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is exceeded by 3
* units. You can use InstanceFleet$ProvisionedSpotCapacity to determine the Spot capacity units that have
* been provisioned for the instance fleet.
*
* If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least one of
* TargetSpotCapacity
and TargetOnDemandCapacity
should be greater than 0. For a master
* instance fleet, only one of TargetSpotCapacity
and TargetOnDemandCapacity
can be
* specified, and its value must be 1.
*
WeightedCapacity
.
* When a Spot instance is provisioned, the WeightedCapacity
units count toward the target
* capacity. Amazon EMR provisions instances until the target capacity is totally fulfilled, even if this
* results in an overage. For example, if there are 2 units remaining to fulfill capacity, and Amazon EMR
* can only provision an instance with a WeightedCapacity
of 5 units, the instance is
* provisioned, and the target capacity is exceeded by 3 units. You can use
* InstanceFleet$ProvisionedSpotCapacity to determine the Spot capacity units that have been
* provisioned for the instance fleet.
* If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least
* one of TargetSpotCapacity
and TargetOnDemandCapacity
should be greater than 0.
* For a master instance fleet, only one of TargetSpotCapacity
and
* TargetOnDemandCapacity
can be specified, and its value must be 1.
*
* The target capacity of Spot units for the instance fleet, which determines how many Spot Instances to provision.
* When the instance fleet launches, Amazon EMR tries to provision Spot Instances as specified by
* InstanceTypeConfig. Each instance configuration has a specified WeightedCapacity
. When a Spot
* instance is provisioned, the WeightedCapacity
units count toward the target capacity. Amazon EMR
* provisions instances until the target capacity is totally fulfilled, even if this results in an overage. For
* example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only provision an instance with a
* WeightedCapacity
of 5 units, the instance is provisioned, and the target capacity is exceeded by 3
* units. You can use InstanceFleet$ProvisionedSpotCapacity to determine the Spot capacity units that have
* been provisioned for the instance fleet.
*
* If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least one of
* TargetSpotCapacity
and TargetOnDemandCapacity
should be greater than 0. For a master
* instance fleet, only one of TargetSpotCapacity
and TargetOnDemandCapacity
can be
* specified, and its value must be 1.
*
WeightedCapacity
. When
* a Spot instance is provisioned, the WeightedCapacity
units count toward the target capacity.
* Amazon EMR provisions instances until the target capacity is totally fulfilled, even if this results in an
* overage. For example, if there are 2 units remaining to fulfill capacity, and Amazon EMR can only
* provision an instance with a WeightedCapacity
of 5 units, the instance is provisioned, and
* the target capacity is exceeded by 3 units. You can use InstanceFleet$ProvisionedSpotCapacity to
* determine the Spot capacity units that have been provisioned for the instance fleet.
* If not specified or set to 0, only On-Demand Instances are provisioned for the instance fleet. At least
* one of TargetSpotCapacity
and TargetOnDemandCapacity
should be greater than 0.
* For a master instance fleet, only one of TargetSpotCapacity
and
* TargetOnDemandCapacity
can be specified, and its value must be 1.
*
* The number of On-Demand units that have been provisioned for the instance fleet to fulfill
* TargetOnDemandCapacity
. This provisioned capacity might be less than or greater than
* TargetOnDemandCapacity
.
*
TargetOnDemandCapacity
. This provisioned capacity might be less than or greater than
* TargetOnDemandCapacity
.
*/
public void setProvisionedOnDemandCapacity(Integer provisionedOnDemandCapacity) {
this.provisionedOnDemandCapacity = provisionedOnDemandCapacity;
}
/**
*
* The number of On-Demand units that have been provisioned for the instance fleet to fulfill
* TargetOnDemandCapacity
. This provisioned capacity might be less than or greater than
* TargetOnDemandCapacity
.
*
TargetOnDemandCapacity
. This provisioned capacity might be less than or greater than
* TargetOnDemandCapacity
.
*/
public Integer getProvisionedOnDemandCapacity() {
return this.provisionedOnDemandCapacity;
}
/**
*
* The number of On-Demand units that have been provisioned for the instance fleet to fulfill
* TargetOnDemandCapacity
. This provisioned capacity might be less than or greater than
* TargetOnDemandCapacity
.
*
TargetOnDemandCapacity
. This provisioned capacity might be less than or greater than
* TargetOnDemandCapacity
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public InstanceFleet withProvisionedOnDemandCapacity(Integer provisionedOnDemandCapacity) {
setProvisionedOnDemandCapacity(provisionedOnDemandCapacity);
return this;
}
/**
*
* The number of Spot units that have been provisioned for this instance fleet to fulfill
* TargetSpotCapacity
. This provisioned capacity might be less than or greater than
* TargetSpotCapacity
.
*
TargetSpotCapacity
. This provisioned capacity might be less than or greater than
* TargetSpotCapacity
.
*/
public void setProvisionedSpotCapacity(Integer provisionedSpotCapacity) {
this.provisionedSpotCapacity = provisionedSpotCapacity;
}
/**
*
* The number of Spot units that have been provisioned for this instance fleet to fulfill
* TargetSpotCapacity
. This provisioned capacity might be less than or greater than
* TargetSpotCapacity
.
*
TargetSpotCapacity
. This provisioned capacity might be less than or greater than
* TargetSpotCapacity
.
*/
public Integer getProvisionedSpotCapacity() {
return this.provisionedSpotCapacity;
}
/**
*
* The number of Spot units that have been provisioned for this instance fleet to fulfill
* TargetSpotCapacity
. This provisioned capacity might be less than or greater than
* TargetSpotCapacity
.
*
TargetSpotCapacity
. This provisioned capacity might be less than or greater than
* TargetSpotCapacity
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public InstanceFleet withProvisionedSpotCapacity(Integer provisionedSpotCapacity) {
setProvisionedSpotCapacity(provisionedSpotCapacity);
return this;
}
/**
* * An array of specifications for the instance types that comprise an instance fleet. *
* * @return An array of specifications for the instance types that comprise an instance fleet. */ public java.util.List* An array of specifications for the instance types that comprise an instance fleet. *
* * @param instanceTypeSpecifications * An array of specifications for the instance types that comprise an instance fleet. */ public void setInstanceTypeSpecifications(java.util.Collection* An array of specifications for the instance types that comprise an instance fleet. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setInstanceTypeSpecifications(java.util.Collection)} or * {@link #withInstanceTypeSpecifications(java.util.Collection)} if you want to override the existing values. *
* * @param instanceTypeSpecifications * An array of specifications for the instance types that comprise an instance fleet. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceFleet withInstanceTypeSpecifications(InstanceTypeSpecification... instanceTypeSpecifications) { if (this.instanceTypeSpecifications == null) { setInstanceTypeSpecifications(new com.amazonaws.internal.SdkInternalList* An array of specifications for the instance types that comprise an instance fleet. *
* * @param instanceTypeSpecifications * An array of specifications for the instance types that comprise an instance fleet. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceFleet withInstanceTypeSpecifications(java.util.Collection* Describes the launch specification for an instance fleet. *
* * @param launchSpecifications * Describes the launch specification for an instance fleet. */ public void setLaunchSpecifications(InstanceFleetProvisioningSpecifications launchSpecifications) { this.launchSpecifications = launchSpecifications; } /** ** Describes the launch specification for an instance fleet. *
* * @return Describes the launch specification for an instance fleet. */ public InstanceFleetProvisioningSpecifications getLaunchSpecifications() { return this.launchSpecifications; } /** ** Describes the launch specification for an instance fleet. *
* * @param launchSpecifications * Describes the launch specification for an instance fleet. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceFleet withLaunchSpecifications(InstanceFleetProvisioningSpecifications launchSpecifications) { setLaunchSpecifications(launchSpecifications); return this; } /** ** The resize specification for the instance fleet. *
* * @param resizeSpecifications * The resize specification for the instance fleet. */ public void setResizeSpecifications(InstanceFleetResizingSpecifications resizeSpecifications) { this.resizeSpecifications = resizeSpecifications; } /** ** The resize specification for the instance fleet. *
* * @return The resize specification for the instance fleet. */ public InstanceFleetResizingSpecifications getResizeSpecifications() { return this.resizeSpecifications; } /** ** The resize specification for the instance fleet. *
* * @param resizeSpecifications * The resize specification for the instance fleet. * @return Returns a reference to this object so that method calls can be chained together. */ public InstanceFleet withResizeSpecifications(InstanceFleetResizingSpecifications resizeSpecifications) { setResizeSpecifications(resizeSpecifications); 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 (getId() != null) sb.append("Id: ").append(getId()).append(","); if (getName() != null) sb.append("Name: ").append(getName()).append(","); if (getStatus() != null) sb.append("Status: ").append(getStatus()).append(","); if (getInstanceFleetType() != null) sb.append("InstanceFleetType: ").append(getInstanceFleetType()).append(","); if (getTargetOnDemandCapacity() != null) sb.append("TargetOnDemandCapacity: ").append(getTargetOnDemandCapacity()).append(","); if (getTargetSpotCapacity() != null) sb.append("TargetSpotCapacity: ").append(getTargetSpotCapacity()).append(","); if (getProvisionedOnDemandCapacity() != null) sb.append("ProvisionedOnDemandCapacity: ").append(getProvisionedOnDemandCapacity()).append(","); if (getProvisionedSpotCapacity() != null) sb.append("ProvisionedSpotCapacity: ").append(getProvisionedSpotCapacity()).append(","); if (getInstanceTypeSpecifications() != null) sb.append("InstanceTypeSpecifications: ").append(getInstanceTypeSpecifications()).append(","); if (getLaunchSpecifications() != null) sb.append("LaunchSpecifications: ").append(getLaunchSpecifications()).append(","); if (getResizeSpecifications() != null) sb.append("ResizeSpecifications: ").append(getResizeSpecifications()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof InstanceFleet == false) return false; InstanceFleet other = (InstanceFleet) obj; if (other.getId() == null ^ this.getId() == null) return false; if (other.getId() != null && other.getId().equals(this.getId()) == false) return false; if (other.getName() == null ^ this.getName() == null) return false; if (other.getName() != null && other.getName().equals(this.getName()) == false) return false; if (other.getStatus() == null ^ this.getStatus() == null) return false; if (other.getStatus() != null && other.getStatus().equals(this.getStatus()) == false) return false; if (other.getInstanceFleetType() == null ^ this.getInstanceFleetType() == null) return false; if (other.getInstanceFleetType() != null && other.getInstanceFleetType().equals(this.getInstanceFleetType()) == false) return false; if (other.getTargetOnDemandCapacity() == null ^ this.getTargetOnDemandCapacity() == null) return false; if (other.getTargetOnDemandCapacity() != null && other.getTargetOnDemandCapacity().equals(this.getTargetOnDemandCapacity()) == false) return false; if (other.getTargetSpotCapacity() == null ^ this.getTargetSpotCapacity() == null) return false; if (other.getTargetSpotCapacity() != null && other.getTargetSpotCapacity().equals(this.getTargetSpotCapacity()) == false) return false; if (other.getProvisionedOnDemandCapacity() == null ^ this.getProvisionedOnDemandCapacity() == null) return false; if (other.getProvisionedOnDemandCapacity() != null && other.getProvisionedOnDemandCapacity().equals(this.getProvisionedOnDemandCapacity()) == false) return false; if (other.getProvisionedSpotCapacity() == null ^ this.getProvisionedSpotCapacity() == null) return false; if (other.getProvisionedSpotCapacity() != null && other.getProvisionedSpotCapacity().equals(this.getProvisionedSpotCapacity()) == false) return false; if (other.getInstanceTypeSpecifications() == null ^ this.getInstanceTypeSpecifications() == null) return false; if (other.getInstanceTypeSpecifications() != null && other.getInstanceTypeSpecifications().equals(this.getInstanceTypeSpecifications()) == false) return false; if (other.getLaunchSpecifications() == null ^ this.getLaunchSpecifications() == null) return false; if (other.getLaunchSpecifications() != null && other.getLaunchSpecifications().equals(this.getLaunchSpecifications()) == false) return false; if (other.getResizeSpecifications() == null ^ this.getResizeSpecifications() == null) return false; if (other.getResizeSpecifications() != null && other.getResizeSpecifications().equals(this.getResizeSpecifications()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getId() == null) ? 0 : getId().hashCode()); hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode()); hashCode = prime * hashCode + ((getStatus() == null) ? 0 : getStatus().hashCode()); hashCode = prime * hashCode + ((getInstanceFleetType() == null) ? 0 : getInstanceFleetType().hashCode()); hashCode = prime * hashCode + ((getTargetOnDemandCapacity() == null) ? 0 : getTargetOnDemandCapacity().hashCode()); hashCode = prime * hashCode + ((getTargetSpotCapacity() == null) ? 0 : getTargetSpotCapacity().hashCode()); hashCode = prime * hashCode + ((getProvisionedOnDemandCapacity() == null) ? 0 : getProvisionedOnDemandCapacity().hashCode()); hashCode = prime * hashCode + ((getProvisionedSpotCapacity() == null) ? 0 : getProvisionedSpotCapacity().hashCode()); hashCode = prime * hashCode + ((getInstanceTypeSpecifications() == null) ? 0 : getInstanceTypeSpecifications().hashCode()); hashCode = prime * hashCode + ((getLaunchSpecifications() == null) ? 0 : getLaunchSpecifications().hashCode()); hashCode = prime * hashCode + ((getResizeSpecifications() == null) ? 0 : getResizeSpecifications().hashCode()); return hashCode; } @Override public InstanceFleet clone() { try { return (InstanceFleet) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.elasticmapreduce.model.transform.InstanceFleetMarshaller.getInstance().marshall(this, protocolMarshaller); } }