return resultSet;
}
private List handleFilter(List set)
{
Expression filter = compilation.getExprFilter();
if (filter == null)
{
return set;
}
List result = new ArrayList();
Iterator it = set.iterator();
while (it.hasNext())
{
// Set the value of the candidate being tested, and evaluate it
Object obj = it.next();
if (!state.containsKey(candidateAlias))
{
throw new NucleusUserException("Alias \"" + candidateAlias + "\" doesn't exist in the query or the candidate alias wasn't defined");
}
state.put(candidateAlias, obj);
if (filter.evaluate(
new InMemoryExpressionEvaluator(query.getObjectManager().getOMFContext().getQueryManager(),
parameterValues, state, query.getParsedImports(), clr, candidateAlias)) == Boolean.TRUE)
{
result.add(obj);
}