Interface FilterProcessor<O extends ObjectFilter>
-
- All Known Implementing Classes:
CanonicalItemPathItemFilterProcessor
,DetailTableItemFilterProcessor
,EnumItemFilterProcessor
,EnumOrdinalItemFilterProcessor
,ItemValueFilterProcessor
,NaryLogicalFilterProcessor
,NotFilterProcessor
,PolyStringItemFilterProcessor
,SimpleItemFilterProcessor
,SinglePathItemFilterProcessor
,SqlQueryContext
,TimestampItemFilterProcessor
,ValueFilterProcessor
public interface FilterProcessor<O extends ObjectFilter>
Filter processor is very abstract thing that takes the filter and returns the SQL predicate. What happens with it depends on the context implementing the processor. There are two typical usages: * Processors in the context of a query (or subquery). These typically determine what other processor should be used in the next step. The logic starts inSqlQueryContext.process(ObjectFilter)
and determines whether to resolve logical operations or delegate to other specialized filter. *Complex path resolution* (which may add JOINs) belongs here, seeValueFilterProcessor
. *ItemValueFilterProcessor
s for a single Prism item (not necessarily one SQL column). These *process only single/final path component and use the value of the filter*. While JOINs are typically only used here it is possible that multi-value attributes stored in detail tables can generate another JOIN in this step too.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description com.querydsl.core.types.Predicate
process(O filter)
default com.querydsl.core.types.Predicate
process(O filter, RightHandProcessor rightPath)
-
-
-
Method Detail
-
process
com.querydsl.core.types.Predicate process(O filter) throws RepositoryException
- Throws:
RepositoryException
-
process
default com.querydsl.core.types.Predicate process(O filter, RightHandProcessor rightPath) throws RepositoryException
- Throws:
RepositoryException
-
-