Class QContainerMapping<S extends Containerable,Q extends QContainer<R,OR>,R extends MContainer,OR>
- 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.common.QContainerMapping<S,Q,R,OR>
-
- Type Parameters:
S
- schema typeQ
- type of entity pathR
- row type related to theQContainerMapping
OR
- type of the owner row
- All Implemented Interfaces:
QOwnedByMapping<S,R,OR>
,SqaleMappingMixin<S,Q,R>
- Direct Known Subclasses:
QAccessCertificationCaseMapping
,QAccessCertificationWorkItemMapping
,QAssignmentMapping
,QCaseWorkItemMapping
,QLookupTableRowMapping
,QOperationExecutionMapping
,QTriggerMapping
public class QContainerMapping<S extends Containerable,Q extends QContainer<R,OR>,R extends MContainer,OR> extends SqaleTableMapping<S,Q,R> implements QOwnedByMapping<S,R,OR>
Mapping betweenQContainer
andContainerable
.
-
-
Field Summary
Fields Modifier and Type Field Description static String
DEFAULT_ALIAS_NAME
-
Fields inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMapping
logger
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
QContainerMapping(@NotNull String tableName, @NotNull String defaultAliasName, @NotNull Class<S> schemaType, @NotNull Class<Q> queryType, @NotNull SqaleRepoContext repositoryContext)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.querydsl.core.types.Predicate
containerIdentityPredicate(Q entityPath, S container)
static QContainerMapping<?,?,?,?>
initContainerMapping(@NotNull SqaleRepoContext repositoryContext)
R
initRowObject(S schemaObject, OR ownerRow)
This creates the right type of object and fills in the baseMContainer
attributes.R
insert(S schemaObject, OR ownerRow, JdbcSession jdbcSession)
protected Q
newAliasInstance(String alias)
Method returning new instance ofEntityPath
- to be implemented by sub-mapping.R
newRowObject()
R
newRowObject(OR ownerRow)
Returns a row with foreign key fields referencing the provided owner row.S
toSchemaObject(R row)
Implemented for searchable containers that do not use fullObject for their recreation.-
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, toSchemaObjectCompleteSafe, toSchemaObjectInternal, uriMapper, uuidMapper
-
Methods inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryTableMapping
addDetailFetchMapper, addExtensionColumn, defaultAlias, defaultAliasName, detailFetchMappers, getExtensionColumns, joinOn, longMapper, newAlias, prismContext, selectExpressions, 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, addItemMapping, addNestedMapping, addRefMapping, addRefMapping, addRelationResolver, afterModify, queryType
-
-
-
-
Field Detail
-
DEFAULT_ALIAS_NAME
public static final String DEFAULT_ALIAS_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
initContainerMapping
public static QContainerMapping<?,?,?,?> initContainerMapping(@NotNull @NotNull SqaleRepoContext repositoryContext)
-
toSchemaObject
public S toSchemaObject(R row)
Implemented for searchable containers that do not use fullObject for their recreation.- Overrides:
toSchemaObject
in classSqaleTableMapping<S extends Containerable,Q extends QContainer<R,OR>,R extends MContainer>
-
newAliasInstance
protected Q newAliasInstance(String alias)
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.- Specified by:
newAliasInstance
in classQueryTableMapping<S extends Containerable,Q extends QContainer<R,OR>,R extends MContainer>
-
newRowObject
public R newRowObject(OR ownerRow)
Description copied from interface:QOwnedByMapping
Returns a row with foreign key fields referencing the provided owner row.- Specified by:
newRowObject
in interfaceQOwnedByMapping<S extends Containerable,Q extends QContainer<R,OR>,R extends MContainer>
-
newRowObject
public R newRowObject()
- Overrides:
newRowObject
in classQueryTableMapping<S extends Containerable,Q extends QContainer<R,OR>,R extends MContainer>
-
initRowObject
public R initRowObject(S schemaObject, OR ownerRow)
This creates the right type of object and fills in the baseMContainer
attributes.
-
insert
public R insert(S schemaObject, OR ownerRow, JdbcSession jdbcSession) throws SchemaException
- Specified by:
insert
in interfaceQOwnedByMapping<S extends Containerable,Q extends QContainer<R,OR>,R extends MContainer>
- Throws:
SchemaException
-
-