Interface ItemSqlMapper<Q extends FlexibleRelationalPathBase<R>,R>
-
- Type Parameters:
Q
- entity path owning the mapped itemR
- row type with the mapped item
- All Known Subinterfaces:
UpdatableItemSqlMapper<Q,R>
- All Known Implementing Classes:
DefaultItemSqlMapper
,ExtensionItemSqlMapper
,SqaleItemSqlMapper
public interface ItemSqlMapper<Q extends FlexibleRelationalPathBase<R>,R>
Defines contract for mapping component holding information how an item (from schema/prism world) is to be processed when interpreting query.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <T extends ValueFilter<?,?>>
@Nullable ItemValueFilterProcessor<T>createFilterProcessor(SqlQueryContext<?,?,?> sqlQueryContext)
CreatesItemValueFilterProcessor
based on this mapping.@Nullable RightHandProcessor
createRightHandProcessor(SqlQueryContext<?,?,?> sqlQueryContext)
@Nullable com.querydsl.core.types.Expression<?>
primaryPath(Q entityPath, ItemDefinition<?> definition)
Returns primary path for provided entity path - usable for ordering.
-
-
-
Method Detail
-
primaryPath
@Nullable @Nullable com.querydsl.core.types.Expression<?> primaryPath(Q entityPath, ItemDefinition<?> definition) throws QueryException
Returns primary path for provided entity path - usable for ordering.- Throws:
QueryException
-
createFilterProcessor
@Nullable <T extends ValueFilter<?,?>> @Nullable ItemValueFilterProcessor<T> createFilterProcessor(SqlQueryContext<?,?,?> sqlQueryContext)
CreatesItemValueFilterProcessor
based on this mapping. ProvidedSqlQueryContext
is used to figure out the query paths when this is executed (as the entity path instance is not yet available when the mapping is configured in a declarative manner). The type of the returned processor is adapted to the client code needs for convenience. Also the type of the provided context is flexible, but with proper mapping it's all safe. [NOTE] This may return null if the subclass supports other type of mapping for this item, but not filtering for queries (e.g. update only item).
-
createRightHandProcessor
@Nullable @Nullable RightHandProcessor createRightHandProcessor(SqlQueryContext<?,?,?> sqlQueryContext)
-
-