Class QSimulationResultMapping
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<SimulationResultType,QSimulationResult,MSimulationResult>
  
com.evolveum.midpoint.repo.sqale.qmodel.simulation.QSimulationResultMapping
- All Implemented Interfaces:
- SqaleMappingMixin<SimulationResultType,- QSimulationResult, - MSimulationResult> 
public class QSimulationResultMapping
extends QAssignmentHolderMapping<SimulationResultType,QSimulationResult,MSimulationResult>  
- 
Field SummaryFieldsFields inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMappinglogger
- 
Method SummaryModifier and TypeMethodDescriptionprotected voidcustomizeFullObjectItemsToSkip(PathSet mutableSet) static QSimulationResultMappingstatic QSimulationResultMappinginitSimulationResultMapping(@NotNull SqaleRepoContext repositoryContext) booleanreturns false, reindex is not feasible for Simulation Result Simulation Result stores large quantity of data and forceReindex, operation is Read, Remove, Add - which with SQL constraints would require reading whole simulation (and all results) storing it in-memory and then dumping it in one transaction into repository which is currently not feasible.protected QSimulationResultnewAliasInstance(String alias) Method returning new instance ofEntityPath- to be implemented by sub-mapping.@NotNull com.querydsl.core.types.Path<?>[]selectExpressions(QSimulationResult entity, Collection<SelectorOptions<GetOperationOptions>> options) By default, usesQueryTableMapping.selectExpressionsWithCustomColumns(Q)and does not use options.voidstoreRelatedEntities(@NotNull MSimulationResult row, @NotNull SimulationResultType schemaObject, @NotNull JdbcSession jdbcSession) Stores other entities related to the main object row like containers, references, etc.@NotNull MSimulationResulttoRowObjectWithoutFullObject(SimulationResultType 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.QAssignmentHolderMappinggetAssignmentHolderMapping, initAssignmentHolderMappingMethods inherited from class com.evolveum.midpoint.repo.sqale.qmodel.object.QObjectMappingaddContainerTableMapping, addFullObjectContainerTableMapping, additionalSelectsByDefault, addRefMapping, createRowTransformer, definitionDerivation, definitionDerivationKey, fullObjectItemsToSkip, getObjectMapping, initObjectMapping, isExcludeAll, isExcludeFullObject, preprocessCacheableUris, setFullObject, setStoreSplitted, toSchemaObject, toSchemaObjectCompleteSafe, updateGetOptions, upgradeLegacyMetadataToValueMetadataMethods inherited from class com.evolveum.midpoint.repo.sqale.mapping.SqaleTableMappingaddExtensionMapping, 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.QueryTableMappingaddDetailFetchMapper, addExtensionColumn, appendPaths, defaultAlias, defaultAliasName, detailFetchMappers, getExtensionColumns, joinOn, longMapper, newAlias, paths, prismContext, selectExpressionsWithCustomColumns, tableName, toStringMethods inherited from class com.evolveum.midpoint.repo.sqlbase.mapping.QueryModelMappingaddItemMapping, addRelationResolver, getItemMapper, getItemMappings, getRelationResolver, itemDefinition, itemMapper, queryType, relationResolver, schemaTypeMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.evolveum.midpoint.repo.sqale.mapping.SqaleMappingMixinaddAuditRefMapping, addExtensionMapping, addItemMapping, addNestedMapping, addRefMapping, addRelationResolver, afterModify, queryType
- 
Field Details- 
DEFAULT_ALIAS_NAME- See Also:
 
 
- 
- 
Method Details- 
initSimulationResultMappingpublic static QSimulationResultMapping initSimulationResultMapping(@NotNull @NotNull SqaleRepoContext repositoryContext) 
- 
getSimulationResultMapping
- 
newAliasInstanceDescription 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 class- QAssignmentHolderMapping<SimulationResultType,- QSimulationResult, - MSimulationResult> 
 
- 
selectExpressions@NotNull public @NotNull com.querydsl.core.types.Path<?>[] selectExpressions(QSimulationResult entity, Collection<SelectorOptions<GetOperationOptions>> options) Description copied from class:QueryTableMappingBy default, usesQueryTableMapping.selectExpressionsWithCustomColumns(Q)and does not use options. Can be overridden to fulfil other needs, e.g. to select just full object.- Overrides:
- selectExpressionsin class- QObjectMapping<SimulationResultType,- QSimulationResult, - MSimulationResult> 
 
- 
toRowObjectWithoutFullObject@NotNull public @NotNull MSimulationResult toRowObjectWithoutFullObject(SimulationResultType 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 class- QObjectMapping<SimulationResultType,- QSimulationResult, - MSimulationResult> 
 
- 
newRowObject- Overrides:
- newRowObjectin class- QObjectMapping<SimulationResultType,- QSimulationResult, - MSimulationResult> 
 
- 
customizeFullObjectItemsToSkip- Overrides:
- customizeFullObjectItemsToSkipin class- QObjectMapping<SimulationResultType,- QSimulationResult, - MSimulationResult> 
 
- 
storeRelatedEntitiespublic void storeRelatedEntities(@NotNull @NotNull MSimulationResult row, @NotNull @NotNull SimulationResultType 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 class- QAssignmentHolderMapping<SimulationResultType,- QSimulationResult, - MSimulationResult> 
- Parameters:
- row- master row for the added object("aggregate root")
- schemaObject- schema objects for which the details are stored
- jdbcSession- JDBC session used to insert related rows
- Throws:
- SchemaException
 
- 
isReindexSupportedpublic boolean isReindexSupported()returns false, reindex is not feasible for Simulation Result Simulation Result stores large quantity of data and forceReindex, operation is Read, Remove, Add - which with SQL constraints would require reading whole simulation (and all results) storing it in-memory and then dumping it in one transaction into repository which is currently not feasible.- Overrides:
- isReindexSupportedin class- QObjectMapping<SimulationResultType,- QSimulationResult, - MSimulationResult> 
- Returns:
- True if reindex is supported for specified objects.
 
 
-