Interface ItemRelationResolver<Q extends FlexibleRelationalPathBase<R>,R,TQ extends FlexibleRelationalPathBase<TR>,TR>
- Type Parameters:
Q
- query type with the mappingR
- row type related toItemRelationResolver
TQ
- type of target entity pathTR
- row type related to the target entity pathItemRelationResolver
- All Known Subinterfaces:
SqaleItemRelationResolver<Q,
R, TQ, TR>
- All Known Implementing Classes:
ContainerTableRelationResolver
,CountMappingResolver
,EmbeddedReferenceResolver
,ExtensionMappingResolver
,NestedMappingResolver
,RefTableTargetResolver
,ShadowReferenceAttributesResolver
,TableRelationResolver
public interface ItemRelationResolver<Q extends FlexibleRelationalPathBase<R>,R,TQ extends FlexibleRelationalPathBase<TR>,TR>
Common contract for resolver that helps with navigating over complex (non-single) item paths
for query purposes.
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic class
-
Method Summary
Modifier and TypeMethodDescriptiondefault ItemRelationResolver.ResolutionResult<TQ,
TR> resolve
(SqlQueryContext<?, Q, R> context) Resolves a query context toItemRelationResolver.ResolutionResult
with new context and mapping.resolve
(SqlQueryContext<?, Q, R> context, boolean parent) default ItemRelationResolver.ResolutionResult<TQ,
TR> resolveUsingJoin
(SqlQueryContext<?, Q, R> context)
-
Method Details
-
resolve
Resolves a query context toItemRelationResolver.ResolutionResult
with new context and mapping. The information about the resolved item is captured in the instance resolver already in a manner that is specific for various types of resolution (subquery or nested mapping). -
resolve
ItemRelationResolver.ResolutionResult<TQ,TR> resolve(SqlQueryContext<?, Q, R> context, boolean parent) -
resolveUsingJoin
default ItemRelationResolver.ResolutionResult<TQ,TR> resolveUsingJoin(SqlQueryContext<?, Q, R> context)
-