コード例 #1
0
        public void Execute(MetaChain instructions)
        {
            IProcessor <ProcessItem> chain = GenerateChain(instructions);

            if (chain.Initialize())
            {
                chain.Execute(instructions.ToProcessItem());
                chain.Teardown();
            }
        }
コード例 #2
0
        private IProcessor <ProcessItem> GenerateChain(MetaChain instructions)
        {
            List <IProcessor <ProcessItem> > list = new List <IProcessor <ProcessItem> >();

            foreach (var item in list)
            {
                IProcessor <ProcessItem> p = Factory.Create(item) as IProcessor <ProcessItem>;
            }

            IProcessor <ProcessItem> head = GenerateChain(list);

            return(head);
        }
コード例 #3
0
        public static ProcessItem ToProcessItem(this MetaChain chain)
        {
            ProcessItem item = new ProcessItem()
            {
                Parameters = new List <ProcessParameter>(),
                Settings   = chain.Settings.Clone(),
            };

            foreach (var param in chain.Parameters)
            {
                var p = param.Clone();
                item.Parameters.Add(p);
            }

            return(item);
        }