Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2010-2015 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;
 

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

 
 public class JobFlowInstancesDetail implements SerializableCloneable {

    
The Amazon EC2 master node instance type.

Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

 
     private String masterInstanceType;

    
The DNS name of the master node.

Constraints:
Length: 0 - 10280
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

 
     private String masterPublicDnsName;

    
The Amazon EC2 instance identifier of the master node.

Constraints:
Length: 0 - 10280
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

 
     private String masterInstanceId;

    
The Amazon EC2 slave node instance type.

Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

 
     private String slaveInstanceType;

    
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.
 
     private Integer instanceCount;

    
Details about the job flow's instance groups.
 
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.
 
     private Integer normalizedInstanceHours;

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

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

 
     private String ec2KeyName;

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

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

    private String ec2SubnetId;

    
The Amazon EC2 Availability Zone for the job flow.
    private PlacementType placement;

    
Specifies whether the job flow should terminate after completing all steps.
    private Boolean keepJobFlowAliveWhenNoSteps;

    
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.
    private Boolean terminationProtected;

    
The Hadoop version for the job flow.

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

    private String hadoopVersion;

    
Default constructor for a new JobFlowInstancesDetail object. Callers should use the setter or fluent setter (with...) methods to initialize this object after creating it.
    public JobFlowInstancesDetail() {}
    
    
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.
    public JobFlowInstancesDetail(String masterInstanceTypeString slaveInstanceTypeInteger instanceCount) {
        setMasterInstanceType(masterInstanceType);
        setSlaveInstanceType(slaveInstanceType);
        setInstanceCount(instanceCount);
    }

    
The Amazon EC2 master node instance type.

Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Returns:
The Amazon EC2 master node instance type.
    public String getMasterInstanceType() {
        return ;
    }
    
    
The Amazon EC2 master node instance type.

Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
masterInstanceType The Amazon EC2 master node instance type.
    public void setMasterInstanceType(String masterInstanceType) {
        this. = masterInstanceType;
    }
    
    
The Amazon EC2 master node instance type.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
masterInstanceType The Amazon EC2 master node instance type.
Returns:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withMasterInstanceType(String masterInstanceType) {
        this. = masterInstanceType;
        return this;
    }

    
The DNS name of the master node.

Constraints:
Length: 0 - 10280
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Returns:
The DNS name of the master node.
    public String getMasterPublicDnsName() {
        return ;
    }
    
    
The DNS name of the master node.

Constraints:
Length: 0 - 10280
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
masterPublicDnsName The DNS name of the master node.
    public void setMasterPublicDnsName(String masterPublicDnsName) {
        this. = masterPublicDnsName;
    }
    
    
The DNS name of the master node.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 0 - 10280
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
masterPublicDnsName The DNS name of the master node.
Returns:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withMasterPublicDnsName(String masterPublicDnsName) {
        this. = masterPublicDnsName;
        return this;
    }

    
The Amazon EC2 instance identifier of the master node.

Constraints:
Length: 0 - 10280
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Returns:
The Amazon EC2 instance identifier of the master node.
    public String getMasterInstanceId() {
        return ;
    }
    
    
The Amazon EC2 instance identifier of the master node.

Constraints:
Length: 0 - 10280
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
masterInstanceId The Amazon EC2 instance identifier of the master node.
    public void setMasterInstanceId(String masterInstanceId) {
        this. = masterInstanceId;
    }
    
    
The Amazon EC2 instance identifier of the master node.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 0 - 10280
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
masterInstanceId The Amazon EC2 instance identifier of the master node.
Returns:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withMasterInstanceId(String masterInstanceId) {
        this. = masterInstanceId;
        return this;
    }

    
The Amazon EC2 slave node instance type.

Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Returns:
The Amazon EC2 slave node instance type.
    public String getSlaveInstanceType() {
        return ;
    }
    
    
The Amazon EC2 slave node instance type.

Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
slaveInstanceType The Amazon EC2 slave node instance type.
    public void setSlaveInstanceType(String slaveInstanceType) {
        this. = slaveInstanceType;
    }
    
    
The Amazon EC2 slave node instance type.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 1 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
slaveInstanceType The Amazon EC2 slave node instance type.
Returns:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withSlaveInstanceType(String slaveInstanceType) {
        this. = slaveInstanceType;
        return this;
    }

    
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.
    public Integer getInstanceCount() {
        return ;
    }
    
    
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.
    public void setInstanceCount(Integer instanceCount) {
        this. = 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 a reference to this object so that method calls can be chained together.

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:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withInstanceCount(Integer instanceCount) {
        this. = instanceCount;
        return this;
    }

    
Details about the job flow's instance groups.

Returns:
Details about the job flow's instance groups.
        if ( == null) {
              .setAutoConstruct(true);
        }
        return ;
    }
    
    
Details about the job flow's instance groups.

Parameters:
instanceGroups Details about the job flow's instance groups.
    public void setInstanceGroups(java.util.Collection<InstanceGroupDetailinstanceGroups) {
        if (instanceGroups == null) {
            this. = null;
            return;
        }
        instanceGroupsCopy.addAll(instanceGroups);
        this. = instanceGroupsCopy;
    }
    
    
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.

Returns a reference to this object so that method calls can be chained together.

Parameters:
instanceGroups Details about the job flow's instance groups.
Returns:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withInstanceGroups(InstanceGroupDetail... instanceGroups) {
        if (getInstanceGroups() == nullsetInstanceGroups(new java.util.ArrayList<InstanceGroupDetail>(instanceGroups.length));
        for (InstanceGroupDetail value : instanceGroups) {
            getInstanceGroups().add(value);
        }
        return this;
    }
    
    
Details about the job flow's instance groups.

Returns a reference to this object so that method calls can be chained together.

Parameters:
instanceGroups Details about the job flow's instance groups.
Returns:
A reference to this updated object so that method calls can be chained together.
        if (instanceGroups == null) {
            this. = null;
        } else {
            instanceGroupsCopy.addAll(instanceGroups);
            this. = instanceGroupsCopy;
        }
        return this;
    }

    
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.
        return ;
    }
    
    
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.
    public void setNormalizedInstanceHours(Integer normalizedInstanceHours) {
        this. = 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 a reference to this object so that method calls can be chained together.

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:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withNormalizedInstanceHours(Integer normalizedInstanceHours) {
        this. = normalizedInstanceHours;
        return this;
    }

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

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Returns:
The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.
    public String getEc2KeyName() {
        return ;
    }
    
    
The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
ec2KeyName The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.
    public void setEc2KeyName(String ec2KeyName) {
        this. = ec2KeyName;
    }
    
    
The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
ec2KeyName The name of an Amazon EC2 key pair that can be used to ssh to the master node of job flow.
Returns:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withEc2KeyName(String ec2KeyName) {
        this. = ec2KeyName;
        return this;
    }

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

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Returns:
For job flows launched within Amazon Virtual Private Cloud, this value specifies the identifier of the subnet where the job flow was launched.
    public String getEc2SubnetId() {
        return ;
    }
    
    
For job flows launched within Amazon Virtual Private Cloud, this value specifies the identifier of the subnet where the job flow was launched.

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

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.
    public void setEc2SubnetId(String ec2SubnetId) {
        this. = 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 a reference to this object so that method calls can be chained together.

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

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:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withEc2SubnetId(String ec2SubnetId) {
        this. = ec2SubnetId;
        return this;
    }

    
The Amazon EC2 Availability Zone for the job flow.

Returns:
The Amazon EC2 Availability Zone for the job flow.
    public PlacementType getPlacement() {
        return ;
    }
    
    
The Amazon EC2 Availability Zone for the job flow.

Parameters:
placement The Amazon EC2 Availability Zone for the job flow.
    public void setPlacement(PlacementType placement) {
        this. = placement;
    }
    
    
The Amazon EC2 Availability Zone for the job flow.

Returns a reference to this object so that method calls can be chained together.

Parameters:
placement The Amazon EC2 Availability Zone for the job flow.
Returns:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withPlacement(PlacementType placement) {
        this. = placement;
        return this;
    }

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

Returns:
Specifies whether the job flow should terminate after completing all steps.
        return ;
    }
    
    
Specifies whether the job flow should terminate after completing all steps.

Parameters:
keepJobFlowAliveWhenNoSteps Specifies whether the job flow should terminate after completing all steps.
    public void setKeepJobFlowAliveWhenNoSteps(Boolean keepJobFlowAliveWhenNoSteps) {
        this. = keepJobFlowAliveWhenNoSteps;
    }
    
    
Specifies whether the job flow should terminate after completing all steps.

Returns a reference to this object so that method calls can be chained together.

Parameters:
keepJobFlowAliveWhenNoSteps Specifies whether the job flow should terminate after completing all steps.
Returns:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withKeepJobFlowAliveWhenNoSteps(Boolean keepJobFlowAliveWhenNoSteps) {
        this. = keepJobFlowAliveWhenNoSteps;
        return this;
    }

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

Returns:
Specifies whether the job flow should terminate after completing all steps.
        return ;
    }

    
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.
    public Boolean isTerminationProtected() {
        return ;
    }
    
    
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.
    public void setTerminationProtected(Boolean terminationProtected) {
        this. = 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 a reference to this object so that method calls can be chained together.

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:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withTerminationProtected(Boolean terminationProtected) {
        this. = terminationProtected;
        return this;
    }

    
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.
    public Boolean getTerminationProtected() {
        return ;
    }

    
The Hadoop version for the job flow.

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Returns:
The Hadoop version for the job flow.
    public String getHadoopVersion() {
        return ;
    }
    
    
The Hadoop version for the job flow.

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
hadoopVersion The Hadoop version for the job flow.
    public void setHadoopVersion(String hadoopVersion) {
        this. = hadoopVersion;
    }
    
    
The Hadoop version for the job flow.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 0 - 256
Pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*

Parameters:
hadoopVersion The Hadoop version for the job flow.
Returns:
A reference to this updated object so that method calls can be chained together.
    public JobFlowInstancesDetail withHadoopVersion(String hadoopVersion) {
        this. = hadoopVersion;
        return this;
    }

    
Returns a string representation of this object; useful for testing and debugging.

Returns:
A string representation of this object.
See also:
java.lang.Object.toString()
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("{");
        if (getMasterInstanceType() != nullsb.append("MasterInstanceType: " + getMasterInstanceType() + ",");
        if (getMasterPublicDnsName() != nullsb.append("MasterPublicDnsName: " + getMasterPublicDnsName() + ",");
        if (getMasterInstanceId() != nullsb.append("MasterInstanceId: " + getMasterInstanceId() + ",");
        if (getSlaveInstanceType() != nullsb.append("SlaveInstanceType: " + getSlaveInstanceType() + ",");
        if (getInstanceCount() != nullsb.append("InstanceCount: " + getInstanceCount() + ",");
        if (getInstanceGroups() != nullsb.append("InstanceGroups: " + getInstanceGroups() + ",");
        if (getNormalizedInstanceHours() != nullsb.append("NormalizedInstanceHours: " + getNormalizedInstanceHours() + ",");
        if (getEc2KeyName() != nullsb.append("Ec2KeyName: " + getEc2KeyName() + ",");
        if (getEc2SubnetId() != nullsb.append("Ec2SubnetId: " + getEc2SubnetId() + ",");
        if (getPlacement() != nullsb.append("Placement: " + getPlacement() + ",");
        if (isKeepJobFlowAliveWhenNoSteps() != nullsb.append("KeepJobFlowAliveWhenNoSteps: " + isKeepJobFlowAliveWhenNoSteps() + ",");
        if (isTerminationProtected() != nullsb.append("TerminationProtected: " + isTerminationProtected() + ",");
        if (getHadoopVersion() != nullsb.append("HadoopVersion: " + getHadoopVersion() );
        sb.append("}");
        return sb.toString();
    }
    
    @Override
    public int hashCode() {
        final int prime = 31;
        int hashCode = 1;
        
        hashCode = prime * hashCode + ((getMasterInstanceType() == null) ? 0 : getMasterInstanceType().hashCode()); 
        hashCode = prime * hashCode + ((getMasterPublicDnsName() == null) ? 0 : getMasterPublicDnsName().hashCode()); 
        hashCode = prime * hashCode + ((getMasterInstanceId() == null) ? 0 : getMasterInstanceId().hashCode()); 
        hashCode = prime * hashCode + ((getSlaveInstanceType() == null) ? 0 : getSlaveInstanceType().hashCode()); 
        hashCode = prime * hashCode + ((getInstanceCount() == null) ? 0 : getInstanceCount().hashCode()); 
        hashCode = prime * hashCode + ((getInstanceGroups() == null) ? 0 : getInstanceGroups().hashCode()); 
        hashCode = prime * hashCode + ((getNormalizedInstanceHours() == null) ? 0 : getNormalizedInstanceHours().hashCode()); 
        hashCode = prime * hashCode + ((getEc2KeyName() == null) ? 0 : getEc2KeyName().hashCode()); 
        hashCode = prime * hashCode + ((getEc2SubnetId() == null) ? 0 : getEc2SubnetId().hashCode()); 
        hashCode = prime * hashCode + ((getPlacement() == null) ? 0 : getPlacement().hashCode()); 
        hashCode = prime * hashCode + ((isKeepJobFlowAliveWhenNoSteps() == null) ? 0 : isKeepJobFlowAliveWhenNoSteps().hashCode()); 
        hashCode = prime * hashCode + ((isTerminationProtected() == null) ? 0 : isTerminationProtected().hashCode()); 
        hashCode = prime * hashCode + ((getHadoopVersion() == null) ? 0 : getHadoopVersion().hashCode()); 
        return hashCode;
    }
    
    @Override
    public boolean equals(Object obj) {
        if (this == objreturn true;
        if (obj == nullreturn false;
        if (obj instanceof JobFlowInstancesDetail == falsereturn false;
        JobFlowInstancesDetail other = (JobFlowInstancesDetail)obj;
        
        if (other.getMasterInstanceType() == null ^ this.getMasterInstanceType() == nullreturn false;
        if (other.getMasterInstanceType() != null && other.getMasterInstanceType().equals(this.getMasterInstanceType()) == falsereturn false
        if (other.getMasterPublicDnsName() == null ^ this.getMasterPublicDnsName() == nullreturn false;
        if (other.getMasterPublicDnsName() != null && other.getMasterPublicDnsName().equals(this.getMasterPublicDnsName()) == falsereturn false
        if (other.getMasterInstanceId() == null ^ this.getMasterInstanceId() == nullreturn false;
        if (other.getMasterInstanceId() != null && other.getMasterInstanceId().equals(this.getMasterInstanceId()) == falsereturn false
        if (other.getSlaveInstanceType() == null ^ this.getSlaveInstanceType() == nullreturn false;
        if (other.getSlaveInstanceType() != null && other.getSlaveInstanceType().equals(this.getSlaveInstanceType()) == falsereturn false
        if (other.getInstanceCount() == null ^ this.getInstanceCount() == nullreturn false;
        if (other.getInstanceCount() != null && other.getInstanceCount().equals(this.getInstanceCount()) == falsereturn false
        if (other.getInstanceGroups() == null ^ this.getInstanceGroups() == nullreturn false;
        if (other.getInstanceGroups() != null && other.getInstanceGroups().equals(this.getInstanceGroups()) == falsereturn false
        if (other.getNormalizedInstanceHours() == null ^ this.getNormalizedInstanceHours() == nullreturn false;
        if (other.getNormalizedInstanceHours() != null && other.getNormalizedInstanceHours().equals(this.getNormalizedInstanceHours()) == falsereturn false
        if (other.getEc2KeyName() == null ^ this.getEc2KeyName() == nullreturn false;
        if (other.getEc2KeyName() != null && other.getEc2KeyName().equals(this.getEc2KeyName()) == falsereturn false
        if (other.getEc2SubnetId() == null ^ this.getEc2SubnetId() == nullreturn false;
        if (other.getEc2SubnetId() != null && other.getEc2SubnetId().equals(this.getEc2SubnetId()) == falsereturn false
        if (other.getPlacement() == null ^ this.getPlacement() == nullreturn false;
        if (other.getPlacement() != null && other.getPlacement().equals(this.getPlacement()) == falsereturn false
        if (other.isKeepJobFlowAliveWhenNoSteps() == null ^ this.isKeepJobFlowAliveWhenNoSteps() == nullreturn false;
        if (other.isKeepJobFlowAliveWhenNoSteps() != null && other.isKeepJobFlowAliveWhenNoSteps().equals(this.isKeepJobFlowAliveWhenNoSteps()) == falsereturn false
        if (other.isTerminationProtected() == null ^ this.isTerminationProtected() == nullreturn false;
        if (other.isTerminationProtected() != null && other.isTerminationProtected().equals(this.isTerminationProtected()) == falsereturn false
        if (other.getHadoopVersion() == null ^ this.getHadoopVersion() == nullreturn false;
        if (other.getHadoopVersion() != null && other.getHadoopVersion().equals(this.getHadoopVersion()) == falsereturn false
        return true;
    }
    
    @Override
    public JobFlowInstancesDetail clone() {
        try {
            return (JobFlowInstancesDetailsuper.clone();
        
        } catch (CloneNotSupportedException e) {
            throw new IllegalStateException(
                    "Got a CloneNotSupportedException from Object.clone() "
                    + "even though we're Cloneable!",
                    e);
        }
        
    }
}
    
New to GrepCode? Check out our FAQ X