protected void applyConstraints(Query query) { boolean constraintsApplied = security.applyConstraints(query); if (constraintsApplied && singleResult) { QueryParser parser = QueryTransformerFactory.createParser(query.getQueryString()); if (parser.isQueryWithJoins()) { QueryTransformer transformer = QueryTransformerFactory.createTransformer(query.getQueryString()); transformer.addDistinct(); query.setQueryString(transformer.getResult()); } } if (constraintsApplied && log.isDebugEnabled()) log.debug("Constraints applied: {}", printQuery(query.getQueryString())); }