コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }
コード例 #3
0
 protected AIntelliFlowItem()
 {
     Input      = new IntelliFlowItemInput();
     Output     = new IntelliFlowItemOutput();
     Properties = new SharedIntelliFlowProperties();
 }