package uk.ac.ebi.quickgo.rest.search.query;

/**
 * Represents the simplest of {@link QuickGOQuery} objects, containing just the field and values to query against.
 */
public class AllNonEmptyFieldQuery extends FieldQuery {

    public AllNonEmptyFieldQuery(String field, String value) {
        super(field, value);
    }

    @Override public <T> T accept(QueryVisitor<T> visitor) {
        return visitor.visit(this);
    }
}

@@ -50,118 +50,227 @@
 %0A * 
-Represents the simplest of %7B@link QuickGOQuery%7D objects, containing just the
+A version of %7B@link FieldQuery%7D, the use of which signifies that the requester is not looking for specific values%0A * from a field, but all of the target data where the selected
  field 
-and
+has a
  value
-s
  t
-o query against
+hat isn't empty or null
 .%0A *
@@ -529,11 +529,757 @@
 );%0A    %7D
+%0A%0A    @Override public boolean equals(Object o) %7B%0A        if (this == o) %7B%0A            return true;%0A        %7D%0A        if (o == null %7C%7C getClass() != o.getClass()) %7B%0A            return false;%0A        %7D%0A%0A        AllNonEmptyFieldQuery that = (AllNonEmptyFieldQuery) o;%0A%0A        if (!field.equals(that.field)) %7B%0A            return false;%0A        %7D%0A%0A        return value.equals(that.value);%0A    %7D%0A%0A    @Override public int hashCode() %7B%0A        int result = field.hashCode();%0A        result = 33 * result + value.hashCode();%0A        return result;%0A    %7D%0A%0A    @Override public String toString() %7B%0A        return %22AllNonEmptyFieldQuery%7B%22 +%0A                %22field='%22 + field + '%5C'' +%0A                %22, value='%22 + value + '%5C'' +%0A                '%7D';%0A    %7D
 %0A%7D%0A

Change description. Add equals(), hashCode() and toString() methods.