/**
 * 
 */
package uk.ac.ebi.quickgo.model.ontology.go;

import uk.ac.ebi.quickgo.model.ontology.generic.GenericOntology;

/**
 * Class that represents the Gene Ontology (GO)
 * 
 * @author tonys
 *
 */
public class GeneOntology extends GenericOntology {
    public static final String root = "GO:0003673";
	public static final String NAME_SPACE = "GO";

    public GeneOntology() {
    	super(NAME_SPACE);
    }
    
//    public void loader(GOSourceFiles sourceFiles) throws Exception {
//        for (String[] row : sourceFiles.goTerms.reader(EGOTerm.GO_ID, EGOTerm.NAME, EGOTerm.CATEGORY, EGOTerm.IS_OBSOLETE)) {
//            addTerm(new GOTerm(row[0], row[1], row[2], row[3]));
//        }
//
//        super.loader(sourceFiles, root);
//
//	    for (String[] row : sourceFiles.proteinComplexes.reader(EProteinComplex.GO_ID, EProteinComplex.DB, EProteinComplex.DB_OBJECT_ID, EProteinComplex.DB_OBJECT_SYMBOL, EProteinComplex.DB_OBJECT_NAME)) {
//		    GOTerm term = (GOTerm)getTerm(row[0]);
//		    if (term != null) {
//			    term.associateProteinComplex(row[1], row[2], row[3], row[4]);
//		    }
//	    }
//
//	    for (String[] row : sourceFiles.taxonUnions.reader(ETaxonUnion.UNION_ID, ETaxonUnion.NAME, ETaxonUnion.TAXA)) {
//		    taxonConstraints.addTaxonUnion(row[0], row[1], row[2]);
//	    }
//
//	    for (String[] row : sourceFiles.taxonConstraints.reader(ETaxonConstraint.RULE_ID, ETaxonConstraint.GO_ID, ETaxonConstraint.NAME, ETaxonConstraint.RELATIONSHIP, ETaxonConstraint.TAX_ID_TYPE, ETaxonConstraint.TAX_ID, ETaxonConstraint.TAXON_NAME, ETaxonConstraint.SOURCES)) {
//		    taxonConstraints.addConstraint(row[0], row[1], row[2], row[3], row[4], row[5], row[6], row[7]);
//	    }
//
//	    for (String[] row : sourceFiles.termTaxonConstraints.reader(ETermTaxonConstraint.GO_ID, ETermTaxonConstraint.RULE_ID)) {
//		    GOTerm term = (GOTerm)getTerm(row[0]);
//		    if (term != null) {
//			    term.addTaxonConstraint(taxonConstraints.get(row[1]));
//		    }
//	    }
//
//	    for (String[] row : sourceFiles.annotationGuidelines.reader(EAnnotationGuidelineInfo.GO_ID, EAnnotationGuidelineInfo.TITLE, EAnnotationGuidelineInfo.URL)) {
//		    GOTerm term = (GOTerm)getTerm(row[0]);
//		    if (term != null) {
//			    term.addGuideline(row[1], row[2]);
//		    }
//	    }
//
//	    for (String[] row : sourceFiles.plannedGOChanges.reader(EPlannedGOChangeInfo.GO_ID, EPlannedGOChangeInfo.TITLE, EPlannedGOChangeInfo.URL)) {
//		    GOTerm term = (GOTerm)getTerm(row[0]);
//		    if (term != null) {
//			    term.addPlannedChange(row[1], row[2]);
//		    }
//	    }
//    }
}

@@ -411,2194 +411,6 @@
   %7D%0A
-    %0A//    public void loader(GOSourceFiles sourceFiles) throws Exception %7B%0A//        for (String%5B%5D row : sourceFiles.goTerms.reader(EGOTerm.GO_ID, EGOTerm.NAME, EGOTerm.CATEGORY, EGOTerm.IS_OBSOLETE)) %7B%0A//            addTerm(new GOTerm(row%5B0%5D, row%5B1%5D, row%5B2%5D, row%5B3%5D));%0A//        %7D%0A//%0A//        super.loader(sourceFiles, root);%0A//%0A//%09    for (String%5B%5D row : sourceFiles.proteinComplexes.reader(EProteinComplex.GO_ID, EProteinComplex.DB, EProteinComplex.DB_OBJECT_ID, EProteinComplex.DB_OBJECT_SYMBOL, EProteinComplex.DB_OBJECT_NAME)) %7B%0A//%09%09    GOTerm term = (GOTerm)getTerm(row%5B0%5D);%0A//%09%09    if (term != null) %7B%0A//%09%09%09    term.associateProteinComplex(row%5B1%5D, row%5B2%5D, row%5B3%5D, row%5B4%5D);%0A//%09%09    %7D%0A//%09    %7D%0A//%0A//%09    for (String%5B%5D row : sourceFiles.taxonUnions.reader(ETaxonUnion.UNION_ID, ETaxonUnion.NAME, ETaxonUnion.TAXA)) %7B%0A//%09%09    taxonConstraints.addTaxonUnion(row%5B0%5D, row%5B1%5D, row%5B2%5D);%0A//%09    %7D%0A//%0A//%09    for (String%5B%5D row : sourceFiles.taxonConstraints.reader(ETaxonConstraint.RULE_ID, ETaxonConstraint.GO_ID, ETaxonConstraint.NAME, ETaxonConstraint.RELATIONSHIP, ETaxonConstraint.TAX_ID_TYPE, ETaxonConstraint.TAX_ID, ETaxonConstraint.TAXON_NAME, ETaxonConstraint.SOURCES)) %7B%0A//%09%09    taxonConstraints.addConstraint(row%5B0%5D, row%5B1%5D, row%5B2%5D, row%5B3%5D, row%5B4%5D, row%5B5%5D, row%5B6%5D, row%5B7%5D);%0A//%09    %7D%0A//%0A//%09    for (String%5B%5D row : sourceFiles.termTaxonConstraints.reader(ETermTaxonConstraint.GO_ID, ETermTaxonConstraint.RULE_ID)) %7B%0A//%09%09    GOTerm term = (GOTerm)getTerm(row%5B0%5D);%0A//%09%09    if (term != null) %7B%0A//%09%09%09    term.addTaxonConstraint(taxonConstraints.get(row%5B1%5D));%0A//%09%09    %7D%0A//%09    %7D%0A//%0A//%09    for (String%5B%5D row : sourceFiles.annotationGuidelines.reader(EAnnotationGuidelineInfo.GO_ID, EAnnotationGuidelineInfo.TITLE, EAnnotationGuidelineInfo.URL)) %7B%0A//%09%09    GOTerm term = (GOTerm)getTerm(row%5B0%5D);%0A//%09%09    if (term != null) %7B%0A//%09%09%09    term.addGuideline(row%5B1%5D, row%5B2%5D);%0A//%09%09    %7D%0A//%09    %7D%0A//%0A//%09    for (String%5B%5D row : sourceFiles.plannedGOChanges.reader(EPlannedGOChangeInfo.GO_ID, EPlannedGOChangeInfo.TITLE, EPlannedGOChangeInfo.URL)) %7B%0A//%09%09    GOTerm term = (GOTerm)getTerm(row%5B0%5D);%0A//%09%09    if (term != null) %7B%0A//%09%09%09    term.addPlannedChange(row%5B1%5D, row%5B2%5D);%0A//%09%09    %7D%0A//%09    %7D%0A//    %7D%0A
 %7D%0A

remove commented out code