@Override public long count(RuleFilter filter) { // if(LOGGER.isDebugEnabled()) // LOGGER.debug("Counting rules: " + filter); Search searchCriteria = buildRuleSearch(filter); // if(LOGGER.isDebugEnabled()) // LOGGER.debug("Counting rules: " + searchCriteria); return ruleDAO.count(searchCriteria); }
@Override public List<ShortAdminRule> getList(RuleFilter filter, Integer page, Integer entries) { Search searchCriteria = buildSearch(page, entries, filter); List<AdminRule> found = ruleDAO.search(searchCriteria); return convertToShortList(found); }
@Override public long getCountAll() { return count(new RuleFilter(RuleFilter.SpecialFilterType.ANY)); }
@Override public List<ShortAdminRule> getAll() { List<AdminRule> found = ruleDAO.findAll(); return convertToShortList(found); }
@Override public List<AdminRule> getListFull(RuleFilter filter, Integer page, Integer entries) { Search searchCriteria = buildSearch(page, entries, filter); List<AdminRule> found = ruleDAO.search(searchCriteria); return found; }
@Override public ShortAdminRule getRule(RuleFilter filter) throws BadRequestServiceEx { Search searchCriteria = buildFixedRuleSearch(filter); List<AdminRule> found = ruleDAO.search(searchCriteria); if(found.isEmpty()) return null; if(found.size() > 1) { LOGGER.error("Unexpected rule count for filter " + filter + " : " + found); } return new ShortAdminRule(found.get(0)); }
@Override public List<ShortAdminRule> getRulesByPriority(long priority, Integer page, Integer entries) { Search searchCriteria = new Search(AdminRule.class); searchCriteria.addFilter(Filter.greaterOrEqual("priority", priority)); searchCriteria.addSortAsc("priority"); addPagingConstraints(searchCriteria, page, entries); List<AdminRule> found = ruleDAO.search(searchCriteria); return convertToShortList(found); }
protected Search buildSearch(Integer page, Integer entries, RuleFilter filter) throws BadRequestServiceEx { Search searchCriteria = buildRuleSearch(filter); addPagingConstraints(searchCriteria, page, entries); searchCriteria.addSortAsc("priority"); return searchCriteria; }