Class QObjectTemplateMapping
java.lang.Object
com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMapping<S,Q,R>
com.evolveum.midpoint.repo.sqlbase.mapping.QueryTableMapping<S,Q,R>
com.evolveum.midpoint.repo.sqale.mapping.SqaleTableMapping<S,Q,R>
com.evolveum.midpoint.repo.sqale.qmodel.object.QObjectMapping<S,Q,R>
com.evolveum.midpoint.repo.sqale.qmodel.object.QAssignmentHolderMapping<ObjectTemplateType,QObjectTemplate,MObject>
com.evolveum.midpoint.repo.sqale.qmodel.other.QObjectTemplateMapping
- All Implemented Interfaces:
SqaleMappingMixin<ObjectTemplateType,
QObjectTemplate, MObject>
public class QObjectTemplateMapping
extends QAssignmentHolderMapping<ObjectTemplateType,QObjectTemplate,MObject>
Mapping between
QObjectTemplate
and ObjectTemplateType
.-
Field Summary
Fields inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMapping
logger
-
Method Summary
Modifier and TypeMethodDescriptionstatic QObjectTemplateMapping
static QObjectTemplateMapping
initObjectTemplateMapping
(@NotNull SqaleRepoContext repositoryContext) protected QObjectTemplate
newAliasInstance
(String alias) Method returning new instance ofEntityPath
- to be implemented by sub-mapping.void
storeRelatedEntities
(@NotNull MObject row, @NotNull ObjectTemplateType schemaObject, @NotNull JdbcSession jdbcSession) Stores other entities related to the main object row like containers, references, etc.Methods inherited from class com.evolveum.midpoint.repo.sqale.qmodel.object.QAssignmentHolderMapping
getAssignmentHolderMapping, initAssignmentHolderMapping
Methods inherited from class com.evolveum.midpoint.repo.sqale.qmodel.object.QObjectMapping
getObjectMapping, initObjectMapping, isReindexSupported, selectExpressions, setFullObject, toRowObjectWithoutFullObject, toSchemaObject, toSchemaObjectCompleteSafe
Methods inherited from class com.evolveum.midpoint.repo.sqale.mapping.SqaleTableMapping
addExtensionMapping, binaryMapper, booleanMapper, createFullObject, createRowTransformer, enumMapper, fullObjectItemsToSkip, insert, integerMapper, multiPolyStringMapper, multiStringMapper, multiUriMapper, multiValueMapper, needsInitialization, objectReference, objectReference, objectTypeToQName, parseSchemaObject, parseSchemaObject, polyStringMapper, processCacheableRelation, processCacheableUri, processCacheableUri, processCacheableUris, processExtensionColumns, processExtensions, repositoryContext, resolveIdToUri, resolveReferenceNames, resolveUriIdToQName, schemaTypeToObjectType, setPolyString, setReference, storeRefs, stringMapper, stringsToArray, timestampMapper, toSchemaObject, toSchemaObjectComplete, toSchemaObjectInternal, uriMapper, uuidMapper
Methods inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryTableMapping
addDetailFetchMapper, addExtensionColumn, defaultAlias, defaultAliasName, detailFetchMappers, getExtensionColumns, joinOn, longMapper, newAlias, prismContext, selectExpressionsWithCustomColumns, tableName, toString, updateGetOptions
Methods inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMapping
addItemMapping, addRelationResolver, getItemMapper, getItemMappings, getRelationResolver, itemDefinition, itemMapper, queryType, relationResolver, schemaType
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.evolveum.midpoint.repo.sqale.mapping.SqaleMappingMixin
addAuditRefMapping, addContainerTableMapping, addExtensionMapping, addItemMapping, addNestedMapping, addRefMapping, addRefMapping, addRelationResolver, afterModify, queryType
-
Field Details
-
DEFAULT_ALIAS_NAME
- See Also:
-
-
Method Details
-
initObjectTemplateMapping
public static QObjectTemplateMapping initObjectTemplateMapping(@NotNull @NotNull SqaleRepoContext repositoryContext) -
getObjectTemplateMapping
-
newAliasInstance
Description copied from class:QueryTableMapping
Method returning new instance ofEntityPath
- to be implemented by sub-mapping. This will create entity path without any extension columns, seeQueryTableMapping.newAlias(java.lang.String)
for that.- Overrides:
newAliasInstance
in classQAssignmentHolderMapping<ObjectTemplateType,
QObjectTemplate, MObject>
-
newRowObject
- Overrides:
newRowObject
in classQObjectMapping<ObjectTemplateType,
QObjectTemplate, MObject>
-
storeRelatedEntities
public void storeRelatedEntities(@NotNull @NotNull MObject row, @NotNull @NotNull ObjectTemplateType schemaObject, @NotNull @NotNull JdbcSession jdbcSession) throws SchemaException Description copied from class:QObjectMapping
Stores other entities related to the main object row like containers, references, etc. This is not part ofQObjectMapping.toRowObjectWithoutFullObject(S, com.evolveum.midpoint.repo.sqlbase.JdbcSession)
because it requires known OID which is not assured before calling that method. *Always call this super method first in overriding methods.*- Overrides:
storeRelatedEntities
in classQAssignmentHolderMapping<ObjectTemplateType,
QObjectTemplate, MObject> - Parameters:
row
- master row for the added object("aggregate root")schemaObject
- schema objects for which the details are storedjdbcSession
- JDBC session used to insert related rows- Throws:
SchemaException
-