results.addAll(result);
}
return new ArrayList<Object>(results);
}
else{
DiffCriteria diffCriteria = (DiffCriteria)criteria;
List<Object> leftResult = execute(diffCriteria.getLeftCriteria());
List<Object> rightResult = execute(diffCriteria.getRightCriteria());
for (Object object : rightResult) {
leftResult.remove(object);
}
return leftResult;
}