[jboss-svn-commits] JBL Code SVN: r24637 - labs/jbossrules/branches/mfossati/drools-osworkflow/src/main/java/org/drools/osworkflow/xml.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Jan 9 08:45:17 EST 2009


Author: mfossati
Date: 2009-01-09 08:45:17 -0500 (Fri, 09 Jan 2009)
New Revision: 24637

Modified:
   labs/jbossrules/branches/mfossati/drools-osworkflow/src/main/java/org/drools/osworkflow/xml/OSWorkflowSemanticModule.java
   labs/jbossrules/branches/mfossati/drools-osworkflow/src/main/java/org/drools/osworkflow/xml/XmlOSWorkflowProcessDumper.java
Log:
processDumper fixed to read/write the initial actions 

Modified: labs/jbossrules/branches/mfossati/drools-osworkflow/src/main/java/org/drools/osworkflow/xml/OSWorkflowSemanticModule.java
===================================================================
--- labs/jbossrules/branches/mfossati/drools-osworkflow/src/main/java/org/drools/osworkflow/xml/OSWorkflowSemanticModule.java	2009-01-09 13:43:36 UTC (rev 24636)
+++ labs/jbossrules/branches/mfossati/drools-osworkflow/src/main/java/org/drools/osworkflow/xml/OSWorkflowSemanticModule.java	2009-01-09 13:45:17 UTC (rev 24637)
@@ -36,8 +36,8 @@
                            new StartNodeHandler() );
         addHandler( "end",
                            new EndNodeHandler() );
-    //    addHandler( "initial-actions",
-     //   				new InitialActionsHandler() );
+        addHandler( "initial-actions",
+        				new InitialActionsHandler() );
 //        addHandler( "action",
 //                           new ActionNodeHandler() );
         addHandler( "ruleSet",
@@ -56,8 +56,8 @@
                            new TimerNodeHandler() );
         addHandler( "composite",
                            new CompositeNodeHandler() );
-       // addHandler( "step",
-       //                    new StepNodeHandler() );
+        addHandler( "step",
+                           new StepNodeHandler() );
         addHandler( "connection",
                            new ConnectionHandler() );
         addHandler( "import",

Modified: labs/jbossrules/branches/mfossati/drools-osworkflow/src/main/java/org/drools/osworkflow/xml/XmlOSWorkflowProcessDumper.java
===================================================================
--- labs/jbossrules/branches/mfossati/drools-osworkflow/src/main/java/org/drools/osworkflow/xml/XmlOSWorkflowProcessDumper.java	2009-01-09 13:43:36 UTC (rev 24636)
+++ labs/jbossrules/branches/mfossati/drools-osworkflow/src/main/java/org/drools/osworkflow/xml/XmlOSWorkflowProcessDumper.java	2009-01-09 13:45:17 UTC (rev 24637)
@@ -1,11 +1,23 @@
 package org.drools.osworkflow.xml;
 
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.util.Collection;
+import java.util.List;
+
+import org.drools.definition.process.WorkflowProcess;
+import org.drools.osworkflow.core.OSWorkflowProcess;
+import org.drools.process.core.context.exception.ExceptionScope;
+import org.drools.process.core.context.swimlane.SwimlaneContext;
+import org.drools.process.core.context.variable.VariableScope;
 import org.drools.xml.XmlWorkflowProcessDumper;
 
+import com.opensymphony.workflow.loader.ActionDescriptor;
+
 public class XmlOSWorkflowProcessDumper extends XmlWorkflowProcessDumper {
 
     public static final XmlOSWorkflowProcessDumper INSTANCE = new XmlOSWorkflowProcessDumper();
-    
+    private final static String EOL = System.getProperty( "line.separator" );
     private XmlOSWorkflowProcessDumper() {
         super(
             "OSWorkflow",
@@ -14,5 +26,25 @@
             new OSWorkflowSemanticModule()
         );
     }
+    @Override
+    protected void visitHeader(WorkflowProcess process, StringBuffer xmlDump, boolean includeMeta) {
+        xmlDump.append("  <header>" + EOL);
+        visitInitialActions(((OSWorkflowProcess) process).getInitialActions(), xmlDump);
+        
+        xmlDump.append("  </header>" + EOL + EOL);
+    }
+    private void visitInitialActions(Collection<ActionDescriptor> initialActions, StringBuffer xmlDump) {
+        if (initialActions != null && initialActions.size() > 0) {
+            xmlDump.append("<initial-actions>" + EOL);
+            for (ActionDescriptor action: initialActions) {
+            	StringWriter stringWriter = new StringWriter();
+            	PrintWriter writer = new PrintWriter(stringWriter);
+                action.writeXML(writer, 3);
+                writer.close();
+                xmlDump.append(stringWriter.toString());
+            }
+            xmlDump.append("    </initial-actions>" + EOL);
+        }
+    }
     
 }




More information about the jboss-svn-commits mailing list