private IntelliFlowItemOutput _ExecuteChildren(AIntelliFlowItem item) { //execute children IntelliFlowItemOutput output = null; foreach (var child in item.Children) { if (item.Output != null) { child.Input.Data = item.Output.Data; } else { child.Input.Data = item.Input.Data; } output = child.Execute(); } return(output); }
public IntelliFlowItemOutput Execute(IntelliFlowCaseRule rule) { //execute children IntelliFlowItemOutput output = null; var children = rule.Children.ToArray(); int index = 0; foreach (var exp in rule.Expressions) { if (Convert.ToBoolean(exp.Evaluate(rule.Input.Data))) { var child = children[index]; child.Input.Data = rule.Input.Data; return(child.Execute()); } index++; } return(output); }
protected AIntelliFlowItem() { Input = new IntelliFlowItemInput(); Output = new IntelliFlowItemOutput(); Properties = new SharedIntelliFlowProperties(); }