[jboss-svn-commits] JBL Code SVN: r35791 - in labs/jbossrules/trunk/drools-process/drools-bpmn2/src: main/java/org/drools/bpmn2/xml and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Oct 28 17:34:05 EDT 2010
Author: atoulme
Date: 2010-10-28 17:34:04 -0400 (Thu, 28 Oct 2010)
New Revision: 35791
Added:
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DataStore.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DataStoreHandler.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/test/resources/BPMN2-DataStore.xml
Modified:
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/core/Definitions.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/BPMNSemanticModule.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DefinitionsHandler.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ErrorHandler.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/EscalationHandler.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/InterfaceHandler.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ItemDefinitionHandler.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/MessageHandler.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ProcessHandler.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/XmlBPMNProcessDumper.java
labs/jbossrules/trunk/drools-process/drools-bpmn2/src/test/java/org/drools/bpmn2/SimpleBPMNProcessTest.java
Log:
implement parsing of dataStore as metadata
Modified: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/core/Definitions.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/core/Definitions.java 2010-10-28 20:22:54 UTC (rev 35790)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/core/Definitions.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -16,9 +16,14 @@
package org.drools.bpmn2.core;
+import java.util.List;
+
+import org.drools.bpmn2.xml.DataStore;
+
public class Definitions {
private String targetNamespace;
+ private List<DataStore> dataStores;
public String getTargetNamespace() {
return targetNamespace;
@@ -28,4 +33,12 @@
this.targetNamespace = targetNamespace;
}
+ public void setDataStores(List<DataStore> dataStores) {
+ this.dataStores = dataStores;
+ }
+
+ public List<DataStore> getDataStores() {
+ return this.dataStores;
+ }
+
}
Modified: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/BPMNSemanticModule.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/BPMNSemanticModule.java 2010-10-28 20:22:54 UTC (rev 35790)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/BPMNSemanticModule.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -76,6 +76,7 @@
addHandler("inMessageRef", new InMessageRefHandler());
addHandler("escalation", new EscalationHandler());
addHandler("error", new ErrorHandler());
+ addHandler("dataStore", new DataStoreHandler());
handlersByClass.put(Split.class, new SplitHandler());
handlersByClass.put(Join.class, new JoinHandler());
Added: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DataStore.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DataStore.java (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DataStore.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -0,0 +1,63 @@
+/**
+ * Copyright 2010 Intalio Inc
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.drools.bpmn2.xml;
+
+import org.drools.process.core.datatype.DataType;
+
+/**
+ * @author <a href="mailto:atoulme at intalio.com">Antoine Toulme</a>
+ *
+ */
+public class DataStore {
+
+ private String id;
+ private String name;
+ private DataType type;
+ private String itemSubjectRef;
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public void setType(DataType dataType) {
+ this.type = dataType;
+ }
+
+ public String getId() {
+ return this.id;
+ }
+
+ public String getName() {
+ return this.name;
+ }
+
+ public DataType getType() {
+ return this.type;
+ }
+
+ public void setItemSubjectRef(String itemSubjectRef) {
+ this.itemSubjectRef = itemSubjectRef;
+ }
+
+ public String getItemSubjectRef() {
+ return this.itemSubjectRef;
+ }
+
+}
Added: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DataStoreHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DataStoreHandler.java (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DataStoreHandler.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -0,0 +1,108 @@
+/**
+ * Copyright 2010 Intalio Inc
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.drools.bpmn2.xml;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+
+import org.drools.bpmn2.core.Definitions;
+import org.drools.bpmn2.core.Escalation;
+import org.drools.bpmn2.core.Interface;
+import org.drools.bpmn2.core.ItemDefinition;
+import org.drools.bpmn2.core.Message;
+import org.drools.compiler.xml.ProcessBuildData;
+import org.drools.process.core.datatype.DataType;
+import org.drools.process.core.datatype.impl.type.ObjectDataType;
+import org.drools.xml.BaseAbstractHandler;
+import org.drools.xml.ExtensibleXmlParser;
+import org.drools.xml.Handler;
+import org.w3c.dom.Element;
+import org.xml.sax.Attributes;
+import org.xml.sax.SAXException;
+
+/**
+ * @author <a href="mailto:atoulme at intalio.com">Antoine Toulme</a>
+ *
+ */
+public class DataStoreHandler extends BaseAbstractHandler implements Handler {
+
+ @SuppressWarnings("rawtypes")
+ public DataStoreHandler() {
+ if ((this.validParents == null) && (this.validPeers == null)) {
+ this.validParents = new HashSet();
+ this.validParents.add(Definitions.class);
+
+ this.validPeers = new HashSet();
+ this.validPeers.add(null);
+ this.validPeers.add(ItemDefinition.class);
+ this.validPeers.add(Message.class);
+ this.validPeers.add(Interface.class);
+ this.validPeers.add(Escalation.class);
+ this.validPeers.add(Error.class);
+
+ this.allowNesting = false;
+ }
+ }
+
+ public Object start(final String uri, final String localName,
+ final Attributes attrs, final ExtensibleXmlParser parser)
+ throws SAXException {
+ parser.startElementBuilder(localName, attrs);
+ DataStore store = new DataStore();
+ store.setId(attrs.getValue("id"));
+ store.setName(attrs.getValue("name"));
+ final String itemSubjectRef = attrs.getValue("itemSubjectRef");
+ store.setItemSubjectRef(itemSubjectRef);
+ Map<String, ItemDefinition> itemDefinitions = (Map<String, ItemDefinition>)
+ ((ProcessBuildData) parser.getData()).getMetaData("ItemDefinitions");
+ // retrieve type from item definition
+ //FIXME we bypass namespace resolving here. That's not a good idea
+ // when we start having several documents, with imports.
+ String localItemSubjectRef = itemSubjectRef.substring(
+ itemSubjectRef.indexOf(":") +1);
+ DataType dataType = new ObjectDataType();
+ if (itemDefinitions != null) {
+ ItemDefinition itemDefinition = itemDefinitions.get(localItemSubjectRef);
+ if (itemDefinition != null) {
+ dataType = new ObjectDataType(itemDefinition.getStructureRef());
+ }
+ }
+ store.setType(dataType);
+
+ Definitions parent = (Definitions) parser.getParent();
+ List<DataStore> dataStores = parent.getDataStores();
+ if (dataStores == null) {
+ dataStores = new ArrayList<DataStore>();
+ parent.setDataStores(dataStores);
+ }
+ dataStores.add(store);
+ return store;
+ }
+
+ @SuppressWarnings("unchecked")
+ public Object end(final String uri, final String localName,
+ final ExtensibleXmlParser parser) throws SAXException {
+ parser.endElementBuilder();
+ return parser.getCurrent();
+ }
+
+ public Class<?> generateNodeFor() {
+ return DataStore.class;
+ }
+
+}
Modified: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DefinitionsHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DefinitionsHandler.java 2010-10-28 20:22:54 UTC (rev 35790)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/DefinitionsHandler.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -17,6 +17,7 @@
package org.drools.bpmn2.xml;
import java.util.HashSet;
+import java.util.List;
import org.drools.bpmn2.core.Definitions;
import org.drools.compiler.xml.ProcessBuildData;
@@ -31,7 +32,7 @@
public class DefinitionsHandler extends BaseAbstractHandler implements Handler {
public static final String CONNECTIONS = "BPMN.Connections";
-
+
@SuppressWarnings("unchecked")
public DefinitionsHandler() {
if ((this.validParents == null) && (this.validPeers == null)) {
@@ -61,11 +62,15 @@
String namespace = element.getAttribute("targetNamespace");
process.setMetaData("TargetNamespace", namespace);
definitions.setTargetNamespace(namespace);
+
+ // register the definitions object as metadata of process.
+ process.setMetaData("Definitions", definitions);
+
return definitions;
}
public Class<?> generateNodeFor() {
- return null;
+ return Definitions.class;
}
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ErrorHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ErrorHandler.java 2010-10-28 20:22:54 UTC (rev 35790)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ErrorHandler.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -48,6 +48,7 @@
this.validPeers.add(Interface.class);
this.validPeers.add(Escalation.class);
this.validPeers.add(Error.class);
+ this.validPeers.add(DataStore.class);
this.allowNesting = false;
}
Modified: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/EscalationHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/EscalationHandler.java 2010-10-28 20:22:54 UTC (rev 35790)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/EscalationHandler.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -47,6 +47,7 @@
this.validPeers.add(Interface.class);
this.validPeers.add(Escalation.class);
this.validPeers.add(Error.class);
+ this.validPeers.add(DataStore.class);
this.allowNesting = false;
}
Modified: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/InterfaceHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/InterfaceHandler.java 2010-10-28 20:22:54 UTC (rev 35790)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/InterfaceHandler.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -47,6 +47,7 @@
this.validPeers.add(Interface.class);
this.validPeers.add(Escalation.class);
this.validPeers.add(Error.class);
+ this.validPeers.add(DataStore.class);
this.allowNesting = false;
}
Modified: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ItemDefinitionHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ItemDefinitionHandler.java 2010-10-28 20:22:54 UTC (rev 35790)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ItemDefinitionHandler.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -47,6 +47,7 @@
this.validPeers.add(Interface.class);
this.validPeers.add(Escalation.class);
this.validPeers.add(Error.class);
+ this.validPeers.add(DataStore.class);
this.allowNesting = false;
}
Modified: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/MessageHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/MessageHandler.java 2010-10-28 20:22:54 UTC (rev 35790)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/MessageHandler.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -47,6 +47,7 @@
this.validPeers.add(Interface.class);
this.validPeers.add(Escalation.class);
this.validPeers.add(Error.class);
+ this.validPeers.add(DataStore.class);
this.allowNesting = false;
}
Modified: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ProcessHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ProcessHandler.java 2010-10-28 20:22:54 UTC (rev 35790)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/ProcessHandler.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -74,6 +74,7 @@
this.validPeers.add(Interface.class);
this.validPeers.add(Escalation.class);
this.validPeers.add(Error.class);
+ this.validPeers.add(DataStore.class);
this.allowNesting = false;
}
Modified: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/XmlBPMNProcessDumper.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/XmlBPMNProcessDumper.java 2010-10-28 20:22:54 UTC (rev 35790)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/main/java/org/drools/bpmn2/xml/XmlBPMNProcessDumper.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -20,6 +20,7 @@
import java.util.Collection;
import java.util.List;
+import org.drools.bpmn2.core.Definitions;
import org.drools.bpmn2.xpath.XPathDialect;
import org.drools.compiler.xml.XmlDumper;
import org.drools.definition.process.Connection;
@@ -117,6 +118,8 @@
" xmlns:di=\"http://www.omg.org/spec/DD/20100524/DI\"" + EOL : "") +
" xmlns:tns=\"http://www.jboss.org/drools\">" + EOL + EOL);
+
+
// item definitions
VariableScope variableScope = (VariableScope)
((org.drools.process.core.Process) process).getDefaultContext(VariableScope.VARIABLE_SCOPE);
@@ -128,6 +131,14 @@
visitEscalations(process.getNodes(), xmlDump, new ArrayList<String>());
visitErrors(process.getNodes(), xmlDump, new ArrayList<String>());
+ //data stores
+ Definitions def = (Definitions) process.getMetaData().get("Definitions");
+ if (def.getDataStores() != null) {
+ for (DataStore dataStore : def.getDataStores()) {
+ visitDataStore(dataStore, xmlDump);
+ }
+ }
+
// the process itself
xmlDump.append(" <process processType=\"Private\" isExecutable=\"true\" ");
if (process.getId() != null) {
@@ -160,7 +171,22 @@
xmlDump.append("</definitions>");
}
- private void visitVariableScope(VariableScope variableScope, String prefix, StringBuilder xmlDump) {
+ private void visitDataStore(DataStore dataStore, StringBuilder xmlDump) {
+ String itemSubjectRef = dataStore.getItemSubjectRef();
+ String itemDefId = itemSubjectRef.substring(itemSubjectRef.indexOf(':') + 1);
+ xmlDump.append(" <itemDefinition id=\"" + itemDefId + "\" ");
+ if (dataStore.getType() != null) {
+ xmlDump.append("structureRef=\"" + XmlDumper.replaceIllegalChars(dataStore.getType().getStringType()) + "\" ");
+ }
+ xmlDump.append("/>" + EOL);
+
+ xmlDump.append(" <dataStore name=\"" + XmlDumper.replaceIllegalChars(dataStore.getName()) + "\"");
+ xmlDump.append(" id=\"" + XmlDumper.replaceIllegalChars(dataStore.getId()) + "\"");
+ xmlDump.append(" itemSubjectRef=\"" + XmlDumper.replaceIllegalChars(dataStore.getItemSubjectRef()) + "\"");
+ xmlDump.append("/>" + EOL);
+ }
+
+ private void visitVariableScope(VariableScope variableScope, String prefix, StringBuilder xmlDump) {
if (variableScope != null && !variableScope.getVariables().isEmpty()) {
for (Variable variable: variableScope.getVariables()) {
xmlDump.append(
Modified: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/test/java/org/drools/bpmn2/SimpleBPMNProcessTest.java
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/test/java/org/drools/bpmn2/SimpleBPMNProcessTest.java 2010-10-28 20:22:54 UTC (rev 35790)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/test/java/org/drools/bpmn2/SimpleBPMNProcessTest.java 2010-10-28 21:34:04 UTC (rev 35791)
@@ -30,11 +30,13 @@
import org.drools.KnowledgeBase;
import org.drools.KnowledgeBaseFactory;
+import org.drools.bpmn2.core.Definitions;
import org.drools.bpmn2.handler.ReceiveTaskHandler;
import org.drools.bpmn2.handler.SendTaskHandler;
import org.drools.bpmn2.handler.ServiceTaskHandler;
import org.drools.bpmn2.xml.BPMNDISemanticModule;
import org.drools.bpmn2.xml.BPMNSemanticModule;
+import org.drools.bpmn2.xml.DataStore;
import org.drools.bpmn2.xml.XmlBPMNProcessDumper;
import org.drools.builder.KnowledgeBuilder;
import org.drools.builder.KnowledgeBuilderConfiguration;
@@ -50,6 +52,7 @@
import org.drools.event.process.ProcessStartedEvent;
import org.drools.io.ResourceFactory;
import org.drools.persistence.jpa.JPAKnowledgeService;
+import org.drools.process.core.datatype.impl.type.ObjectDataType;
import org.drools.process.instance.impl.demo.DoNothingWorkItemHandler;
import org.drools.process.instance.impl.demo.SystemOutWorkItemHandler;
import org.drools.ruleflow.core.RuleFlowProcess;
@@ -145,6 +148,19 @@
ProcessInstance processInstance = ksession.startProcess("Evaluation", params);
assertTrue(processInstance.getState() == ProcessInstance.STATE_COMPLETED);
}
+
+ public void testDataStore() throws Exception {
+ KnowledgeBase kbase = createKnowledgeBase("BPMN2-DataStore.xml");
+ StatefulKnowledgeSession ksession = createKnowledgeSession(kbase);
+ ProcessInstance processInstance = ksession.startProcess("Evaluation");
+ Definitions def = (Definitions) processInstance.getProcess().getMetaData().get("Definitions");
+ assertNotNull(def.getDataStores());
+ assertTrue(def.getDataStores().size() == 1);
+ DataStore dataStore = def.getDataStores().get(0);
+ assertEquals("employee", dataStore.getId());
+ assertEquals("employeeStore", dataStore.getName());
+ assertEquals(String.class.getCanonicalName(), ((ObjectDataType) dataStore.getType()).getClassName());
+ }
public void testEvaluationProcess() throws Exception {
KnowledgeBase kbase = createKnowledgeBase("BPMN2-EvaluationProcess.xml");
Added: labs/jbossrules/trunk/drools-process/drools-bpmn2/src/test/resources/BPMN2-DataStore.xml
===================================================================
--- labs/jbossrules/trunk/drools-process/drools-bpmn2/src/test/resources/BPMN2-DataStore.xml (rev 0)
+++ labs/jbossrules/trunk/drools-process/drools-bpmn2/src/test/resources/BPMN2-DataStore.xml 2010-10-28 21:34:04 UTC (rev 35791)
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions id="Definition"
+ targetNamespace="http://www.example.org/EvaluationExample"
+ typeLanguage="http://www.java.com/javaTypes"
+ expressionLanguage="http://www.mvel.org/2.0"
+ xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
+ xs:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd"
+ xmlns:tns="http://www.example.org/EvaluationExample">
+
+ <!-- item definitions -->
+ <itemDefinition id="employeeId" structureRef="java.lang.String" />
+
+ <!-- data store -->
+ <dataStore id="employee" name="employeeStore" itemSubjectRef="tns:employeeId" />
+
+ <process id="Evaluation" name="Evaluation Process">
+
+
+
+ <!-- nodes -->
+ <startEvent id="_1" name="StartProcess"/>
+ <scriptTask id="_2" name="Log">
+ <script>System.out.println("Just outputting something");</script>
+ </scriptTask>
+ <endEvent id="_3" name="EndProcess">
+ <terminateEventDefinition/>
+ </endEvent>
+
+ <!-- connections -->
+ <sequenceFlow sourceRef="_1" targetRef="_2"/>
+ <sequenceFlow sourceRef="_2" targetRef="_3"/>
+
+ </process>
+</definitions>
\ No newline at end of file
More information about the jboss-svn-commits
mailing list