Class DataObjectInstanceVariableContainerEntitySession
java.lang.Object
com.flowable.dataobject.engine.impl.runtime.datasource.DataObjectInstanceVariableContainerEntitySession
- All Implemented Interfaces:
org.flowable.common.engine.impl.interceptor.Session
public class DataObjectInstanceVariableContainerEntitySession
extends java.lang.Object
implements org.flowable.common.engine.impl.interceptor.Session
- Author:
- Filip Hrisafov
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<java.lang.String,java.util.Map<java.lang.Object,java.util.Collection<org.flowable.variable.service.impl.persistence.entity.VariableInstanceEntity>>>
cachedDefinitionIdDataObjectIdValueFields
protected java.util.Map<java.lang.String,java.util.Map<java.lang.Object,CachedDataObjectInstanceVariableContainer>>
cachedObjects
protected DataObjectRepositoryService
dataObjectRepositoryService
protected java.util.Map<java.lang.String,java.util.Map<java.lang.Object,DataObjectInstanceVariableContainer>>
deletedObjects
protected static org.slf4j.Logger
LOGGER
protected DataObjectOperations
serviceRegistryDataObjectOperations
protected java.util.List<DataObjectInstanceVariableContainer>
updatedObjects
protected java.util.Set<org.flowable.variable.service.impl.persistence.entity.VariableInstanceEntity>
variablesToUpdate
-
Constructor Summary
Constructors Constructor Description DataObjectInstanceVariableContainerEntitySession(DataObjectRepositoryService dataObjectRepositoryService, DataObjectOperations serviceRegistryDataObjectOperations)
-
Method Summary
Modifier and Type Method Description void
close()
protected void
debugFlush()
void
delete(DataObjectInstanceVariableContainer entity)
void
determineUpdatedObjects()
DataObjectInstanceVariableContainer
findByDataAndDefinitionId(java.util.Map<java.lang.String,java.lang.Object> data, java.lang.String definitionId)
DataObjectInstanceVariableContainer
findByIdAndDefinitionId(java.lang.String id, java.lang.String definitionId)
void
flush()
protected void
flushDeleteEntities(java.lang.String definitionId, java.util.Collection<DataObjectInstanceVariableContainer> entities)
protected void
flushDeletes()
protected void
flushInsertEntities(java.lang.String definitionId, java.util.Collection<DataObjectInstanceVariableContainer> entities)
protected void
flushUpdates()
protected void
flushVariableUpdates()
protected DataObjectDefinition
getDataObjectDefinitionByDefinitionId(java.lang.String definitionId)
protected DataObjectModel
getDataObjectModelByDefinitionId(java.lang.String definitionId)
void
insert(DataObjectInstanceVariableContainer entity)
boolean
isEntityToBeDeleted(DataObjectInstanceVariableContainer entity)
CachedDataObjectInstanceVariableContainer
putInCache(DataObjectInstanceVariableContainer entity, boolean storeState)
void
putInCacheIfMissing(DataObjectInstanceVariableContainer dataObjectInstance)
void
putInCacheIfMissing(DataObjectInstanceVariableContainer dataObjectInstance, org.flowable.variable.api.types.ValueFields valueFields)
protected void
removeUnnecessaryOperations()
Clears all deleted and inserted objects from the cache, and removes inserts and deletes that cancel each other.protected DataObjectInstanceVariableContainer
selectById(java.lang.String id, java.lang.String definitionId)
void
update(DataObjectInstanceVariableContainer entity)
-
Field Details
-
LOGGER
protected static final org.slf4j.Logger LOGGER -
dataObjectRepositoryService
-
serviceRegistryDataObjectOperations
-
deletedObjects
protected java.util.Map<java.lang.String,java.util.Map<java.lang.Object,DataObjectInstanceVariableContainer>> deletedObjects -
updatedObjects
-
cachedDefinitionIdDataObjectIdValueFields
protected java.util.Map<java.lang.String,java.util.Map<java.lang.Object,java.util.Collection<org.flowable.variable.service.impl.persistence.entity.VariableInstanceEntity>>> cachedDefinitionIdDataObjectIdValueFields -
variablesToUpdate
protected java.util.Set<org.flowable.variable.service.impl.persistence.entity.VariableInstanceEntity> variablesToUpdate -
cachedObjects
protected java.util.Map<java.lang.String,java.util.Map<java.lang.Object,CachedDataObjectInstanceVariableContainer>> cachedObjects
-
-
Constructor Details
-
DataObjectInstanceVariableContainerEntitySession
public DataObjectInstanceVariableContainerEntitySession(DataObjectRepositoryService dataObjectRepositoryService, DataObjectOperations serviceRegistryDataObjectOperations)
-
-
Method Details
-
insert
-
update
-
delete
-
findByIdAndDefinitionId
public DataObjectInstanceVariableContainer findByIdAndDefinitionId(java.lang.String id, java.lang.String definitionId) -
findByDataAndDefinitionId
public DataObjectInstanceVariableContainer findByDataAndDefinitionId(java.util.Map<java.lang.String,java.lang.Object> data, java.lang.String definitionId) -
selectById
protected DataObjectInstanceVariableContainer selectById(java.lang.String id, java.lang.String definitionId) -
putInCacheIfMissing
-
putInCacheIfMissing
public void putInCacheIfMissing(DataObjectInstanceVariableContainer dataObjectInstance, org.flowable.variable.api.types.ValueFields valueFields) -
putInCache
public CachedDataObjectInstanceVariableContainer putInCache(DataObjectInstanceVariableContainer entity, boolean storeState) -
flush
public void flush()- Specified by:
flush
in interfaceorg.flowable.common.engine.impl.interceptor.Session
-
determineUpdatedObjects
public void determineUpdatedObjects() -
removeUnnecessaryOperations
protected void removeUnnecessaryOperations()Clears all deleted and inserted objects from the cache, and removes inserts and deletes that cancel each other.Also removes deletes with duplicate ids.
-
flushVariableUpdates
protected void flushVariableUpdates() -
isEntityToBeDeleted
-
debugFlush
protected void debugFlush() -
flushInsertEntities
protected void flushInsertEntities(java.lang.String definitionId, java.util.Collection<DataObjectInstanceVariableContainer> entities) -
flushUpdates
protected void flushUpdates() -
flushDeletes
protected void flushDeletes() -
flushDeleteEntities
protected void flushDeleteEntities(java.lang.String definitionId, java.util.Collection<DataObjectInstanceVariableContainer> entities) -
close
public void close()- Specified by:
close
in interfaceorg.flowable.common.engine.impl.interceptor.Session
-
getDataObjectModelByDefinitionId
-
getDataObjectDefinitionByDefinitionId
protected DataObjectDefinition getDataObjectDefinitionByDefinitionId(java.lang.String definitionId)
-