@Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;

        if (obj instanceof StartMLDataProcessingJobRequest == false)
            return false;
        StartMLDataProcessingJobRequest other = (StartMLDataProcessingJobRequest) obj;
        if (other.getId() == null ^ this.getId() == null)
            return false;
        if (other.getId() != null && other.getId().equals(this.getId()) == false)
            return false;
        if (other.getPreviousDataProcessingJobId() == null ^ this.getPreviousDataProcessingJobId() == null)
            return false;
        if (other.getPreviousDataProcessingJobId() != null && other.getPreviousDataProcessingJobId().equals(this.getPreviousDataProcessingJobId()) == false)
            return false;
        if (other.getInputDataS3Location() == null ^ this.getInputDataS3Location() == null)
            return false;
        if (other.getInputDataS3Location() != null && other.getInputDataS3Location().equals(this.getInputDataS3Location()) == false)
            return false;
        if (other.getProcessedDataS3Location() == null ^ this.getProcessedDataS3Location() == null)
            return false;
        if (other.getProcessedDataS3Location() != null && other.getProcessedDataS3Location().equals(this.getProcessedDataS3Location()) == false)
            return false;
        if (other.getSagemakerIamRoleArn() == null ^ this.getSagemakerIamRoleArn() == null)
            return false;
        if (other.getSagemakerIamRoleArn() != null && other.getSagemakerIamRoleArn().equals(this.getSagemakerIamRoleArn()) == false)
            return false;
        if (other.getNeptuneIamRoleArn() == null ^ this.getNeptuneIamRoleArn() == null)
            return false;
        if (other.getNeptuneIamRoleArn() != null && other.getNeptuneIamRoleArn().equals(this.getNeptuneIamRoleArn()) == false)
            return false;
        if (other.getProcessingInstanceType() == null ^ this.getProcessingInstanceType() == null)
            return false;
        if (other.getProcessingInstanceType() != null && other.getProcessingInstanceType().equals(this.getProcessingInstanceType()) == false)
            return false;
        if (other.getProcessingInstanceVolumeSizeInGB() == null ^ this.getProcessingInstanceVolumeSizeInGB() == null)
            return false;
        if (other.getProcessingInstanceVolumeSizeInGB() != null
                && other.getProcessingInstanceVolumeSizeInGB().equals(this.getProcessingInstanceVolumeSizeInGB()) == false)
            return false;
        if (other.getProcessingTimeOutInSeconds() == null ^ this.getProcessingTimeOutInSeconds() == null)
            return false;
        if (other.getProcessingTimeOutInSeconds() != null && other.getProcessingTimeOutInSeconds().equals(this.getProcessingTimeOutInSeconds()) == false)
            return false;
        if (other.getModelType() == null ^ this.getModelType() == null)
            return false;
        if (other.getModelType() != null && other.getModelType().equals(this.getModelType()) == false)
            return false;
        if (other.getConfigFileName() == null ^ this.getConfigFileName() == null)
            return false;
        if (other.getConfigFileName() != null && other.getConfigFileName().equals(this.getConfigFileName()) == false)
            return false;
        if (other.getSubnets() == null ^ this.getSubnets() == null)
            return false;
        if (other.getSubnets() != null && other.getSubnets().equals(this.getSubnets()) == false)
            return false;
        if (other.getSecurityGroupIds() == null ^ this.getSecurityGroupIds() == null)
            return false;
        if (other.getSecurityGroupIds() != null && other.getSecurityGroupIds().equals(this.getSecurityGroupIds()) == false)
            return false;
        if (other.getVolumeEncryptionKMSKey() == null ^ this.getVolumeEncryptionKMSKey() == null)
            return false;
        if (other.getVolumeEncryptionKMSKey() != null && other.getVolumeEncryptionKMSKey().equals(this.getVolumeEncryptionKMSKey()) == false)
            return false;
        if (other.getS3OutputEncryptionKMSKey() == null ^ this.getS3OutputEncryptionKMSKey() == null)
            return false;
        if (other.getS3OutputEncryptionKMSKey() != null && other.getS3OutputEncryptionKMSKey().equals(this.getS3OutputEncryptionKMSKey()) == false)
            return false;
        return true;
    }
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()
aws-java-sdk-neptunedata/src/main/java/com/amazonaws/services/neptunedata/model/StartMLDataProcessingJobRequest.java