Beispiel #1
0
        private void GenerateMembers()
        {
            IMemberCreationService memeberCreationService = workflowControl.GetService(typeof(IMemberCreationService)) as IMemberCreationService;

            memeberCreationService.CreateProperty(WorkflowTypeFactory.GetWorkflowClassFullName(Workflow), "Session", sessionType, null, false, false, false, null, true);
            memeberCreationService.CreateProperty(WorkflowTypeFactory.GetWorkflowClassFullName(Workflow), "Request", requestType, null, false, false, false, null, true);
        }
Beispiel #2
0
        public void CreateNewWorkflow()
        {
            SequentialWorkflowActivity rootActivity = new SequentialWorkflowActivity("root");

            rootActivity.SetValue(WorkflowMarkupSerializer.XClassProperty, WorkflowTypeFactory.GetWorkflowClassFullName(Workflow));

            StringBuilder sb = new StringBuilder();

            XmlWriter xmlWriter = XmlWriter.Create(sb);
            WorkflowMarkupSerializer serializer = new WorkflowMarkupSerializer();

            serializer.Serialize(xmlWriter, rootActivity);
            xmlWriter.Close();
            Workflow.WorkflowXoml = sb.ToString();
            //Check out the created workflow
            CheckOutInObject(Workflow, true);
        }
        public void CreateNewWorkflow(Module module)
        {
            workflow             = new Cdc.MetaManager.DataAccess.Domain.Workflow();
            workflow.RequestMap  = new PropertyMap();
            workflow.Name        = tbName.Text;
            workflow.Module      = module;
            workflow.Description = tbDescription.Text;

            SequentialWorkflowActivity rootActivity = new SequentialWorkflowActivity("root");

            rootActivity.SetValue(WorkflowMarkupSerializer.XClassProperty, WorkflowTypeFactory.GetWorkflowClassFullName(workflow));

            StringBuilder sb = new StringBuilder();

            XmlWriter xmlWriter = XmlWriter.Create(sb);
            WorkflowMarkupSerializer serializer = new WorkflowMarkupSerializer();

            serializer.Serialize(xmlWriter, rootActivity);
            xmlWriter.Close();
            workflow.WorkflowXoml = sb.ToString();
        }
Beispiel #4
0
        private void UpdateWorkflow()
        {
            Workflow.Name = tbxName.Text;
            workflowControl.RootActivity.SetValue(WorkflowMarkupSerializer.XClassProperty, WorkflowTypeFactory.GetWorkflowClassFullName(Workflow));
            Workflow.WorkflowXoml = workflowControl.Xoml;
            Workflow.RuleSetXml   = workflowControl.RuleSetXml;
            Workflow.Description  = workflowControl.RootActivity.Description;

            XDocument x = XDocument.Load(XmlReader.Create(new StringReader(Workflow.WorkflowXoml)));

            var dialogs = from d in x.Descendants()
                          where d.Attribute("DialogId") != null
                          select d.Attribute("DialogId").Value;

            foreach (WorkflowDialog workflowDialog in Workflow.Dialogs.ToArray())
            {
                var c = from y in dialogs
                        where y == workflowDialog.Dialog.Id.ToString()
                        select y;

                if (c.Count() == 0)
                {
                    Workflow.Dialogs.Remove(workflowDialog);
                }
            }

            var serviceMethods = from s in x.Descendants()
                                 where s.Attribute("ServiceMethodId") != null
                                 select s.Attribute("ServiceMethodId").Value;

            foreach (WorkflowServiceMethod serviceMethod in Workflow.ServiceMethods.ToArray())
            {
                var c = from y in serviceMethods
                        where y == serviceMethod.ServiceMethod.Id.ToString()
                        select y;

                if (c.Count() == 0)
                {
                    Workflow.ServiceMethods.Remove(serviceMethod);
                }
            }
        }