protected internal virtual void invokeVariableLifecycleListenersUpdate(CoreVariableInstance variableInstance, AbstractVariableScope sourceScope, IList <VariableInstanceLifecycleListener <CoreVariableInstance> > lifecycleListeners) { foreach (VariableInstanceLifecycleListener <CoreVariableInstance> lifecycleListener in lifecycleListeners) { lifecycleListener.onUpdate(variableInstance, sourceScope); } }
public virtual void setVariableLocal(string variableName, TypedValue value, AbstractVariableScope sourceActivityExecution) { checkJavaSerialization(variableName, value); VariableStore <CoreVariableInstance> variableStore = VariableStore; if (variableStore.containsKey(variableName)) { CoreVariableInstance existingInstance = variableStore.getVariable(variableName); existingInstance.Value = value; invokeVariableLifecycleListenersUpdate(existingInstance, sourceActivityExecution); } else if (variableStore.isRemoved(variableName)) { CoreVariableInstance existingInstance = variableStore.getRemovedVariable(variableName); existingInstance.Value = value; VariableStore.addVariable(existingInstance); invokeVariableLifecycleListenersUpdate(existingInstance, sourceActivityExecution); DbEntityManager dbEntityManager = Context.CommandContext.DbEntityManager; dbEntityManager.undoDelete((VariableInstanceEntity)existingInstance); } else { CoreVariableInstance variableValue = VariableInstanceFactory.build(variableName, value, false); VariableStore.addVariable(variableValue); invokeVariableLifecycleListenersCreate(variableValue, sourceActivityExecution); } }
public virtual void initializeVariableStore(IDictionary <string, object> variables) { foreach (string variableName in variables.Keys) { TypedValue value = Variables.untypedValue(variables[variableName]); CoreVariableInstance variableValue = VariableInstanceFactory.build(variableName, value, false); VariableStore.addVariable(variableValue); } }
protected internal virtual void removeVariableLocal(string variableName, AbstractVariableScope sourceActivityExecution) { if (VariableStore.containsKey(variableName)) { CoreVariableInstance variableInstance = VariableStore.getVariable(variableName); invokeVariableLifecycleListenersDelete(variableInstance, sourceActivityExecution); VariableStore.removeVariable(variableName); } }
/// <summary> /// Sets a variable in the local scope. In contrast to /// <seealso cref="setVariableLocal(string, object)"/>, the variable is transient that /// means it will not be stored in the data base. For example, a transient /// variable can be used for a result variable that is only available for /// output mapping. /// </summary> public virtual void setVariableLocalTransient(string variableName, object value) { TypedValue typedValue = Variables.untypedValue(value, true); checkJavaSerialization(variableName, typedValue); CoreVariableInstance coreVariableInstance = VariableInstanceFactory.build(variableName, typedValue, true); VariableStore.addVariable(coreVariableInstance); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @SuppressWarnings("unchecked") private <T extends org.camunda.bpm.engine.variable.value.TypedValue> T getTypedValueFromVariableInstance(boolean deserializeValue, org.camunda.bpm.engine.impl.core.variable.CoreVariableInstance variableInstance) private T getTypedValueFromVariableInstance <T>(bool deserializeValue, CoreVariableInstance variableInstance) where T : org.camunda.bpm.engine.variable.value.TypedValue { if (variableInstance != null) { return((T)variableInstance.getTypedValue(deserializeValue)); } else { return(null); } }
public virtual void setVariableLocalTransient(string variableName, object value, AbstractVariableScope sourceActivityVariableScope) { VariableStore <CoreVariableInstance> variableStore = VariableStore; if (variableStore.containsKey(variableName)) { CoreVariableInstance existingInstance = variableStore.getVariable(variableName); existingInstance.Value = (TypedValue)value; invokeVariableLifecycleListenersUpdate(existingInstance, sourceActivityVariableScope); } else { setVariableLocalTransient(variableName, value); invokeVariableLifecycleListenersCreate(variableStore.getVariable(variableName), sourceActivityVariableScope); } }
public virtual CoreVariableInstance getVariableInstance(string variableName) { CoreVariableInstance variableInstance = getVariableInstanceLocal(variableName); if (variableInstance != null) { return(variableInstance); } AbstractVariableScope parentScope = ParentVariableScope; if (parentScope != null) { return(parentScope.getVariableInstance(variableName)); } return(null); }
protected internal virtual void invokeVariableLifecycleListenersUpdate(CoreVariableInstance variableInstance, AbstractVariableScope sourceScope) { invokeVariableLifecycleListenersUpdate(variableInstance, sourceScope, VariableInstanceLifecycleListeners); }
protected internal virtual object getValueFromVariableInstance(bool deserializeObjectValue, CoreVariableInstance variableInstance) { if (variableInstance != null) { TypedValue typedValue = variableInstance.getTypedValue(deserializeObjectValue); if (typedValue != null) { return(typedValue.Value); } } return(null); }