public FilterTranslator getFilter(
String filterString,
String collectionRole,
boolean scalar,
Map enabledFilters)
throws QueryException, MappingException {
Object cacheKey = null;
FilterTranslator filter = null;
if ( enabledFilters == null || enabledFilters.isEmpty() ) {
cacheKey = FILTER_KEY_FACTORY.newInstance(collectionRole, filterString, scalar);
filter = (FilterTranslator) get(cacheKey);
}
if ( filter==null ) {
filter = createFilterTranslator(filterString, cacheKey, enabledFilters);
}
filter.compile( collectionRole, settings.getQuerySubstitutions(), scalar );
return filter;
}