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

import uk.ac.ebi.quickgo.model.ontology.go.TaxonConstraintSet;

import java.util.HashMap;
import java.util.Map;


/**
 * Class that represents a generic (OBOFoundry-style) ontology
 * 
 * @author tonys
 *
 */
public abstract class GenericOntology implements ITermContainer {
	public String namespace;
	public Map<String, GenericTerm> terms = new HashMap<>();
    public Map<String, GenericTerm> xrefFind = new HashMap<>();
    public Map<String, GenericTermSet> subsets = new HashMap<>();
	public TaxonConstraintSet taxonConstraints = new TaxonConstraintSet();
	public TermOntologyHistory history = new TermOntologyHistory();

	public CV fundingBodies;

	public Map<String, TermCredit> termCredits = new HashMap<String, TermCredit>();
	
    public String version;
    public String timestamp;
    public String url;

    public GenericOntology(String namespace) {
    	this.namespace = namespace;
    }

}

@@ -137,23 +137,74 @@
 va.util.
-HashMap
+ArrayList;%0Aimport java.util.HashMap;%0Aimport java.util.List
 ;%0Aimport
@@ -971,16 +971,16 @@
 pace) %7B%0A
-
     %09thi
@@ -1011,10 +1011,807 @@
 %0A    %7D%0A%0A
+    @Override%0A    public String getNamespace() %7B%0A        return namespace;%0A    %7D%0A%0A    @Override%0A    public int getTermCount() %7B%0A        return terms.size();%0A    %7D%0A%0A    @Override%0A    public List%3CGenericTerm%3E getTerms() %7B%0A        return new ArrayList%3C%3E(terms.values());%0A    %7D%0A%0A    @Override%0A    public List%3CString%3E getTermIds() %7B%0A        return new ArrayList%3C%3E(terms.keySet());%0A    %7D%0A%0A    @Override%0A    public GenericTerm%5B%5D toArray() %7B%0A        return terms.values().toArray(new GenericTerm%5Bterms.size()%5D);%0A    %7D%0A%0A    @Override%0A    public GenericTerm getTerm(String id) %7B%0A        GenericTerm t = terms.get(id);%0A        if (t == null) %7B%0A            t = xrefFind.get(id);%0A        %7D%0A        return t;%0A    %7D%0A%0A    @Override%0A    public void addTerm(GenericTerm t) %7B%0A        terms.put(t.getId(), t);%0A    %7D%0A%0A
 %7D%0A

add back accidentally deleted used code, from below previously commented out code