/** * Parses the fq param and adds it as a list of filter queries or reverts to null if nothing is found * or an Exception is thrown. * * @param req * @return either a query from the QueryParser or null */ private List<Query> getFilterQueries(SolrQueryRequest req) { List<Query> filters = null; String[] fqs = req.getParams().getParams("fq"); if (fqs != null && fqs.length != 0) { filters = new ArrayList<>(fqs.length); try { for (String fq : fqs) { if (fq != null && fq.trim().length() != 0) { QParser fqp = QParser.getParser(fq, req); fqp.setIsFilter(true); filters.add(fqp.getQuery()); } } } catch (SyntaxError e) { e.printStackTrace(); } if (filters.isEmpty()) { filters = null; } } return filters; }