Buggy code:
public class Organism { private static Logger log = LoggerFactory . getLogger ( Organism . class ) ; private static final String KEY_ATTR_NAME = "name" ; private static final String KEY_ATTR_PLOIDY = "ploidy" ; private static final String KEY_ATTR_MIN_INTRON_SIZE = "min_intron_size" ; private static final String KEY_ATTR_MAX_INTRON_SIZE = "max_intron_size" ; private static final String KEY_ELEM_REFERENCE = "reference" ; private static final String KEY_ELEM_ESTIMATED = "estimated" ; public static final int DEFAULT_PLOIDY = 1 ; public static final int DEFAULT_MIN_INTRON_SIZE = 0 ; public static final int DEFAULT_MAX_INTRON_SIZE = 1000000 ; public static final boolean DEFAULT_COMPACT_GENOME = false ; private String name ; private int ploidy ; private int minIntronSize ; private int maxIntronSize ; private boolean compactGenome ; private Organism . Reference reference ; private Organism . Estimated estimated ; private long genomeSize ; public Organism ( ) { } public Organism ( String name , int ploidy , Organism . Estimated estimated , Organism . Reference reference ) { } public Organism ( Element ele ) { } public String getName ( ) { } public void setName ( String name ) { } public int getPloidy ( ) { } public void setPloidy ( int ploidy ) { } public int getMinIntronSize ( ) { } public void setMinIntronSize ( int minIntronSize ) { } public int getMaxIntronSize ( ) { } public void setMaxIntronSize ( int maxIntronSize ) { } public boolean isCompactGenome ( ) { } public void setCompactGenome ( boolean compactGenome ) { } public Organism . Reference getReference ( ) { } public void setReference ( Organism . Reference reference ) { } public Organism . Estimated getEstimated ( ) { } public void setEstimated ( Organism . Estimated estimated ) { } public boolean isGenomeSizeAvailable ( ) { if ( ( this . genomeSize ) > 0 ) { return true ; } else if ( ( ( this . reference ) != null ) && ( ( this . reference . getPath ( ) ) != null ) ) { return true ; } else <START_BUG> if ( ( this . estimated . getEstGenomeSize ( ) ) > 0 ) { <END_BUG> return true ; } else { return false ; } } protected long getGenomeSizeFromFile ( File path ) throws IOException { } public long getGenomeSize ( ) throws IOException { } public static class Reference { private static final String KEY_ATTR_REF_NAME = "name" ; private static final String KEY_ATTR_REF_PATH = "path" ; private String name ; private File path ; public Reference ( ) { } public Reference ( Element ele ) { } public String getName ( ) { } public void setName ( String name ) { } public File getPath ( ) { } public void setPath ( File path ) { } } public static class Estimated { private static final String KEY_ATTR_EST_GENOME_SIZE = "est_genome_size" ; private static final String KEY_ATTR_EST_GC_PERC = "est_gc_percentage" ; private static final String KEY_ATTR_EST_NB_GENES = "est_nb_genes" ; private long estGenomeSize ; private double estGcPercentage ; private int estNbGenes ; public Estimated ( ) { } public Estimated ( long estGenomeSize , double estGcPercentage , int estNbGenes ) { } public Estimated ( Element ele ) { } public long getEstGenomeSize ( ) { } public void setEstGenomeSize ( long estGenomeSize ) { } public double getEstGcPercentage ( ) { } public void setEstGcPercentage ( double estGcPercentage ) { } public int getEstNbGenes ( ) { } public void setEstNbGenes ( int estNbGenes ) { } } }

Fix:
if ( ( ( this . estimated ) != null ) && ( ( this . estimated . getEstGenomeSize ( ) ) > 0 ) ) {