Class ExtensionMapping<Q extends FlexibleRelationalPathBase<R>,R>
java.lang.Object
com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMapping<Containerable,Q,R>
com.evolveum.midpoint.repo.sqale.mapping.ExtensionMapping<Q,R>
- Type Parameters:
Q
- type of entity pathR
- row type related to theExtensionMapping
public class ExtensionMapping<Q extends FlexibleRelationalPathBase<R>,R>
extends QueryModelMapping<Containerable,Q,R>
This acts like a container mapping for extension/attributes containers.
Compared to other subclasses of
QueryModelMapping
this does NOT use the item mapping
and resolver maps, but instead returns the same stateless mapper which then delegates
all the real work to item filter/delta processors (see ExtensionItemSqlMapper
).
This allows for dynamic mapping which is needed especially for shadow attributes.-
Field Summary
Fields inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMapping
logger
-
Constructor Summary
ModifierConstructorDescriptionprotected
ExtensionMapping
(@NotNull MExtItemHolderType holderType, @NotNull Class<Q> queryType, @NotNull Function<Q, JsonbPath> rootToExtensionPath, SqaleRepoContext context) -
Method Summary
Modifier and TypeMethodDescription@Nullable ItemSqlMapper<Q,
R> getItemMapper
(QName itemName) ReturnsItemSqlMapper
for providedQName
or `null`.Methods inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMapping
addItemMapping, addRelationResolver, getItemMappings, getRelationResolver, itemDefinition, itemMapper, queryType, relationResolver, schemaType
-
Constructor Details
-
ExtensionMapping
protected ExtensionMapping(@NotNull @NotNull MExtItemHolderType holderType, @NotNull @NotNull Class<Q> queryType, @NotNull @NotNull Function<Q, JsonbPath> rootToExtensionPath, SqaleRepoContext context)
-
-
Method Details
-
getItemMapper
Description copied from class:QueryModelMapping
ReturnsItemSqlMapper
for providedQName
or `null`.- Overrides:
getItemMapper
in classQueryModelMapping<Containerable,
Q extends FlexibleRelationalPathBase<R>, R>
-
holderType
-