in src/main/java/org/apache/sling/pipes/internal/FilterPipe.java [65:84]
boolean propertiesPass(ValueMap current, Resource filterResource) {
ValueMap filter = filterResource.getValueMap();
if (filter.containsKey(PN_TEST)){
Object test = bindings.instantiateObject(filter.get(PN_TEST, PipeBindings.FALSE_BINDING));
if (! (test instanceof Boolean)){
logger.error("instantiated test {} is not a boolean, filtering out", test);
return false;
}
return (Boolean) test;
}
for (String key : filter.keySet()){
if (! IGNORED_PROPERTIES.contains(key) && !key.startsWith(PREFIX_FILTER)){
Pattern pattern = getPattern(filterResource, key);
if (!current.containsKey(key) || !pattern.matcher(current.get(key, String.class)).matches()){
return false;
}
}
}
return true;
}