@Override
public Map<CriterionType, Set<Criterion>> execute() {
Map<CriterionType, Set<Criterion>> result = new LinkedHashMap<CriterionType, Set<Criterion>>();
for (Criterion criterion : criterionDAO
.getAllSortedByTypeAndName()) {
CriterionType key = criterion.getType();
if (klassTheCriterionTypeMustBeRelatedWith
.isAssignableFrom(key.getResource().asClass())) {
if (!result.containsKey(key)) {
result.put(key, new LinkedHashSet<Criterion>());
}
result.get(key).add(criterion);
}