package uk.ac.ebi.quickgo.geneproduct.common;

import java.util.function.Supplier;

/**
 * An enumeration of the possible states of proteome membership a gene product can have.
 * @author Tony Wardell
 * Date: 06/03/2018
 * Time: 10:33
 * Created with IntelliJ IDEA.
 */
public enum ProteomeMembership {
    REFERENCE, COMPLETE, NONE, NOT_APPLICABLE;

    /**
     * Define the predicates required and order of importance to work out which Proteome membership category is
     * applicable.
     * @param isProtein is the gene product a protein
     * @param isReferenceProteome is the gene product a reference proteome
     * @param isComplete is the gene product a member of a complete proteome.
     * @return the name of the ProteomeMembership matching the applied constraints
     */
    public static String membership(boolean isProtein, boolean isReferenceProteome, boolean isComplete) {

        if (!isProtein) {
            return NOT_APPLICABLE.name();
        } else if (isReferenceProteome) {
            return REFERENCE.name();
        } else if (isComplete) {
            return COMPLETE.name();
        }
        return NONE.name();
    }
}

@@ -44,44 +44,8 @@
 n;%0A%0A
-import java.util.function.Supplier;%0A
 %0A/**
@@ -278,41 +278,265 @@
 ENCE
-, COMPLETE, NONE, NOT_APPLICABLE;
+(%22Reference%22),%0A    COMPLETE(%22Complete%22),%0A    NONE(%22None%22),%0A    NOT_APPLICABLE(%22Not-applicable%22);%0A%0A    private String value;%0A%0A    ProteomeMembership(String value) %7B%0A        this.value = value;%0A    %7D%0A%0A    public String getValue() %7B%0A        return value;%0A    %7D
 %0A%0A  
@@ -898,20 +898,37 @@
 urn the 
-name
+String representation
  of the 
@@ -1154,19 +1154,23 @@
 LICABLE.
-nam
+getValu
 e();%0A   
@@ -1237,19 +1237,23 @@
 FERENCE.
-nam
+getValu
 e();%0A   
@@ -1310,19 +1310,23 @@
 OMPLETE.
-nam
+getValu
 e();%0A   
@@ -1356,11 +1356,15 @@
 ONE.
-nam
+getValu
 e();

Change the name of the method used to get the string representation of the ProteomeMemberhip emum - we are no longer going to rely on the library generated version. Provide the value to use