static <E> void configureQ(CriteriaParent criteria, EntityMeta meta, Transformer<E> transformer, String[] queries, Set<String> joinedClassNames, FieldReference reference) {
List<Restriction> restrictions = new LinkedList<>();
if(reference == null) {
for(Map.Entry<String, FieldMeta> entry:  meta.getFieldMap().entrySet()) {
FieldMeta fieldMeta = entry.getValue();
<BUG>if(!fieldMeta.isSearchIgnore() && fieldMeta.getType().equals(String.class)) {
</BUG>
String fieldName = entry.getKey();
configureQForField(fieldName, fieldMeta, criteria, transformer, queries, joinedClassNames, restrictions);
}

static <E> void configureQ(CriteriaParent criteria, EntityMeta meta, Transformer<E> transformer, String[] queries, Set<String> joinedClassNames, FieldReference reference) {
List<Restriction> restrictions = new LinkedList<>();
if(reference == null) {
for(Map.Entry<String, FieldMeta> entry:  meta.getFieldMap().entrySet()) {
FieldMeta fieldMeta = entry.getValue();
if(!fieldMeta.isSearchIgnore() && !fieldMeta.isTransient() && fieldMeta.getType().equals(String.class)) {
String fieldName = entry.getKey();
configureQForField(fieldName, fieldMeta, criteria, transformer, queries, joinedClassNames, restrictions);
