Class JobFlowInstancesDetail

java.lang.Object
com.amazonaws.services.elasticmapreduce.model.JobFlowInstancesDetail
All Implemented Interfaces:
Serializable, Cloneable

public class JobFlowInstancesDetail extends Object implements Serializable, Cloneable

Specify the type of Amazon EC2 instances to run the job flow on.

See Also:
  • Constructor Details

    • JobFlowInstancesDetail

      public JobFlowInstancesDetail()
      Default constructor for JobFlowInstancesDetail object. Callers should use the setter or fluent setter (with...) methods to initialize the object after creating it.
    • JobFlowInstancesDetail

      public JobFlowInstancesDetail(String masterInstanceType, String slaveInstanceType, Integer instanceCount)
      Constructs a new JobFlowInstancesDetail object. Callers should use the setter or fluent setter (with...) methods to initialize any additional object members.
      Parameters:
      masterInstanceType - The Amazon EC2 master node instance type.
      slaveInstanceType - The Amazon EC2 slave node instance type.
      instanceCount - The number of Amazon EC2 instances in the cluster. If the value is 1, the same instance serves as both the master and slave node. If the value is greater than 1, one instance is the master node and all others are slave nodes.
  • Method Details

    • setMasterInstanceType

      public void setMasterInstanceType(String masterInstanceType)

      The Amazon EC2 master node instance type.

      Parameters:
      masterInstanceType - The Amazon EC2 master node instance type.
    • getMasterInstanceType

      public String getMasterInstanceType()

      The Amazon EC2 master node instance type.

      Returns:
      The Amazon EC2 master node instance type.
    • withMasterInstanceType

      public JobFlowInstancesDetail withMasterInstanceType(String masterInstanceType)

      The Amazon EC2 master node instance type.

      Parameters:
      masterInstanceType - The Amazon EC2 master node instance type.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setMasterPublicDnsName

      public void setMasterPublicDnsName(String masterPublicDnsName)

      The DNS name of the master node.

      Parameters:
      masterPublicDnsName - The DNS name of the master node.
    • getMasterPublicDnsName

      public String getMasterPublicDnsName()

      The DNS name of the master node.

      Returns:
      The DNS name of the master node.
    • withMasterPublicDnsName

      public JobFlowInstancesDetail withMasterPublicDnsName(String masterPublicDnsName)

      The DNS name of the master node.

      Parameters:
      masterPublicDnsName - The DNS name of the master node.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setMasterInstanceId

      public void setMasterInstanceId(String masterInstanceId)

      The Amazon EC2 instance identifier of the master node.

      Parameters:
      masterInstanceId - The Amazon EC2 instance identifier of the master node.
    • getMasterInstanceId

      public String getMasterInstanceId()

      The Amazon EC2 instance identifier of the master node.

      Returns:
      The Amazon EC2 instance identifier of the master node.
    • withMasterInstanceId

      public JobFlowInstancesDetail withMasterInstanceId(String masterInstanceId)

      The Amazon EC2 instance identifier of the master node.

      Parameters:
      masterInstanceId - The Amazon EC2 instance identifier of the master node.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setSlaveInstanceType

      public void setSlaveInstanceType(String slaveInstanceType)

      The Amazon EC2 slave node instance type.

      Parameters:
      slaveInstanceType - The Amazon EC2 slave node instance type.
    • getSlaveInstanceType

      public String getSlaveInstanceType()

      The Amazon EC2 slave node instance type.

      Returns:
      The Amazon EC2 slave node instance type.
    • withSlaveInstanceType

      public JobFlowInstancesDetail withSlaveInstanceType(String slaveInstanceType)

      The Amazon EC2 slave node instance type.

      Parameters:
      slaveInstanceType - The Amazon EC2 slave node instance type.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setInstanceCount

      public void setInstanceCount(Integer instanceCount)

      The number of Amazon EC2 instances in the cluster. If the value is 1, the same instance serves as both the master and slave node. If the value is greater than 1, one instance is the master node and all others are slave nodes.

      Parameters:
      instanceCount - The number of Amazon EC2 instances in the cluster. If the value is 1, the same instance serves as both the master and slave node. If the value is greater than 1, one instance is the master node and all others are slave nodes.
    • getInstanceCount

      public Integer getInstanceCount()

      The number of Amazon EC2 instances in the cluster. If the value is 1, the same instance serves as both the master and slave node. If the value is greater than 1, one instance is the master node and all others are slave nodes.

      Returns:
      The number of Amazon EC2 instances in the cluster. If the value is 1, the same instance serves as both the master and slave node. If the value is greater than 1, one instance is the master node and all others are slave nodes.
    • withInstanceCount

      public JobFlowInstancesDetail withInstanceCount(Integer instanceCount)

      The number of Amazon EC2 instances in the cluster. If the value is 1, the same instance serves as both the master and slave node. If the value is greater than 1, one instance is the master node and all others are slave nodes.

      Parameters:
      instanceCount - The number of Amazon EC2 instances in the cluster. If the value is 1, the same instance serves as both the master and slave node. If the value is greater than 1, one instance is the master node and all others are slave nodes.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • getInstanceGroups

      public List<InstanceGroupDetail> getInstanceGroups()

      Details about the job flow's instance groups.

      Returns:
      Details about the job flow's instance groups.
    • setInstanceGroups

      public void setInstanceGroups(Collection<InstanceGroupDetail> instanceGroups)

      Details about the job flow's instance groups.

      Parameters:
      instanceGroups - Details about the job flow's instance groups.
    • withInstanceGroups

      public JobFlowInstancesDetail withInstanceGroups(InstanceGroupDetail... instanceGroups)

      Details about the job flow's instance groups.

      NOTE: This method appends the values to the existing list (if any). Use setInstanceGroups(java.util.Collection) or withInstanceGroups(java.util.Collection) if you want to override the existing values.

      Parameters:
      instanceGroups - Details about the job flow's instance groups.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • withInstanceGroups

      public JobFlowInstancesDetail withInstanceGroups(Collection<InstanceGroupDetail> instanceGroups)

      Details about the job flow's instance groups.

      Parameters:
      instanceGroups - Details about the job flow's instance groups.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setNormalizedInstanceHours

      public void setNormalizedInstanceHours(Integer normalizedInstanceHours)

      An approximation of the cost of the job flow, represented in m1.small/hours. This value is incremented once for every hour an m1.small runs. Larger instances are weighted more, so an Amazon EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.

      Parameters:
      normalizedInstanceHours - An approximation of the cost of the job flow, represented in m1.small/hours. This value is incremented once for every hour an m1.small runs. Larger instances are weighted more, so an Amazon EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.
    • getNormalizedInstanceHours

      public Integer getNormalizedInstanceHours()

      An approximation of the cost of the job flow, represented in m1.small/hours. This value is incremented once for every hour an m1.small runs. Larger instances are weighted more, so an Amazon EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.

      Returns:
      An approximation of the cost of the job flow, represented in m1.small/hours. This value is incremented once for every hour an m1.small runs. Larger instances are weighted more, so an Amazon EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.
    • withNormalizedInstanceHours

      public JobFlowInstancesDetail withNormalizedInstanceHours(Integer normalizedInstanceHours)

      An approximation of the cost of the job flow, represented in m1.small/hours. This value is incremented once for every hour an m1.small runs. Larger instances are weighted more, so an Amazon EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.

      Parameters:
      normalizedInstanceHours - An approximation of the cost of the job flow, represented in m1.small/hours. This value is incremented once for every hour an m1.small runs. Larger instances are weighted more, so an Amazon EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setEc2KeyName

      public void setEc2KeyName(String ec2KeyName)

      The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.

      Parameters:
      ec2KeyName - The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.
    • getEc2KeyName

      public String getEc2KeyName()

      The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.

      Returns:
      The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.
    • withEc2KeyName

      public JobFlowInstancesDetail withEc2KeyName(String ec2KeyName)

      The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.

      Parameters:
      ec2KeyName - The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setEc2SubnetId

      public void setEc2SubnetId(String ec2SubnetId)

      For job flows launched within Amazon Virtual Private Cloud, this value specifies the identifier of the subnet where the job flow was launched.

      Parameters:
      ec2SubnetId - For job flows launched within Amazon Virtual Private Cloud, this value specifies the identifier of the subnet where the job flow was launched.
    • getEc2SubnetId

      public String getEc2SubnetId()

      For job flows launched within Amazon Virtual Private Cloud, this value specifies the identifier of the subnet where the job flow was launched.

      Returns:
      For job flows launched within Amazon Virtual Private Cloud, this value specifies the identifier of the subnet where the job flow was launched.
    • withEc2SubnetId

      public JobFlowInstancesDetail withEc2SubnetId(String ec2SubnetId)

      For job flows launched within Amazon Virtual Private Cloud, this value specifies the identifier of the subnet where the job flow was launched.

      Parameters:
      ec2SubnetId - For job flows launched within Amazon Virtual Private Cloud, this value specifies the identifier of the subnet where the job flow was launched.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setPlacement

      public void setPlacement(PlacementType placement)

      The Amazon EC2 Availability Zone for the job flow.

      Parameters:
      placement - The Amazon EC2 Availability Zone for the job flow.
    • getPlacement

      public PlacementType getPlacement()

      The Amazon EC2 Availability Zone for the job flow.

      Returns:
      The Amazon EC2 Availability Zone for the job flow.
    • withPlacement

      public JobFlowInstancesDetail withPlacement(PlacementType placement)

      The Amazon EC2 Availability Zone for the job flow.

      Parameters:
      placement - The Amazon EC2 Availability Zone for the job flow.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • setKeepJobFlowAliveWhenNoSteps

      public void setKeepJobFlowAliveWhenNoSteps(Boolean keepJobFlowAliveWhenNoSteps)

      Specifies whether the job flow should terminate after completing all steps.

      Parameters:
      keepJobFlowAliveWhenNoSteps - Specifies whether the job flow should terminate after completing all steps.
    • getKeepJobFlowAliveWhenNoSteps

      public Boolean getKeepJobFlowAliveWhenNoSteps()

      Specifies whether the job flow should terminate after completing all steps.

      Returns:
      Specifies whether the job flow should terminate after completing all steps.
    • withKeepJobFlowAliveWhenNoSteps

      public JobFlowInstancesDetail withKeepJobFlowAliveWhenNoSteps(Boolean keepJobFlowAliveWhenNoSteps)

      Specifies whether the job flow should terminate after completing all steps.

      Parameters:
      keepJobFlowAliveWhenNoSteps - Specifies whether the job flow should terminate after completing all steps.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • isKeepJobFlowAliveWhenNoSteps

      public Boolean isKeepJobFlowAliveWhenNoSteps()

      Specifies whether the job flow should terminate after completing all steps.

      Returns:
      Specifies whether the job flow should terminate after completing all steps.
    • setTerminationProtected

      public void setTerminationProtected(Boolean terminationProtected)

      Specifies whether the Amazon EC2 instances in the cluster are protected from termination by API calls, user intervention, or in the event of a job flow error.

      Parameters:
      terminationProtected - Specifies whether the Amazon EC2 instances in the cluster are protected from termination by API calls, user intervention, or in the event of a job flow error.
    • getTerminationProtected

      public Boolean getTerminationProtected()

      Specifies whether the Amazon EC2 instances in the cluster are protected from termination by API calls, user intervention, or in the event of a job flow error.

      Returns:
      Specifies whether the Amazon EC2 instances in the cluster are protected from termination by API calls, user intervention, or in the event of a job flow error.
    • withTerminationProtected

      public JobFlowInstancesDetail withTerminationProtected(Boolean terminationProtected)

      Specifies whether the Amazon EC2 instances in the cluster are protected from termination by API calls, user intervention, or in the event of a job flow error.

      Parameters:
      terminationProtected - Specifies whether the Amazon EC2 instances in the cluster are protected from termination by API calls, user intervention, or in the event of a job flow error.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • isTerminationProtected

      public Boolean isTerminationProtected()

      Specifies whether the Amazon EC2 instances in the cluster are protected from termination by API calls, user intervention, or in the event of a job flow error.

      Returns:
      Specifies whether the Amazon EC2 instances in the cluster are protected from termination by API calls, user intervention, or in the event of a job flow error.
    • setHadoopVersion

      public void setHadoopVersion(String hadoopVersion)

      The Hadoop version for the job flow.

      Parameters:
      hadoopVersion - The Hadoop version for the job flow.
    • getHadoopVersion

      public String getHadoopVersion()

      The Hadoop version for the job flow.

      Returns:
      The Hadoop version for the job flow.
    • withHadoopVersion

      public JobFlowInstancesDetail withHadoopVersion(String hadoopVersion)

      The Hadoop version for the job flow.

      Parameters:
      hadoopVersion - The Hadoop version for the job flow.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • toString

      public String toString()
      Returns a string representation of this object; useful for testing and debugging.
      Overrides:
      toString in class Object
      Returns:
      A string representation of this object.
      See Also:
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • clone

      public JobFlowInstancesDetail clone()
      Overrides:
      clone in class Object