Class QCaseMapping
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<CaseType,QCase,MCase>
com.evolveum.midpoint.repo.sqale.qmodel.cases.QCaseMapping
- All Implemented Interfaces:
SqaleMappingMixin<CaseType,QCase, MCase>
-
Field Summary
FieldsFields inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMapping
logger -
Method Summary
Modifier and TypeMethodDescriptionstatic QCaseMappingstatic QCaseMappinginitCaseMapping(@NotNull SqaleRepoContext repositoryContext) protected QCasenewAliasInstance(String alias) Method returning new instance ofEntityPath- to be implemented by sub-mapping.voidstoreRelatedEntities(@NotNull MCase row, @NotNull CaseType schemaObject, @NotNull JdbcSession jdbcSession) Stores other entities related to the main object row like containers, references, etc.@NotNull MCasetoRowObjectWithoutFullObject(CaseType schemaObject, JdbcSession jdbcSession) Override this to fill additional row attributes after calling this super version.Methods inherited from class com.evolveum.midpoint.repo.sqale.qmodel.object.QAssignmentHolderMapping
getAssignmentHolderMapping, initAssignmentHolderMappingMethods inherited from class com.evolveum.midpoint.repo.sqale.qmodel.object.QObjectMapping
addContainerTableMapping, addFullObjectContainerTableMapping, additionalSelectsByDefault, addRefMapping, createRowTransformer, customizeFullObjectItemsToSkip, definitionDerivation, definitionDerivationKey, fullObjectItemsToSkip, getObjectMapping, initObjectMapping, isExcludeAll, isExcludeFullObject, isReindexSupported, preprocessCacheableUris, selectExpressions, setFullObject, setStoreSplitted, toSchemaObject, toSchemaObjectCompleteSafe, updateGetOptions, upgradeLegacyMetadataToValueMetadataMethods inherited from class com.evolveum.midpoint.repo.sqale.mapping.SqaleTableMapping
addExtensionMapping, binaryMapper, booleanMapper, createFullObject, doubleMapper, enumMapper, getDefinition, getPartitionManager, 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, uuidMapperMethods inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryTableMapping
addDetailFetchMapper, addExtensionColumn, appendPaths, defaultAlias, defaultAliasName, detailFetchMappers, getExtensionColumns, joinOn, longMapper, newAlias, paths, prismContext, selectExpressionsWithCustomColumns, tableName, toStringMethods 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.mapping.SqaleMappingMixin
addAuditRefMapping, addExtensionMapping, addItemMapping, addNestedMapping, addRefMapping, addRelationResolver, afterModify, queryType
-
Field Details
-
DEFAULT_ALIAS_NAME
- See Also:
-
-
Method Details
-
initCaseMapping
-
getCaseMapping
-
newAliasInstance
Description copied from class:QueryTableMappingMethod 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:
newAliasInstancein classQAssignmentHolderMapping<CaseType,QCase, MCase>
-
newRowObject
- Overrides:
newRowObjectin classQObjectMapping<CaseType,QCase, MCase>
-
toRowObjectWithoutFullObject
@NotNull public @NotNull MCase toRowObjectWithoutFullObject(CaseType schemaObject, JdbcSession jdbcSession) Description copied from class:QObjectMappingOverride this to fill additional row attributes after calling this super version. *This must be called with active JDBC session* so it can create newQUrirows. As this is intended for inserts *DO NOT* setMObject.objectTypeto any value, it must be NULL otherwise the DB will complain about the value for the generated column. OID may be null, hence the method does NOT create any sub-entities, seeQObjectMapping.storeRelatedEntities(MObject, ObjectType, JdbcSession). Try to keep order of fields here, in M-class (MObject for this one) and in SQL the same.- Overrides:
toRowObjectWithoutFullObjectin classQObjectMapping<CaseType,QCase, MCase>
-
storeRelatedEntities
public void storeRelatedEntities(@NotNull @NotNull MCase row, @NotNull @NotNull CaseType schemaObject, @NotNull @NotNull JdbcSession jdbcSession) throws SchemaException Description copied from class:QObjectMappingStores 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:
storeRelatedEntitiesin classQAssignmentHolderMapping<CaseType,QCase, MCase> - 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
-