示例#1
0
        private void ProcessWorkflow()
        {
            //TODO: Find a better way of doing this...
            if (treeLoaded == null)
            {
                return;
            }

            var inputFile = (BindItem)treeLoaded.Nodes[0].Tag;

            var outputDocument = Program.Settings.Find <DocumentSettings>();

            outputDocument.SetInstance(FileUtils.GetFileNameOnly(inputFile.Name), Environment.CurrentDirectory, OutputFormat.Docx);

            if (_assemblyResolver == null)
            {
                return;
            }

            var workflowExtractor = new WorkflowExtractor(_assemblyResolver);

            workflowExtractor.OnMessageReceived += WorkflowExtractorOnMessageReceived;
            workflowExtractor.GetActivityTree();

            RulesExtractor rulesExtractor = RulesExtractor.Create(_assemblyResolver);

            rulesExtractor.OnMessageReceived += RulesExtractorOnMessageReceived;

            using (var rulesConverter = new RulesConverter(rulesExtractor, _runAsync))
            {
                rulesConverter.OnMessageReceived    += RulesConverterOnMessageReceived;
                rulesConverter.OnProcessingComplete += RulesConverterOnProcessingComplete;
            }

            using (var converter = new WorkflowConverter(workflowExtractor, rulesExtractor))
            {
                converter.OnMessageReceived    += ConverterOnMessageReceived;
                converter.OnProcessingComplete += ConverterOnProcessingComplete;

                converter.AddOutput <Generators.Workflow.WfDocGenerator>(outputDocument);
                converter.Generate();
            }
        }
示例#2
0
        private void ProcessWorkflow()
        {
            //TODO: Find a better way of doing this...
            if (treeLoaded == null) return;

            var inputFile = (BindItem)treeLoaded.Nodes[0].Tag;

            var outputDocument = Program.Settings.Find<DocumentSettings>();
            outputDocument.SetInstance(FileUtils.GetFileNameOnly(inputFile.Name), Environment.CurrentDirectory, OutputFormat.Docx);

            if (_assemblyResolver == null) return;

            var workflowExtractor = new WorkflowExtractor(_assemblyResolver);
            workflowExtractor.OnMessageReceived += WorkflowExtractorOnMessageReceived;
            workflowExtractor.GetActivityTree();

            RulesExtractor rulesExtractor = RulesExtractor.Create(_assemblyResolver);
            rulesExtractor.OnMessageReceived += RulesExtractorOnMessageReceived;

            using (var rulesConverter = new RulesConverter(rulesExtractor, _runAsync))
            {
                rulesConverter.OnMessageReceived += RulesConverterOnMessageReceived;
                rulesConverter.OnProcessingComplete += RulesConverterOnProcessingComplete;
            }

            using (var converter = new WorkflowConverter(workflowExtractor, rulesExtractor))
            {
                converter.OnMessageReceived += ConverterOnMessageReceived;
                converter.OnProcessingComplete += ConverterOnProcessingComplete;

                converter.AddOutput<Generators.Workflow.WfDocGenerator>(outputDocument);
                converter.Generate();
            }
        }