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 ofQueryModelMapping
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 (seeExtensionItemSqlMapper
). 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
Constructors Modifier Constructor Description protected
ExtensionMapping(@NotNull MExtItemHolderType holderType, @NotNull Class<Q> queryType, @NotNull Function<Q,JsonbPath> rootToExtensionPath, SqaleRepoContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description @Nullable ItemSqlMapper<Q,R>
getItemMapper(QName itemName)
ReturnsItemSqlMapper
for providedQName
or `null`.MExtItemHolderType
holderType()
-
Methods inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMapping
addItemMapping, addRelationResolver, getItemMappings, getRelationResolver, itemDefinition, itemMapper, queryType, relationResolver, schemaType
-
-
-
-
Constructor Detail
-
ExtensionMapping
protected ExtensionMapping(@NotNull @NotNull MExtItemHolderType holderType, @NotNull @NotNull Class<Q> queryType, @NotNull @NotNull Function<Q,JsonbPath> rootToExtensionPath, SqaleRepoContext context)
-
-
Method Detail
-
getItemMapper
@Nullable public @Nullable ItemSqlMapper<Q,R> getItemMapper(QName itemName)
Description copied from class:QueryModelMapping
ReturnsItemSqlMapper
for providedQName
or `null`.- Overrides:
getItemMapper
in classQueryModelMapping<Containerable,Q extends FlexibleRelationalPathBase<R>,R>
-
holderType
public MExtItemHolderType holderType()
-
-