public void trackUpdates(boolean isNew) { if (activityInstances!=null) { for (ActivityInstanceImpl activityInstance: activityInstances) { activityInstance.trackUpdates(isNew); } } if (variableInstances!=null) { for (VariableInstanceImpl variableInstance: variableInstances) { variableInstance.trackUpdates(isNew); } } }
public boolean hasActivityInstance(String activityInstanceId) { if (hasActivityInstances()) { for (ActivityInstanceImpl activityInstance : activityInstances) { if (activityInstance.hasActivityInstance(activityInstanceId)) { return true; } } } return false; }
public void trackUpdates(boolean isNew) { if (updates==null) { updates = new ActivityInstanceUpdates(isNew); } else { updates.reset(isNew); } super.trackUpdates(isNew); }
public void trackUpdates(boolean isNew) { if (updates == null) { updates = new WorkflowInstanceUpdates(isNew); } else { updates.reset(isNew); } super.trackUpdates(isNew); }
public Object getValue(ExpressionImpl expression) { VariableInstanceImpl variableInstance = getVariableInstance(expression); if (variableInstance==null) { return null; } if (expression.fieldKeys==null) { return variableInstance.getValue(); } TypedValueImpl typedValue = getTypedValueField(variableInstance, expression.fieldKeys); return typedValue!=null ? typedValue.value : null; }
@Override public void setPropertyOpt(String key, Object value) { getUpdates().isPropertiesChanged = true; super.setPropertyOpt(key, value); }
@Override public void setProperty(String key, Object value) { super.setProperty(key, value); if (updates != null) { getUpdates().isPropertiesChanged = true; } }
@Override public Object removeProperty(String key) { getUpdates().isPropertiesChanged = true; return super.removeProperty(key); }
public TypedValueImpl getTypedValue(ExpressionImpl expression) { VariableInstanceImpl variableInstance = getVariableInstance(expression); if (variableInstance == null) { return null; } if (expression.fieldKeys==null) { return variableInstance.getTypedValue(); } return getTypedValueField(variableInstance, expression.fieldKeys); }
@Override public void setProperties(Map<String, Object> properties) { getUpdates().isPropertiesChanged = true; super.setProperties(properties); }
public void addWork(ActivityInstanceImpl activityInstance) { if (isWorkAsync(activityInstance)) { addAsyncWork(activityInstance); } else { addSyncWork(activityInstance); } }
public void setWorkState(String workState) { // log.debug("Setting workstate of "+this+" from "+this.workState+" to "+workState); this.workState = workState; if (updates!=null) { getUpdates().isWorkStateChanged = true; if (parent!=null) { parent.propagateActivityInstanceChange(); } } }
public void propagateToParent() { setWorkState(STATE_PROPAGATE_TO_PARENT); workflowInstance.addWork(this); }
public void initializeForEachElement(VariableImpl elementVariableDefinition, Object value) { VariableInstanceImpl elementVariableInstance = createVariableInstanceLocal(elementVariableDefinition); elementVariableInstance.setValue(value); }
/** * Returns the description of the variable specified by the given binding expression. */ public VariableImpl findVariable(BindingImpl binding) { if (binding == null || binding.expression == null) { return null; } VariableInstanceImpl variableInstance = getVariableInstance(binding.expression); if (variableInstance == null || variableInstance.getVariable() == null) { return null; } return variableInstance.getVariable(); }
public void propagateActivityInstanceChange() { if (updates!=null) { updates.isActivityInstancesChanged = true; if (parent != null) { parent.propagateActivityInstanceChange(); } } }
public void setTransientPropertyOpt(String key,Object value) { if (value==null) { return; } setTransientProperty(key, value); } public Object removeTransientProperty(String key) {
protected VariableInstanceImpl getVariableInstance(ExpressionImpl expression) { if (expression==null || expression.variableId==null) { return null; } return findVariableInstance(expression.variableId); }
public boolean hasOpenActivityInstances() { if (activityInstances==null) { return false; } for (ActivityInstanceImpl activityInstance: activityInstances) { if (!activityInstance.isEnded()) { return true; } } return false; }
public void setValue(Object value) { this.value = value; if (updates!=null) { updates.isValueChanged = true; if (parent instanceof ActivityInstanceImpl) { parent.propagateActivityInstanceChange(); } } }