02-02-2011 03:44 PM
private void createXML(EObject object, XMLStreamWriter xtw, String subProcessId) throws Exception {
if (object instanceof StartEvent) {
StartEvent startEvent = (StartEvent) object;
// start StartEvent element
xtw.writeStartElement("startEvent");
xtw.writeAttribute("id", startEvent.getId()); //start event has plain id
xtw.writeAttribute("name", startEvent.getName());
// end StartEvent element
xtw.writeEndElement();
} else if (object instanceof EndEvent) {
EndEvent endEvent = (EndEvent) object;
// start EndEvent element
xtw.writeStartElement("endEvent");
xtw.writeAttribute("id", endEvent.getId()); //end event has plain id
xtw.writeAttribute("name", endEvent.getName());
// end EndEvent element
xtw.writeEndElement();
} else if (object instanceof SequenceFlow) {
SequenceFlow sequenceFlow = (SequenceFlow) object;
// start SequenceFlow element
xtw.writeStartElement("sequenceFlow");
xtw.writeAttribute("id", subProcessId + sequenceFlow.getId());
if (sequenceFlow.getName() == null) {
xtw.writeAttribute("name", "");
} else {
xtw.writeAttribute("name", sequenceFlow.getName());
}
xtw.writeAttribute("sourceRef", subProcessId + sequenceFlow.getSourceRef().getId()); //start event source ref will have composite id
xtw.writeAttribute("targetRef", subProcessId + sequenceFlow.getTargetRef().getId()); //start event source ref will have composite id
<process id="helloworld" name="helloworld">
<startEvent id="startevent1" name="Start"></startEvent>
<endEvent id="endevent1" name="End"></endEvent>
<userTask id="usertask1" name="User Task" activiti:candidateUsers="particopant" activiti:formKey="/form/task.form"></userTask>
<subProcess id="subprocess1" name="Sub Process">
<startEvent id="startevent3" name="Start"></startEvent>
<endEvent id="endevent2" name="End"></endEvent>
<userTask id="subprocess1_usertask2" name="User Task" activiti:candidateUsers="participant" activiti:formKey="/form/task.form"></userTask>
<sequenceFlow id="subprocess1_flow4" name="" sourceRef="subprocess1_startevent3" targetRef="subprocess1_usertask2"></sequenceFlow>
<sequenceFlow id="subprocess1_flow5" name="" sourceRef="subprocess1_usertask2" targetRef="subprocess1_endevent2"></sequenceFlow>
</subProcess>
<sequenceFlow id="flow1" name="" sourceRef="startevent1" targetRef="usertask1"></sequenceFlow>
<sequenceFlow id="flow2" name="" sourceRef="usertask1" targetRef="subprocess1"></sequenceFlow>
<sequenceFlow id="flow3" name="" sourceRef="subprocess1" targetRef="endevent1"></sequenceFlow>
</process>
02-02-2011 04:15 PM
02-03-2011 02:20 AM
02-03-2011 08:01 AM
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.