Interface SqaleItemRelationResolver<Q extends FlexibleRelationalPathBase<R>,R,TQ extends FlexibleRelationalPathBase<TR>,TR>
-
- All Superinterfaces:
ItemRelationResolver<Q,R,TQ,TR>
- All Known Implementing Classes:
ContainerTableRelationResolver
,CountMappingResolver
,ExtensionMappingResolver
,NestedMappingResolver
public interface SqaleItemRelationResolver<Q extends FlexibleRelationalPathBase<R>,R,TQ extends FlexibleRelationalPathBase<TR>,TR> extends ItemRelationResolver<Q,R,TQ,TR>
Extension ofItemRelationResolver
, this is a common contract for resolver that helps with navigating over complex (non-single) item paths for both query and application of delta modification.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.evolveum.midpoint.repo.sqlbase.mapping.ItemRelationResolver
ItemRelationResolver.ResolutionResult<TQ extends FlexibleRelationalPathBase<TR>,TR>
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description SqaleUpdateContext<?,?,?>
resolve(SqaleUpdateContext<?,Q,R> context, ItemPath itemPath)
Resolves current query context to a new context (mapping is always part of context).-
Methods inherited from interface com.evolveum.midpoint.repo.sqlbase.mapping.ItemRelationResolver
resolve
-
-
-
-
Method Detail
-
resolve
SqaleUpdateContext<?,?,?> resolve(SqaleUpdateContext<?,Q,R> context, ItemPath itemPath) throws RepositoryException
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.- Throws:
RepositoryException
-
-