Class ExtensionMappingResolver<Q extends FlexibleRelationalPathBase<R>,R>
- java.lang.Object
-
- com.evolveum.midpoint.repo.sqale.mapping.ExtensionMappingResolver<Q,R>
-
- Type Parameters:
Q
- query type of entity where the mapping is declaredR
- row type ofExtensionMappingResolver
- All Implemented Interfaces:
SqaleItemRelationResolver<Q,R,Q,R>
,ItemRelationResolver<Q,R,Q,R>
public class ExtensionMappingResolver<Q extends FlexibleRelationalPathBase<R>,R> extends Object implements SqaleItemRelationResolver<Q,R,Q,R>
Resolver for indexed extension/attributes containers.
-
-
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 ExtensionMappingResolver(@NotNull ExtensionMapping<Q,R> mapping, @NotNull Function<Q,JsonbPath> rootToExtensionPath)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ExtensionUpdateContext<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.
-
-
-
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 ExtensionUpdateContext<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>
-
-