Class NestedMappingResolver<S extends Containerable,Q extends FlexibleRelationalPathBase<R>,R>
- java.lang.Object
-
- com.evolveum.midpoint.repo.sqale.mapping.NestedMappingResolver<S,Q,R>
-
- Type Parameters:
S
- schema type for the nested containerQ
- query type of entity where the mapping is nested and declaredR
- row type ofNestedMappingResolver
- All Implemented Interfaces:
SqaleItemRelationResolver<Q,R,Q,R>
,ItemRelationResolver<Q,R,Q,R>
public class NestedMappingResolver<S extends Containerable,Q extends FlexibleRelationalPathBase<R>,R> extends Object implements SqaleItemRelationResolver<Q,R,Q,R>
Resolver that maps the nested items (next component of the path) to the same table (query type).
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.evolveum.midpoint.repo.sqlbase.mapping.ItemRelationResolver
ItemRelationResolver.ResolutionResult<TQ extends FlexibleRelationalPathBase<TR>,TR>
-
-
Constructor Summary
Constructors Constructor Description NestedMappingResolver(SqaleNestedMapping<S,Q,R> mapping)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description NestedContainerUpdateContext<S,Q,R>
resolve(SqaleUpdateContext<?,Q,R> context, ItemPath ignored)
Resolves current query context to a new context (mapping is always part of context).ItemRelationResolver.ResolutionResult<Q,R>
resolve(SqlQueryContext<?,Q,R> context)
Returns the same context and nested mapping.
-
-
-
Constructor Detail
-
NestedMappingResolver
public NestedMappingResolver(SqaleNestedMapping<S,Q,R> mapping)
-
-
Method Detail
-
resolve
public ItemRelationResolver.ResolutionResult<Q,R> resolve(SqlQueryContext<?,Q,R> context)
Returns the same context and nested mapping.- Specified by:
resolve
in interfaceItemRelationResolver<Q extends FlexibleRelationalPathBase<R>,R,Q extends FlexibleRelationalPathBase<R>,R>
-
resolve
public NestedContainerUpdateContext<S,Q,R> resolve(SqaleUpdateContext<?,Q,R> context, ItemPath ignored)
Description copied from interface:SqaleItemRelationResolver
Resolves current query context to a new context (mapping is always part of context). The information about the resolved item is captured in the instance resolver already in a manner that is specific for various types of resolution (JOIN or nested mapping). OptionalItemPath
is provided for cases when container ID is necessary. Return value `null` indicates that the modification using the resolver should be ignored by the repository.- Specified by:
resolve
in interfaceSqaleItemRelationResolver<Q extends FlexibleRelationalPathBase<R>,R,Q extends FlexibleRelationalPathBase<R>,R>
-
-