@Override @SuppressWarnings({"unchecked"}) public List<Object> findEntities(Number revision) throws IllegalStateException, IllegalArgumentException { final Set<Pair<String, Class>> entityTypes = findEntityTypes(revision); final List<Object> result = new ArrayList<Object>(); for (Pair<String, Class> type : entityTypes) { result.addAll( auditReaderImplementor .createQuery() .forEntitiesModifiedAtRevision(type.getSecond(), type.getFirst(), revision) .getResultList()); } return result; }
@Override @SuppressWarnings({"unchecked"}) public Map<RevisionType, List<Object>> findEntitiesGroupByRevisionType(Number revision) throws IllegalStateException, IllegalArgumentException { final Set<Pair<String, Class>> entityTypes = findEntityTypes(revision); final Map<RevisionType, List<Object>> result = new HashMap<RevisionType, List<Object>>(); for (RevisionType revisionType : RevisionType.values()) { result.put(revisionType, new ArrayList<Object>()); for (Pair<String, Class> type : entityTypes) { final List<Object> list = auditReaderImplementor .createQuery() .forEntitiesModifiedAtRevision(type.getSecond(), type.getFirst(), revision) .add(new RevisionTypeAuditExpression(revisionType, "=")) .getResultList(); result.get(revisionType).addAll(list); } } return result; }