@@ -0,0 +1,767 @@
+package uk.ac.ebi.quickgo.geneproduct.common.document;%0A%0A/**%0A * Enumeration that expresses the possible types of gene products.%0A *%0A * @author Ricardo Antunes%0A */%0Apublic enum GeneProductType %7B%0A    COMPLEX(%22complex%22),%0A    PROTEIN(%22protein%22),%0A    RNA(%22rna%22);%0A%0A    private String name;%0A%0A    GeneProductType(String name) %7B%0A        this.name = name;%0A    %7D%0A%0A    public String getName() %7B%0A        return name;%0A    %7D%0A%0A    public static GeneProductType typeOf(String name) %7B%0A        for (GeneProductType type : GeneProductType.values()) %7B%0A            if (type.getName().equalsIgnoreCase(name)) %7B%0A                return type;%0A            %7D%0A        %7D%0A%0A        throw new IllegalArgumentException(%22The provided name argument does not map to an existing gene product type%22);%0A    %7D%0A%7D%0A

Add enum that enumerates allowable gene product types.