public abstract class VariableScopeImpl extends Object implements Serializable, org.flowable.variable.api.delegate.VariableScope
| Modifier and Type | Field and Description |
|---|---|
protected org.flowable.common.engine.impl.javax.el.ELContext |
cachedElContext |
protected String |
id |
protected Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> |
transientVariabes |
protected Map<String,VariableInstanceEntity> |
usedVariablesCache |
protected Map<String,VariableInstanceEntity> |
variableInstances |
| Constructor and Description |
|---|
VariableScopeImpl() |
| Modifier and Type | Method and Description |
|---|---|
protected Map<String,Object> |
collectTransientVariables(HashMap<String,Object> variables) |
protected Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> |
collectVariableInstances(HashMap<String,org.flowable.variable.api.persistence.entity.VariableInstance> variables) |
protected Set<String> |
collectVariableNames(Set<String> variableNames) |
protected Map<String,Object> |
collectVariables(HashMap<String,Object> variables) |
protected VariableInstanceEntity |
createVariableInstance(String variableName,
Object value,
ExecutionEntity sourceActivityExecution) |
void |
createVariableLocal(String variableName,
Object value) |
protected void |
createVariableLocal(String variableName,
Object value,
ExecutionEntity sourceActivityExecution)
only called when a new variable is created on this variable scope.
|
void |
createVariablesLocal(Map<String,? extends Object> variables) |
protected void |
deleteVariableInstanceForExplicitUserCall(VariableInstanceEntity variableInstance,
ExecutionEntity sourceActivityExecution) |
void |
deleteVariablesInstanceForLeavingScope() |
protected void |
ensureVariableInstancesInitialized() |
org.flowable.common.engine.impl.javax.el.ELContext |
getCachedElContext() |
String |
getId() |
protected abstract VariableScopeImpl |
getParentVariableScope() |
protected ExecutionEntity |
getSourceActivityExecution() |
protected abstract VariableInstanceEntity |
getSpecificVariable(String variableName) |
protected abstract List<VariableInstanceEntity> |
getSpecificVariables(Collection<String> variableNames) |
Object |
getTransientVariable(String variableName) |
Object |
getTransientVariableLocal(String variableName) |
Map<String,Object> |
getTransientVariables() |
Map<String,Object> |
getTransientVariablesLocal() |
Map<String,VariableInstanceEntity> |
getUsedVariablesCache() |
Object |
getVariable(String variableName) |
Object |
getVariable(String variableName,
boolean fetchAllVariables)
The same operation as
getVariable(String), but with an extra parameter to indicate whether or not all variables need to be fetched. |
<T> T |
getVariable(String variableName,
Class<T> variableClass) |
org.flowable.variable.api.persistence.entity.VariableInstance |
getVariableInstance(String variableName) |
org.flowable.variable.api.persistence.entity.VariableInstance |
getVariableInstance(String variableName,
boolean fetchAllVariables) |
Map<String,VariableInstanceEntity> |
getVariableInstanceEntities() |
org.flowable.variable.api.persistence.entity.VariableInstance |
getVariableInstanceLocal(String variableName) |
org.flowable.variable.api.persistence.entity.VariableInstance |
getVariableInstanceLocal(String variableName,
boolean fetchAllVariables) |
Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> |
getVariableInstances() |
Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> |
getVariableInstances(Collection<String> variableNames) |
Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> |
getVariableInstances(Collection<String> variableNames,
boolean fetchAllVariables) |
Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> |
getVariableInstancesLocal() |
Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> |
getVariableInstancesLocal(Collection<String> variableNames) |
Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> |
getVariableInstancesLocal(Collection<String> variableNames,
boolean fetchAllVariables) |
Object |
getVariableLocal(String variableName) |
Object |
getVariableLocal(String variableName,
boolean fetchAllVariables) |
<T> T |
getVariableLocal(String variableName,
Class<T> variableClass) |
Set<String> |
getVariableNames() |
Set<String> |
getVariableNamesLocal() |
Map<String,Object> |
getVariables() |
Map<String,Object> |
getVariables(Collection<String> variableNames) |
Map<String,Object> |
getVariables(Collection<String> variableNames,
boolean fetchAllVariables) |
Map<String,Object> |
getVariablesLocal() |
Map<String,Object> |
getVariablesLocal(Collection<String> variableNames) |
Map<String,Object> |
getVariablesLocal(Collection<String> variableNames,
boolean fetchAllVariables) |
boolean |
hasVariable(String variableName) |
boolean |
hasVariableLocal(String variableName) |
boolean |
hasVariables() |
boolean |
hasVariablesLocal() |
protected abstract void |
initializeVariableInstanceBackPointer(VariableInstanceEntity variableInstance) |
protected boolean |
isActivityIdUsedForDetails()
Execution variable updates have activity instance ids, but historic task variable updates don't.
|
protected abstract List<VariableInstanceEntity> |
loadVariableInstances() |
void |
removeTransientVariable(String variableName) |
void |
removeTransientVariableLocal(String variableName) |
void |
removeTransientVariables() |
void |
removeTransientVariablesLocal() |
void |
removeVariable(String variableName) |
protected void |
removeVariable(String variableName,
ExecutionEntity sourceActivityExecution) |
void |
removeVariableLocal(String variableName) |
protected void |
removeVariableLocal(String variableName,
ExecutionEntity sourceActivityExecution) |
void |
removeVariables() |
void |
removeVariables(Collection<String> variableNames) |
void |
removeVariablesLocal() |
void |
removeVariablesLocal(Collection<String> variableNames) |
void |
setCachedElContext(org.flowable.common.engine.impl.javax.el.ELContext cachedElContext) |
void |
setId(String id) |
void |
setTransientVariable(String variableName,
Object variableValue) |
void |
setTransientVariableLocal(String variableName,
Object variableValue) |
void |
setTransientVariables(Map<String,Object> transientVariables) |
void |
setTransientVariablesLocal(Map<String,Object> transientVariables) |
void |
setVariable(String variableName,
Object value) |
void |
setVariable(String variableName,
Object value,
boolean fetchAllVariables)
The default
setVariable(String, Object) fetches all variables (for historical and backwards compatible reasons) while setting the variables. |
protected void |
setVariable(String variableName,
Object value,
ExecutionEntity sourceActivityExecution,
boolean fetchAllVariables) |
Object |
setVariableLocal(String variableName,
Object value) |
Object |
setVariableLocal(String variableName,
Object value,
boolean fetchAllVariables)
The default
setVariableLocal(String, Object) fetches all variables (for historical and backwards compatible reasons) while setting the variables. |
Object |
setVariableLocal(String variableName,
Object value,
ExecutionEntity sourceActivityExecution,
boolean fetchAllVariables) |
void |
setVariables(Map<String,? extends Object> variables) |
void |
setVariablesLocal(Map<String,? extends Object> variables) |
protected void |
updateVariableInstance(VariableInstanceEntity variableInstance,
Object value,
ExecutionEntity sourceActivityExecution) |
protected Map<String,VariableInstanceEntity> variableInstances
protected Map<String,VariableInstanceEntity> usedVariablesCache
protected Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> transientVariabes
protected org.flowable.common.engine.impl.javax.el.ELContext cachedElContext
protected String id
protected abstract List<VariableInstanceEntity> loadVariableInstances()
protected abstract VariableScopeImpl getParentVariableScope()
protected abstract void initializeVariableInstanceBackPointer(VariableInstanceEntity variableInstance)
protected void ensureVariableInstancesInitialized()
public Map<String,Object> getVariables()
getVariables in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> getVariableInstances()
getVariableInstances in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,Object> getVariables(Collection<String> variableNames)
getVariables in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> getVariableInstances(Collection<String> variableNames)
getVariableInstances in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,Object> getVariables(Collection<String> variableNames, boolean fetchAllVariables)
getVariables in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> getVariableInstances(Collection<String> variableNames, boolean fetchAllVariables)
getVariableInstances in interface org.flowable.variable.api.delegate.VariableScopeprotected Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> collectVariableInstances(HashMap<String,org.flowable.variable.api.persistence.entity.VariableInstance> variables)
public Object getVariable(String variableName)
getVariable in interface org.flowable.common.engine.api.variable.VariableContainergetVariable in interface org.flowable.variable.api.delegate.VariableScopepublic org.flowable.variable.api.persistence.entity.VariableInstance getVariableInstance(String variableName)
getVariableInstance in interface org.flowable.variable.api.delegate.VariableScopepublic Object getVariable(String variableName, boolean fetchAllVariables)
getVariable(String), but with an extra parameter to indicate whether or not all variables need to be fetched.
Note that the default Activiti way (because of backwards compatibility) is to fetch all the variables when doing a get/set of variables. So this means 'true' is the default value for this
method, and in fact it will simply delegate to getVariable(String). This can also be the most performant, if you're doing a lot of variable gets in the same transaction (eg in service
tasks).
In case 'false' is used, only the specific variable will be fetched.
getVariable in interface org.flowable.variable.api.delegate.VariableScopepublic org.flowable.variable.api.persistence.entity.VariableInstance getVariableInstance(String variableName, boolean fetchAllVariables)
getVariableInstance in interface org.flowable.variable.api.delegate.VariableScopeprotected abstract VariableInstanceEntity getSpecificVariable(String variableName)
public Object getVariableLocal(String variableName)
getVariableLocal in interface org.flowable.variable.api.delegate.VariableScopepublic org.flowable.variable.api.persistence.entity.VariableInstance getVariableInstanceLocal(String variableName)
getVariableInstanceLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Object getVariableLocal(String variableName, boolean fetchAllVariables)
getVariableLocal in interface org.flowable.variable.api.delegate.VariableScopepublic org.flowable.variable.api.persistence.entity.VariableInstance getVariableInstanceLocal(String variableName, boolean fetchAllVariables)
getVariableInstanceLocal in interface org.flowable.variable.api.delegate.VariableScopepublic boolean hasVariables()
hasVariables in interface org.flowable.variable.api.delegate.VariableScopepublic boolean hasVariablesLocal()
hasVariablesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic boolean hasVariable(String variableName)
hasVariable in interface org.flowable.common.engine.api.variable.VariableContainerhasVariable in interface org.flowable.variable.api.delegate.VariableScopepublic boolean hasVariableLocal(String variableName)
hasVariableLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Set<String> getVariableNames()
getVariableNames in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,Object> getVariablesLocal()
getVariablesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> getVariableInstancesLocal()
getVariableInstancesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,Object> getVariablesLocal(Collection<String> variableNames)
getVariablesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> getVariableInstancesLocal(Collection<String> variableNames)
getVariableInstancesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,Object> getVariablesLocal(Collection<String> variableNames, boolean fetchAllVariables)
getVariablesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,org.flowable.variable.api.persistence.entity.VariableInstance> getVariableInstancesLocal(Collection<String> variableNames, boolean fetchAllVariables)
getVariableInstancesLocal in interface org.flowable.variable.api.delegate.VariableScopeprotected abstract List<VariableInstanceEntity> getSpecificVariables(Collection<String> variableNames)
public Set<String> getVariableNamesLocal()
getVariableNamesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,VariableInstanceEntity> getVariableInstanceEntities()
public Map<String,VariableInstanceEntity> getUsedVariablesCache()
public void setVariables(Map<String,? extends Object> variables)
setVariables in interface org.flowable.variable.api.delegate.VariableScopepublic void setVariablesLocal(Map<String,? extends Object> variables)
setVariablesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic void removeVariables()
removeVariables in interface org.flowable.variable.api.delegate.VariableScopepublic void removeVariablesLocal()
removeVariablesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic void deleteVariablesInstanceForLeavingScope()
public void removeVariables(Collection<String> variableNames)
removeVariables in interface org.flowable.variable.api.delegate.VariableScopepublic void removeVariablesLocal(Collection<String> variableNames)
removeVariablesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic void setVariable(String variableName, Object value)
setVariable in interface org.flowable.common.engine.api.variable.VariableContainersetVariable in interface org.flowable.variable.api.delegate.VariableScopepublic void setVariable(String variableName, Object value, boolean fetchAllVariables)
setVariable(String, Object) fetches all variables (for historical and backwards compatible reasons) while setting the variables.
Setting the fetchAllVariables parameter to true is the default behaviour (ie fetching all variables) Setting the fetchAllVariables parameter to false does not do that.
setVariable in interface org.flowable.variable.api.delegate.VariableScopeprotected void setVariable(String variableName, Object value, ExecutionEntity sourceActivityExecution, boolean fetchAllVariables)
public Object setVariableLocal(String variableName, Object value)
setVariableLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Object setVariableLocal(String variableName, Object value, boolean fetchAllVariables)
setVariableLocal(String, Object) fetches all variables (for historical and backwards compatible reasons) while setting the variables.
Setting the fetchAllVariables parameter to true is the default behaviour (ie fetching all variables) Setting the fetchAllVariables parameter to false does not do that.
setVariableLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Object setVariableLocal(String variableName, Object value, ExecutionEntity sourceActivityExecution, boolean fetchAllVariables)
protected void createVariableLocal(String variableName, Object value, ExecutionEntity sourceActivityExecution)
public void removeVariable(String variableName)
removeVariable in interface org.flowable.variable.api.delegate.VariableScopeprotected void removeVariable(String variableName, ExecutionEntity sourceActivityExecution)
public void removeVariableLocal(String variableName)
removeVariableLocal in interface org.flowable.variable.api.delegate.VariableScopeprotected ExecutionEntity getSourceActivityExecution()
protected void removeVariableLocal(String variableName, ExecutionEntity sourceActivityExecution)
protected void deleteVariableInstanceForExplicitUserCall(VariableInstanceEntity variableInstance, ExecutionEntity sourceActivityExecution)
protected void updateVariableInstance(VariableInstanceEntity variableInstance, Object value, ExecutionEntity sourceActivityExecution)
protected VariableInstanceEntity createVariableInstance(String variableName, Object value, ExecutionEntity sourceActivityExecution)
protected boolean isActivityIdUsedForDetails()
public void setTransientVariablesLocal(Map<String,Object> transientVariables)
setTransientVariablesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic void setTransientVariableLocal(String variableName, Object variableValue)
setTransientVariableLocal in interface org.flowable.variable.api.delegate.VariableScopepublic void setTransientVariables(Map<String,Object> transientVariables)
setTransientVariables in interface org.flowable.variable.api.delegate.VariableScopepublic void setTransientVariable(String variableName, Object variableValue)
setTransientVariable in interface org.flowable.common.engine.api.variable.VariableContainersetTransientVariable in interface org.flowable.variable.api.delegate.VariableScopepublic Object getTransientVariableLocal(String variableName)
getTransientVariableLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,Object> getTransientVariablesLocal()
getTransientVariablesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic Object getTransientVariable(String variableName)
getTransientVariable in interface org.flowable.variable.api.delegate.VariableScopepublic Map<String,Object> getTransientVariables()
getTransientVariables in interface org.flowable.variable.api.delegate.VariableScopeprotected Map<String,Object> collectTransientVariables(HashMap<String,Object> variables)
public void removeTransientVariableLocal(String variableName)
removeTransientVariableLocal in interface org.flowable.variable.api.delegate.VariableScopepublic void removeTransientVariablesLocal()
removeTransientVariablesLocal in interface org.flowable.variable.api.delegate.VariableScopepublic void removeTransientVariable(String variableName)
removeTransientVariable in interface org.flowable.variable.api.delegate.VariableScopepublic void removeTransientVariables()
removeTransientVariables in interface org.flowable.variable.api.delegate.VariableScopepublic org.flowable.common.engine.impl.javax.el.ELContext getCachedElContext()
public void setCachedElContext(org.flowable.common.engine.impl.javax.el.ELContext cachedElContext)
public String getId()
public void setId(String id)
public <T> T getVariable(String variableName, Class<T> variableClass)
getVariable in interface org.flowable.variable.api.delegate.VariableScopeCopyright © 2018 Flowable. All rights reserved.