Class QContainerWithFullObjectMapping<S extends Containerable,Q extends QContainerWithFullObject<R,OR>,R extends MContainerWithFullObject,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>
com.evolveum.midpoint.repo.sqale.qmodel.common.QContainerWithFullObjectMapping<S,Q,R,OR>
- All Implemented Interfaces:
QOwnedByMapping<S,,R, OR> SqaleMappingMixin<S,,Q, R> QSeparatelySerializedItem<Q,R>
- Direct Known Subclasses:
QAssignmentMapping,QFocusIdentityMapping,QOperationExecutionMapping
public abstract class QContainerWithFullObjectMapping<S extends Containerable,Q extends QContainerWithFullObject<R,OR>,R extends MContainerWithFullObject,OR>
extends QContainerMapping<S,Q,R,OR>
implements QSeparatelySerializedItem<Q,R>
-
Field Summary
Fields inherited from class com.evolveum.midpoint.repo.sqale.qmodel.common.QContainerMapping
DEFAULT_ALIAS_NAMEFields inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMapping
logger -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedQContainerWithFullObjectMapping(@NotNull String tableName, @NotNull String defaultAliasName, @NotNull Class<S> schemaType, @NotNull Class<Q> queryType, @NotNull SqaleRepoContext repositoryContext) -
Method Summary
Modifier and TypeMethodDescriptionvoidafterModify(SqaleUpdateContext<S, Q, R> updateContext) Method called from `SqaleUpdateContext.finishExecutionOwn()` for containers.com.querydsl.core.types.PredicateallOwnedBy(Q q, Collection<UUID> oidList) protected abstract CheckedFunction<SchemaRegistryState,ItemDefinition<?>, SystemException> protected abstract SchemaRegistryState.DerivationKey<ItemDefinition<?>>com.querydsl.core.types.Path<?>[]fullObjectExpressions(Q base) abstract ItemPathClass<? extends Item<? extends PrismValue,?>> booleanhasFullObject(com.querydsl.core.Tuple row, Q path) initRowObjectWithFullObject(S schemaObject, OR ownerRow) final StoSchemaObject(R row) Implemented for searchable containers that do not use fullObject for their recreation.toSchemaObjectEmbedded(com.querydsl.core.Tuple tuple, Q alias) protected abstract StoSchemaObjectLegacy(R row) booleanMethods inherited from class com.evolveum.midpoint.repo.sqale.qmodel.common.QContainerMapping
attachContainerIdPath, attachOwnerOid, containerDepth, containerIdentityPredicate, containerIdPath, initContainerMapping, initRowObject, insert, newAliasInstance, newRowObject, selectExpressions, toSchemaObjectMethods inherited from class com.evolveum.midpoint.repo.sqale.mapping.SqaleTableMapping
addExtensionMapping, binaryMapper, booleanMapper, createFullObject, createRowTransformer, doubleMapper, enumMapper, fullObjectItemsToSkip, getDefinition, getPartitionManager, insert, integerMapper, multiPolyStringMapper, multiStringMapper, multiUriMapper, multiValueMapper, needsInitialization, objectReference, objectReference, objectTypeToQName, parseSchemaObject, parseSchemaObject, polyStringMapper, preprocessCacheableUris, processCacheableRelation, processCacheableUri, processCacheableUri, processCacheableUris, processExtensionColumns, processExtensions, repositoryContext, resolveIdToUri, resolveReferenceNames, resolveUriIdToQName, schemaTypeToObjectType, setPolyString, setReference, storeRefs, stringMapper, stringsToArray, timestampMapper, toSchemaObjectComplete, toSchemaObjectCompleteSafe, toSchemaObjectInternal, uriMapper, uuidMapperMethods inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryTableMapping
addDetailFetchMapper, addExtensionColumn, appendPaths, defaultAlias, defaultAliasName, detailFetchMappers, getExtensionColumns, joinOn, longMapper, newAlias, newRowObject, paths, prismContext, selectExpressionsWithCustomColumns, tableName, toString, updateGetOptionsMethods inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMapping
addItemMapping, addRelationResolver, getItemMapper, getItemMappings, getRelationResolver, itemDefinition, itemMapper, queryType, relationResolver, schemaTypeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.evolveum.midpoint.repo.sqale.qmodel.object.QSeparatelySerializedItem
orderSpecifier, tableNameMethods inherited from interface com.evolveum.midpoint.repo.sqale.mapping.SqaleMappingMixin
addAuditRefMapping, addContainerTableMapping, addExtensionMapping, addItemMapping, addNestedMapping, addRefMapping, addRefMapping, addRelationResolver, queryType
-
Constructor Details
-
QContainerWithFullObjectMapping
-
-
Method Details
-
getItemPath
- Specified by:
getItemPathin interfaceQSeparatelySerializedItem<S extends Containerable,Q extends QContainerWithFullObject<R, OR>>
-
initRowObjectWithFullObject
- Throws:
SchemaException
-
afterModify
Description copied from interface:SqaleMappingMixinMethod called from `SqaleUpdateContext.finishExecutionOwn()` for containers. This can be handy when more than just column set is required, e.g. to refresh fullObject, etc.- Specified by:
afterModifyin interfaceSqaleMappingMixin<S extends Containerable,Q extends QContainerWithFullObject<R, OR>, R extends MContainerWithFullObject> - Throws:
SchemaException
-
toSchemaObject
Description copied from class:QContainerMappingImplemented for searchable containers that do not use fullObject for their recreation.- Overrides:
toSchemaObjectin classQContainerMapping<S extends Containerable,Q extends QContainerWithFullObject<R, OR>, R extends MContainerWithFullObject, OR> - Throws:
SchemaException
-
toSchemaObjectLegacy
- Throws:
SchemaException
-
allOwnedBy
- Specified by:
allOwnedByin interfaceQSeparatelySerializedItem<S extends Containerable,Q extends QContainerWithFullObject<R, OR>>
-
hasFullObject
- Specified by:
hasFullObjectin interfaceQSeparatelySerializedItem<S extends Containerable,Q extends QContainerWithFullObject<R, OR>>
-
fullObjectExpressions
- Specified by:
fullObjectExpressionsin interfaceQSeparatelySerializedItem<S extends Containerable,Q extends QContainerWithFullObject<R, OR>>
-
getOwner
- Specified by:
getOwnerin interfaceQSeparatelySerializedItem<S extends Containerable,Q extends QContainerWithFullObject<R, OR>>
-
toSchemaObjectEmbedded
public PrismValue toSchemaObjectEmbedded(com.querydsl.core.Tuple tuple, Q alias) throws SchemaException - Specified by:
toSchemaObjectEmbeddedin interfaceQSeparatelySerializedItem<S extends Containerable,Q extends QContainerWithFullObject<R, OR>> - Throws:
SchemaException
-
getPrismItemType
- Specified by:
getPrismItemTypein interfaceQSeparatelySerializedItem<S extends Containerable,Q extends QContainerWithFullObject<R, OR>>
-
createAlias
- Specified by:
createAliasin interfaceQSeparatelySerializedItem<S extends Containerable,Q extends QContainerWithFullObject<R, OR>>
-
useDeltaApplyResults
public boolean useDeltaApplyResults()- Overrides:
useDeltaApplyResultsin classQContainerMapping<S extends Containerable,Q extends QContainerWithFullObject<R, OR>, R extends MContainerWithFullObject, OR>
-
definitionDerivationKey
- Overrides:
definitionDerivationKeyin classSqaleTableMapping<S extends Containerable,Q extends QContainerWithFullObject<R, OR>, R extends MContainerWithFullObject>
-
definitionDerivation
protected abstract CheckedFunction<SchemaRegistryState,ItemDefinition<?>, definitionDerivation()SystemException> - Overrides:
definitionDerivationin classSqaleTableMapping<S extends Containerable,Q extends QContainerWithFullObject<R, OR>, R extends MContainerWithFullObject>
-