[jbpm-commits] JBoss JBPM SVN: r2677 - in projects/spec/trunk/modules/samples/airticket/server/src: main/java/org/jboss/bpm/samples/airticket/server and 2 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Oct 30 09:20:37 EDT 2008


Author: thomas.diesler at jboss.com
Date: 2008-10-30 09:20:37 -0400 (Thu, 30 Oct 2008)
New Revision: 2677

Modified:
   projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AirticketProcessBuilder.java
   projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java
   projects/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java
   projects/spec/trunk/modules/samples/airticket/server/src/test/resources/samples/airticket/airticket.bpmn
   projects/spec/trunk/modules/samples/airticket/server/src/test/resources/samples/airticket/airticket.bpmn_diagram
Log:
Migrate AirticketTest to UserTask callback

Modified: projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AirticketProcessBuilder.java
===================================================================
--- projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AirticketProcessBuilder.java	2008-10-30 12:48:25 UTC (rev 2676)
+++ projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AirticketProcessBuilder.java	2008-10-30 13:20:37 UTC (rev 2677)
@@ -26,11 +26,11 @@
 import javax.management.ObjectName;
 
 import org.jbpm.api.model.Expression;
-import org.jbpm.api.model.Gateway;
 import org.jbpm.api.model.ProcessDefinition;
-import org.jbpm.api.model.Task;
 import org.jbpm.api.model.Assignment.AssignTime;
 import org.jbpm.api.model.Expression.ExpressionLanguage;
+import org.jbpm.api.model.Gateway.GatewayType;
+import org.jbpm.api.model.Task.TaskType;
 import org.jbpm.api.model.builder.GatewayBuilder;
 import org.jbpm.api.model.builder.ProcessBuilder;
 import org.jbpm.api.model.builder.TaskBuilder;
@@ -57,11 +57,10 @@
   public static final String TASK_BOOKING = "Booking";
   public static final String TASK_CHECK_AVAILABLE = "CheckAvailable";
   public static final String TASK_CREDIT_CARD = "CreditCard";
-  public static final String TASK_RECEIVE_ORDER = "ReceiveOrder";
   public static final String TASK_RECEIVE_REQUEST = "ReceiveReq";
   public static final String TASK_SEND_CONFIRM = "SendConfirm";
   public static final String TASK_SEND_NOT_AVAILABLE = "SendNotAvailable";
-  public static final String TASK_SEND_OFFER = "SendOffer";
+  public static final String TASK_MAKE_OFFER = "MakeOffer";
   public static final String TASK_SEND_INVALID = "SendInvalid";
   public static final String TASK_VALIDATE = "Validate";
   
@@ -102,13 +101,13 @@
     procBuilder.addStartEvent("Start").addSequenceFlow(TASK_RECEIVE_REQUEST);
 
     // Build the ReceiveReqTask
-    TaskBuilder taskBuilder = procBuilder.addTask(TASK_RECEIVE_REQUEST, Task.TaskType.Receive);
+    TaskBuilder taskBuilder = procBuilder.addTask(TASK_RECEIVE_REQUEST, TaskType.Receive);
     taskBuilder.addInMessageRef(MESSAGE_REQ_DATA).
     addNodeAssignment(AssignTime.End, ExpressionLanguage.MVEL, getValidationExpression(), PROPERTY_IS_VALID_REQUEST).
     addSequenceFlow(GATEWAY_IS_VALID);
 
     // Build the ValidateGateway
-    GatewayBuilder gatewayBuilder = procBuilder.addGateway(GATEWAY_IS_VALID, Gateway.GatewayType.Exclusive);
+    GatewayBuilder gatewayBuilder = procBuilder.addGateway(GATEWAY_IS_VALID, GatewayType.Exclusive);
     gatewayBuilder.addConditionalGate(TASK_CHECK_AVAILABLE, Expression.ExpressionLanguage.MVEL, PROPERTY_IS_VALID_REQUEST + " == true").
     addDefaultGate(TASK_SEND_INVALID);
 
@@ -119,37 +118,32 @@
     addSequenceFlow(GATEWAY_IS_AVAILABLE);
 
     // Build the SendInvalidTask
-    taskBuilder = procBuilder.addTask(TASK_SEND_INVALID, Task.TaskType.Send);
+    taskBuilder = procBuilder.addTask(TASK_SEND_INVALID, TaskType.Send);
     taskBuilder.addOutMessageRef(MESSAGE_INVALID_DATA).
     addSequenceFlow(TASK_RECEIVE_REQUEST);
 
     // Build the AvailabilityGateway
-    gatewayBuilder = procBuilder.addGateway(GATEWAY_IS_AVAILABLE, Gateway.GatewayType.Exclusive);
-    gatewayBuilder.addConditionalGate(TASK_SEND_OFFER, Expression.ExpressionLanguage.MVEL, PROPERTY_IS_AVAILABLE + " == true").
+    gatewayBuilder = procBuilder.addGateway(GATEWAY_IS_AVAILABLE, GatewayType.Exclusive);
+    gatewayBuilder.addConditionalGate(TASK_MAKE_OFFER, Expression.ExpressionLanguage.MVEL, PROPERTY_IS_AVAILABLE + " == true").
     addDefaultGate(TASK_SEND_NOT_AVAILABLE);
     
     // Build the SendOfferTask
-    taskBuilder = procBuilder.addTask(TASK_SEND_OFFER, Task.TaskType.Send);
-    taskBuilder.addOutMessageRef(MESSAGE_OFFER).
-    addSequenceFlow(TASK_RECEIVE_ORDER);
+    taskBuilder = procBuilder.addTask(TASK_MAKE_OFFER, TaskType.User);
+    taskBuilder.addOutMessageRef(MESSAGE_OFFER).addInMessageRef(MESSAGE_ACCEPT_OFFER).
+    addSequenceFlow(GATEWAY_IS_ACCEPTED);
 
     // Build the SendNotAvailableTask
-    taskBuilder = procBuilder.addTask(TASK_SEND_NOT_AVAILABLE, Task.TaskType.Send);
+    taskBuilder = procBuilder.addTask(TASK_SEND_NOT_AVAILABLE, TaskType.Send);
     taskBuilder.addOutMessageRef(MESSAGE_NOT_AVAILABLE).
     addSequenceFlow(TASK_RECEIVE_REQUEST);
 
-    // Build the ReceiveReqTask
-    taskBuilder = procBuilder.addTask(TASK_RECEIVE_ORDER, Task.TaskType.Receive);
-    taskBuilder.addInMessageRef(MESSAGE_ACCEPT_OFFER).
-    addSequenceFlow(GATEWAY_IS_ACCEPTED);
-    
     // Build the AcceptOfferGateway
-    gatewayBuilder = procBuilder.addGateway(GATEWAY_IS_ACCEPTED, Gateway.GatewayType.Exclusive);
+    gatewayBuilder = procBuilder.addGateway(GATEWAY_IS_ACCEPTED, GatewayType.Exclusive);
     gatewayBuilder.addConditionalGate(GATEWAY_SPLIT, Expression.ExpressionLanguage.MVEL, PROPERTY_IS_OFFER_ACCEPTED + " == true").
     addDefaultGate(TASK_RECEIVE_REQUEST);
     
     // Build the AcceptOfferGateway
-    gatewayBuilder = procBuilder.addGateway(GATEWAY_SPLIT, Gateway.GatewayType.Parallel);
+    gatewayBuilder = procBuilder.addGateway(GATEWAY_SPLIT, GatewayType.Parallel);
     gatewayBuilder.addGate(TASK_CREDIT_CARD).
     addGate(TASK_BOOKING);
     
@@ -172,11 +166,11 @@
     addSequenceFlow(GATEWAY_SYNC_JOIN);
     
     // Build the SynchronizedJoinGateway
-    gatewayBuilder = procBuilder.addGateway(GATEWAY_SYNC_JOIN, Gateway.GatewayType.Parallel);
+    gatewayBuilder = procBuilder.addGateway(GATEWAY_SYNC_JOIN, GatewayType.Parallel);
     gatewayBuilder.addGate(TASK_SEND_CONFIRM);
     
     // Build the SendConfirmTask
-    taskBuilder = procBuilder.addTask(TASK_SEND_CONFIRM, Task.TaskType.Send);
+    taskBuilder = procBuilder.addTask(TASK_SEND_CONFIRM, TaskType.Send);
     taskBuilder.addOutMessageRef(MESSAGE_CONFIRM).
     addSequenceFlow(EVENT_END);
     

Modified: projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java
===================================================================
--- projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java	2008-10-30 12:48:25 UTC (rev 2676)
+++ projects/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java	2008-10-30 13:20:37 UTC (rev 2677)
@@ -79,7 +79,7 @@
     else if (gwtMsg instanceof OrderMessage)
     {
       Message msg = getOrderMessage((OrderMessage)gwtMsg);
-      mm.sendMessage(procID, AirticketProcessBuilder.TASK_RECEIVE_ORDER, msg);
+      mm.sendMessage(procID, AirticketProcessBuilder.TASK_MAKE_OFFER, msg);
     }
     else
     {

Modified: projects/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java
===================================================================
--- projects/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java	2008-10-30 12:48:25 UTC (rev 2676)
+++ projects/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java	2008-10-30 13:20:37 UTC (rev 2677)
@@ -23,16 +23,17 @@
 
 // $Id$
 
-import java.io.IOException;
-
 import javax.management.ObjectName;
 
 import org.jbpm.api.client.MessageListener;
+import org.jbpm.api.client.UserTaskCallback;
 import org.jbpm.api.model.Message;
 import org.jbpm.api.model.Process;
 import org.jbpm.api.model.ProcessDefinition;
+import org.jbpm.api.model.UserTask;
 import org.jbpm.api.model.builder.MessageBuilder;
 import org.jbpm.api.model.builder.ObjectNameFactory;
+import org.jbpm.api.runtime.Attachments;
 import org.jbpm.api.service.MessageBuilderService;
 import org.jbpm.api.service.MessageService;
 import org.jbpm.api.test.CTSTestCase;
@@ -56,11 +57,22 @@
   
   public void testValidData() throws Exception
   {
-    ProcessDefinition procDef = unregisterOnTearDown(getProcessDefinition());
+    AirticketProcessBuilder builder = new AirticketProcessBuilder(getTestID());
+    ProcessDefinition procDef = unregisterOnTearDown(builder.buildProcessDefinition());
+    
+    // Create the process instance
     proc = procDef.newInstance();
+    
+    // Attach the callback to the UserTask
+    UserTask userTask = proc.getNode(UserTask.class, AirticketProcessBuilder.TASK_MAKE_OFFER);
+    userTask.setUserTaskCallback(new UserTaskCallbackImpl());
+    
+    // Start the process and send the request message
     proc.startProcess();
+    Message reqMessage = getValidRequestMessage();
+    messageManager.sendMessage(proc.getKey(), AirticketProcessBuilder.TASK_RECEIVE_REQUEST, reqMessage);
     
-    messageManager.sendMessage(proc.getKey(), AirticketProcessBuilder.TASK_RECEIVE_REQUEST, getValidRequestMessage());
+    // Wait for the process to end
     proc.waitForEnd();
 
     Message confirmMessage = msgListener.getConfirmMessage();
@@ -71,11 +83,22 @@
 
   public void testInvalidData() throws Exception
   {
-    ProcessDefinition procDef = unregisterOnTearDown(getProcessDefinition());
+    AirticketProcessBuilder builder = new AirticketProcessBuilder(getTestID());
+    ProcessDefinition procDef = unregisterOnTearDown(builder.buildProcessDefinition());
+    
+    // Create the process instance
     proc = procDef.newInstance();
+    
+    // Attach the callback to the UserTask
+    UserTask userTask = proc.getNode(UserTask.class, AirticketProcessBuilder.TASK_MAKE_OFFER);
+    userTask.setUserTaskCallback(new UserTaskCallbackImpl());
+    
+    // Start the process and send the request message
     proc.startProcess();
+    Message reqMessage = getInvalidRequestMessage();
+    messageManager.sendMessage(proc.getKey(), AirticketProcessBuilder.TASK_RECEIVE_REQUEST, reqMessage);
     
-    messageManager.sendMessage(proc.getKey(), AirticketProcessBuilder.TASK_RECEIVE_REQUEST, getInvalidRequestMessage());
+    // Wait for the process to end
     proc.waitForEnd();
 
     Message confirmMessage = msgListener.getConfirmMessage();
@@ -104,49 +127,23 @@
     super.tearDown();
   }
 
-  private Message getValidRequestMessage()
+  /**
+   * A UserTask callback that is associated with the MAKE_OFFER task 
+   */
+  public static class UserTaskCallbackImpl extends UserTaskCallback
   {
-    MessageBuilder msgBuilder = MessageBuilderService.locateMessageBuilder();
-    Message msg = msgBuilder.newMessage(AirticketProcessBuilder.MESSAGE_REQ_DATA).
-    addProperty(AirticketProcessBuilder.PROPERTY_NAME, "Kermit").
-    addProperty(AirticketProcessBuilder.PROPERTY_FROM, "MUC").
-    addProperty(AirticketProcessBuilder.PROPERTY_TO, "NYC").
-    addProperty(AirticketProcessBuilder.PROPERTY_DATE, "25-Jul-2008").
-    addProperty(AirticketProcessBuilder.PROPERTY_SEATS, "2").getMessage();
-    return msg;
+    @Override
+    public void callback(Attachments att)
+    {
+      att.addAttachment(AirticketProcessBuilder.PROPERTY_CREDIT_CARD, "1234-1234-1234-1234");
+      att.addAttachment(AirticketProcessBuilder.PROPERTY_EXPIRE, "25-Jul-2012");
+      att.addAttachment(AirticketProcessBuilder.PROPERTY_IS_OFFER_ACCEPTED, "true");
+    }
   }
-
-  private Message getInvalidRequestMessage()
-  {
-    MessageBuilder msgBuilder = MessageBuilderService.locateMessageBuilder();
-    Message msg = msgBuilder.newMessage(AirticketProcessBuilder.MESSAGE_REQ_DATA).
-    addProperty(AirticketProcessBuilder.PROPERTY_NAME, "Kermit").
-    addProperty(AirticketProcessBuilder.PROPERTY_FROM, "MUC").
-    addProperty(AirticketProcessBuilder.PROPERTY_TO, "NYC").
-    addProperty(AirticketProcessBuilder.PROPERTY_DATE, "25-Jul-2008").
-    addProperty(AirticketProcessBuilder.PROPERTY_SEATS, "0"). // Invalid number of seats
-    getMessage();
-    return msg;
-  }
-
-  private Message getAcceptOfferMessage()
-  {
-    MessageBuilder msgBuilder = MessageBuilderService.locateMessageBuilder();
-    Message msg = msgBuilder.newMessage(AirticketProcessBuilder.MESSAGE_ACCEPT_OFFER).
-    addProperty(AirticketProcessBuilder.PROPERTY_CREDIT_CARD, "1234-1234-1234-1234").
-    addProperty(AirticketProcessBuilder.PROPERTY_EXPIRE, "25-Jul-2012").
-    addProperty(AirticketProcessBuilder.PROPERTY_IS_OFFER_ACCEPTED, "true").
-    getMessage();
-    return msg;
-  }
-
   
-  protected ProcessDefinition getProcessDefinition() throws IOException
-  {
-    AirticketProcessBuilder builder = new AirticketProcessBuilder(getTestID());
-    return builder.buildProcessDefinition();
-  }
-  
+  /**
+   * A message listener messages sent by the Airticket process  
+   */
   class AirticketMessageListener implements MessageListener
   {
     private ObjectName listenerID;
@@ -171,14 +168,44 @@
     public void catchMessage(Message msg)
     {
       log.debug("catchMessage: " + msg);
+      
+      MessageService mm = MessageService.locateMessageService();
       ObjectName procID = proc.getKey();
-      MessageService mm = MessageService.locateMessageService();
-      if (msg.getName().equals(AirticketProcessBuilder.MESSAGE_INVALID_DATA))
+      
+      String msgName = msg.getName();
+      if (msgName.equals(AirticketProcessBuilder.MESSAGE_INVALID_DATA) || msgName.equals(AirticketProcessBuilder.MESSAGE_NOT_AVAILABLE))
+      {
         mm.sendMessage(procID, AirticketProcessBuilder.TASK_RECEIVE_REQUEST, getValidRequestMessage());
-      else if (msg.getName().equals(AirticketProcessBuilder.MESSAGE_OFFER))
-        mm.sendMessage(procID, AirticketProcessBuilder.TASK_RECEIVE_ORDER, getAcceptOfferMessage());
-      else if (msg.getName().equals(AirticketProcessBuilder.MESSAGE_CONFIRM))
+      }
+      else if (msgName.equals(AirticketProcessBuilder.MESSAGE_CONFIRM))
+      {
         confirmMessage = msg;
+      }
     }
   }
+
+  private Message getValidRequestMessage()
+  {
+    MessageBuilder msgBuilder = MessageBuilderService.locateMessageBuilder();
+    Message msg = msgBuilder.newMessage(AirticketProcessBuilder.MESSAGE_REQ_DATA).
+    addProperty(AirticketProcessBuilder.PROPERTY_NAME, "Kermit").
+    addProperty(AirticketProcessBuilder.PROPERTY_FROM, "MUC").
+    addProperty(AirticketProcessBuilder.PROPERTY_TO, "NYC").
+    addProperty(AirticketProcessBuilder.PROPERTY_DATE, "25-Jul-2008").
+    addProperty(AirticketProcessBuilder.PROPERTY_SEATS, "2").getMessage();
+    return msg;
+  }
+
+  private Message getInvalidRequestMessage()
+  {
+    MessageBuilder msgBuilder = MessageBuilderService.locateMessageBuilder();
+    Message msg = msgBuilder.newMessage(AirticketProcessBuilder.MESSAGE_REQ_DATA).
+    addProperty(AirticketProcessBuilder.PROPERTY_NAME, "Kermit").
+    addProperty(AirticketProcessBuilder.PROPERTY_FROM, "MUC").
+    addProperty(AirticketProcessBuilder.PROPERTY_TO, "NYC").
+    addProperty(AirticketProcessBuilder.PROPERTY_DATE, "25-Jul-2008").
+    addProperty(AirticketProcessBuilder.PROPERTY_SEATS, "0"). // Invalid number of seats
+    getMessage();
+    return msg;
+  }
 }
\ No newline at end of file

Modified: projects/spec/trunk/modules/samples/airticket/server/src/test/resources/samples/airticket/airticket.bpmn
===================================================================
--- projects/spec/trunk/modules/samples/airticket/server/src/test/resources/samples/airticket/airticket.bpmn	2008-10-30 12:48:25 UTC (rev 2676)
+++ projects/spec/trunk/modules/samples/airticket/server/src/test/resources/samples/airticket/airticket.bpmn	2008-10-30 13:20:37 UTC (rev 2677)
@@ -6,8 +6,8 @@
     <vertices xmi:type="bpmn:Activity" xmi:id="_rsQa8VhtEd2aHsyOaYt_3g" iD="_rsQa8FhtEd2aHsyOaYt_3g" outgoingEdges="_zUIyUFhtEd2aHsyOaYt_3g _ApdYMVhvEd2aHsyOaYt_3g" incomingEdges="_nZeo4W4_Ed2iTb26rib3kA" name="IsValid" activityType="GatewayDataBasedExclusive"/>
     <vertices xmi:type="bpmn:Activity" xmi:id="_zUDSwVhtEd2aHsyOaYt_3g" iD="_zUDSwFhtEd2aHsyOaYt_3g" outgoingEdges="_9Q4IQVhtEd2aHsyOaYt_3g" incomingEdges="_zUIyUFhtEd2aHsyOaYt_3g" name="CheckAvailable" activityType="Task"/>
     <vertices xmi:type="bpmn:Activity" xmi:id="_9Q1sAFhtEd2aHsyOaYt_3g" iD="_9Q1E8FhtEd2aHsyOaYt_3g" outgoingEdges="_BdGREVhuEd2aHsyOaYt_3g _fHP64VhwEd2aHsyOaYt_3g" incomingEdges="_9Q4IQVhtEd2aHsyOaYt_3g" name="IsAvailable" activityType="GatewayDataBasedExclusive"/>
-    <vertices xmi:type="bpmn:Activity" xmi:id="_BdDNwVhuEd2aHsyOaYt_3g" iD="_BdDNwFhuEd2aHsyOaYt_3g" outgoingEdges="_tT3_YVh1Ed2aHsyOaYt_3g" incomingEdges="_BdGREVhuEd2aHsyOaYt_3g" name="SendOffer" activityType="Task"/>
-    <vertices xmi:type="bpmn:Activity" xmi:id="_D-IqcVhuEd2aHsyOaYt_3g" iD="_D-IqcFhuEd2aHsyOaYt_3g" outgoingEdges="_lVOK8VhuEd2aHsyOaYt_3g _1UWrsVhvEd2aHsyOaYt_3g" incomingEdges="_waDtMVh1Ed2aHsyOaYt_3g" name="IsAccepted" activityType="GatewayDataBasedExclusive"/>
+    <vertices xmi:type="bpmn:Activity" xmi:id="_BdDNwVhuEd2aHsyOaYt_3g" iD="_BdDNwFhuEd2aHsyOaYt_3g" outgoingEdges="_vJRx4aaBEd2r29fC0iIfDA" incomingEdges="_BdGREVhuEd2aHsyOaYt_3g" name="MakeOffer" activityType="Task"/>
+    <vertices xmi:type="bpmn:Activity" xmi:id="_D-IqcVhuEd2aHsyOaYt_3g" iD="_D-IqcFhuEd2aHsyOaYt_3g" outgoingEdges="_lVOK8VhuEd2aHsyOaYt_3g _1UWrsVhvEd2aHsyOaYt_3g" incomingEdges="_vJRx4aaBEd2r29fC0iIfDA" name="IsAccepted" activityType="GatewayDataBasedExclusive"/>
     <vertices xmi:type="bpmn:Activity" xmi:id="_T7iiUVhuEd2aHsyOaYt_3g" iD="_T7iiUFhuEd2aHsyOaYt_3g" outgoingEdges="_efVRMVhuEd2aHsyOaYt_3g" incomingEdges="_ApdYMVhvEd2aHsyOaYt_3g" name="SendInvalid" activityType="Task"/>
     <vertices xmi:type="bpmn:Activity" xmi:id="_lVLHoVhuEd2aHsyOaYt_3g" iD="_lVLHoFhuEd2aHsyOaYt_3g" outgoingEdges="_VtHYMVhvEd2aHsyOaYt_3g _Ypm-gVhvEd2aHsyOaYt_3g" incomingEdges="_lVOK8VhuEd2aHsyOaYt_3g" name="Split" activityType="GatewayParallel"/>
     <vertices xmi:type="bpmn:Activity" xmi:id="_VtDt0VhvEd2aHsyOaYt_3g" iD="_VtDt0FhvEd2aHsyOaYt_3g" outgoingEdges="_Fj6DgVhwEd2aHsyOaYt_3g" incomingEdges="_VtHYMVhvEd2aHsyOaYt_3g" name="CreditCard" activityType="Task"/>
@@ -16,7 +16,6 @@
     <vertices xmi:type="bpmn:Activity" xmi:id="_LXbhUVhwEd2aHsyOaYt_3g" iD="_LXbhUFhwEd2aHsyOaYt_3g" outgoingEdges="_QQQ4gVhwEd2aHsyOaYt_3g" incomingEdges="_LXfLsVhwEd2aHsyOaYt_3g" name="SendConfirm" activityType="Task"/>
     <vertices xmi:type="bpmn:Activity" xmi:id="_QQMAAVhwEd2aHsyOaYt_3g" iD="_QQMAAFhwEd2aHsyOaYt_3g" incomingEdges="_QQQ4gVhwEd2aHsyOaYt_3g" name="End" activityType="EventEndEmpty"/>
     <vertices xmi:type="bpmn:Activity" xmi:id="_fHKbUVhwEd2aHsyOaYt_3g" iD="_fHKbUFhwEd2aHsyOaYt_3g" outgoingEdges="_r-90MVhwEd2aHsyOaYt_3g" incomingEdges="_fHP64VhwEd2aHsyOaYt_3g" name="SendNotAvailable" activityType="Task"/>
-    <vertices xmi:type="bpmn:Activity" xmi:id="_tTzG4Fh1Ed2aHsyOaYt_3g" iD="_tTyf0Fh1Ed2aHsyOaYt_3g" outgoingEdges="_waDtMVh1Ed2aHsyOaYt_3g" incomingEdges="_tT3_YVh1Ed2aHsyOaYt_3g" name="ReceiveOrder" activityType="Task"/>
     <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_iyzG8VhtEd2aHsyOaYt_3g" iD="_iyzG8FhtEd2aHsyOaYt_3g" source="_huULIVhtEd2aHsyOaYt_3g" target="_lMlo0VhtEd2aHsyOaYt_3g"/>
     <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_zUIyUFhtEd2aHsyOaYt_3g" iD="_zUILQFhtEd2aHsyOaYt_3g" source="_rsQa8VhtEd2aHsyOaYt_3g" target="_zUDSwVhtEd2aHsyOaYt_3g"/>
     <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_9Q4IQVhtEd2aHsyOaYt_3g" iD="_9Q4IQFhtEd2aHsyOaYt_3g" source="_zUDSwVhtEd2aHsyOaYt_3g" target="_9Q1sAFhtEd2aHsyOaYt_3g"/>
@@ -33,8 +32,7 @@
     <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_QQQ4gVhwEd2aHsyOaYt_3g" iD="_QQQ4gFhwEd2aHsyOaYt_3g" source="_LXbhUVhwEd2aHsyOaYt_3g" target="_QQMAAVhwEd2aHsyOaYt_3g"/>
     <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_fHP64VhwEd2aHsyOaYt_3g" iD="_fHP64FhwEd2aHsyOaYt_3g" source="_9Q1sAFhtEd2aHsyOaYt_3g" target="_fHKbUVhwEd2aHsyOaYt_3g"/>
     <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_r-90MVhwEd2aHsyOaYt_3g" iD="_r-90MFhwEd2aHsyOaYt_3g" source="_fHKbUVhwEd2aHsyOaYt_3g" target="_lMlo0VhtEd2aHsyOaYt_3g"/>
-    <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_tT3_YVh1Ed2aHsyOaYt_3g" iD="_tT3_YFh1Ed2aHsyOaYt_3g" source="_BdDNwVhuEd2aHsyOaYt_3g" target="_tTzG4Fh1Ed2aHsyOaYt_3g"/>
-    <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_waDtMVh1Ed2aHsyOaYt_3g" iD="_waDtMFh1Ed2aHsyOaYt_3g" source="_tTzG4Fh1Ed2aHsyOaYt_3g" target="_D-IqcVhuEd2aHsyOaYt_3g"/>
     <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_nZeo4W4_Ed2iTb26rib3kA" iD="_nZeo4G4_Ed2iTb26rib3kA" source="_lMlo0VhtEd2aHsyOaYt_3g" target="_rsQa8VhtEd2aHsyOaYt_3g"/>
+    <sequenceEdges xmi:type="bpmn:SequenceEdge" xmi:id="_vJRx4aaBEd2r29fC0iIfDA" iD="_vJRx4KaBEd2r29fC0iIfDA" source="_BdDNwVhuEd2aHsyOaYt_3g" target="_D-IqcVhuEd2aHsyOaYt_3g"/>
   </pools>
 </bpmn:BpmnDiagram>

Modified: projects/spec/trunk/modules/samples/airticket/server/src/test/resources/samples/airticket/airticket.bpmn_diagram
===================================================================
--- projects/spec/trunk/modules/samples/airticket/server/src/test/resources/samples/airticket/airticket.bpmn_diagram	2008-10-30 12:48:25 UTC (rev 2676)
+++ projects/spec/trunk/modules/samples/airticket/server/src/test/resources/samples/airticket/airticket.bpmn_diagram	2008-10-30 13:20:37 UTC (rev 2677)
@@ -13,7 +13,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_huUyM1htEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_huUyNFhtEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_huULIVhtEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_huUyNVhtEd2aHsyOaYt_3g" x="24" y="36"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_huUyNVhtEd2aHsyOaYt_3g" y="60"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_lMmP4FhtEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_lMm28FhtEd2aHsyOaYt_3g" type="4001"/>
@@ -22,7 +22,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_lMmP41htEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_lMmP5FhtEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_lMlo0VhtEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lMmP5VhtEd2aHsyOaYt_3g" x="96" y="60"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lMmP5VhtEd2aHsyOaYt_3g" x="60" y="72"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_rsRCAFhtEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_rsRpEFhtEd2aHsyOaYt_3g" type="4001"/>
@@ -31,7 +31,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_rsRCA1htEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_rsRCBFhtEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_rsQa8VhtEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rsRCBVhtEd2aHsyOaYt_3g" x="264" y="60"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rsRCBVhtEd2aHsyOaYt_3g" x="192" y="72"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_zUEg4FhtEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_zUEg5lhtEd2aHsyOaYt_3g" type="4001"/>
@@ -40,7 +40,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_zUEg41htEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_zUEg5FhtEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_zUDSwVhtEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zUEg5VhtEd2aHsyOaYt_3g" x="336"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zUEg5VhtEd2aHsyOaYt_3g" x="264" y="12"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_9Q1sAVhtEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_9Q2TEFhtEd2aHsyOaYt_3g" type="4001"/>
@@ -49,7 +49,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_9Q1sBFhtEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_9Q1sBVhtEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_9Q1sAFhtEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9Q1sBlhtEd2aHsyOaYt_3g" x="480" y="72"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9Q1sBlhtEd2aHsyOaYt_3g" x="408" y="84"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_BdD00FhuEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_BdD01lhuEd2aHsyOaYt_3g" type="4001"/>
@@ -58,7 +58,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_BdD001huEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_BdD01FhuEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_BdDNwVhuEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BdD01VhuEd2aHsyOaYt_3g" x="552"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BdD01VhuEd2aHsyOaYt_3g" x="480" y="12"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_D-J4kFhuEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_D-KfoFhuEd2aHsyOaYt_3g" type="4001"/>
@@ -67,7 +67,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_D-J4k1huEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_D-J4lFhuEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_D-IqcVhuEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D-J4lVhuEd2aHsyOaYt_3g" x="838" y="132"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D-J4lVhuEd2aHsyOaYt_3g" x="646" y="132"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_T7jwcFhuEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_T7kXgFhuEd2aHsyOaYt_3g" type="4001"/>
@@ -76,7 +76,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_T7jwc1huEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_T7jwdFhuEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_T7iiUVhuEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T7jwdVhuEd2aHsyOaYt_3g" x="336" y="120"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T7jwdVhuEd2aHsyOaYt_3g" x="264" y="132"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_lVLHolhuEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_lVLuslhuEd2aHsyOaYt_3g" type="4001"/>
@@ -85,7 +85,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_lVLHpVhuEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_lVLusFhuEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_lVLHoVhuEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lVLusVhuEd2aHsyOaYt_3g" x="444" y="420" width="50" height="50"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lVLusVhuEd2aHsyOaYt_3g" x="732" y="72" width="50" height="50"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_VtE78FhvEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_VtFjAFhvEd2aHsyOaYt_3g" type="4001"/>
@@ -94,7 +94,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_VtE781hvEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_VtE79FhvEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_VtDt0VhvEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VtE79VhvEd2aHsyOaYt_3g" x="540" y="324" width="111" height="61"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VtE79VhvEd2aHsyOaYt_3g" x="792" y="12" width="111" height="61"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_YpkiQFhvEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_YpkiRlhvEd2aHsyOaYt_3g" type="4001"/>
@@ -103,7 +103,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_YpkiQ1hvEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_YpkiRFhvEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_Ypj7MVhvEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YpkiRVhvEd2aHsyOaYt_3g" x="540" y="492" width="111" height="61"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YpkiRVhvEd2aHsyOaYt_3g" x="792" y="144" width="111" height="61"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_Fj1yEFhwEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_Fj2ZIFhwEd2aHsyOaYt_3g" type="4001"/>
@@ -112,7 +112,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_Fj1yE1hwEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_Fj1yFFhwEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_Fj1LAVhwEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Fj1yFVhwEd2aHsyOaYt_3g" x="684" y="420" width="50" height="50"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Fj1yFVhwEd2aHsyOaYt_3g" x="912" y="72" width="50" height="50"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_LXcvcFhwEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_LXdWgFhwEd2aHsyOaYt_3g" type="4001"/>
@@ -121,7 +121,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_LXcvc1hwEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_LXcvdFhwEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_LXbhUVhwEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LXcvdVhwEd2aHsyOaYt_3g" x="780" y="420" width="111" height="61"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LXcvdVhwEd2aHsyOaYt_3g" x="984" y="72" width="111" height="61"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_QQMnEFhwEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_QQNOIFhwEd2aHsyOaYt_3g" type="4001"/>
@@ -130,7 +130,7 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_QQMnE1hwEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_QQMnFFhwEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_QQMAAVhwEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QQMnFVhwEd2aHsyOaYt_3g" x="924" y="432" width="30" height="30"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QQMnFVhwEd2aHsyOaYt_3g" x="1116" y="84" width="30" height="30"/>
       </children>
       <children xmi:type="notation:Node" xmi:id="_fHLpcFhwEd2aHsyOaYt_3g" type="2001">
         <children xmi:type="notation:Node" xmi:id="_fHMQgFhwEd2aHsyOaYt_3g" type="4001"/>
@@ -139,17 +139,8 @@
         <styles xmi:type="notation:FillStyle" xmi:id="_fHLpc1hwEd2aHsyOaYt_3g"/>
         <styles xmi:type="notation:LineStyle" xmi:id="_fHLpdFhwEd2aHsyOaYt_3g" lineColor="0"/>
         <element xmi:type="bpmn:Activity" href="airticket.bpmn#_fHKbUVhwEd2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fHLpdVhwEd2aHsyOaYt_3g" x="552" y="120"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fHLpdVhwEd2aHsyOaYt_3g" x="480" y="132"/>
       </children>
-      <children xmi:type="notation:Node" xmi:id="_tTzt8Fh1Ed2aHsyOaYt_3g" type="2001">
-        <children xmi:type="notation:Node" xmi:id="_tT0VAFh1Ed2aHsyOaYt_3g" type="4001"/>
-        <styles xmi:type="notation:FontStyle" xmi:id="_tTzt8Vh1Ed2aHsyOaYt_3g" fontName="Arial"/>
-        <styles xmi:type="notation:DescriptionStyle" xmi:id="_tTzt8lh1Ed2aHsyOaYt_3g"/>
-        <styles xmi:type="notation:FillStyle" xmi:id="_tTzt81h1Ed2aHsyOaYt_3g"/>
-        <styles xmi:type="notation:LineStyle" xmi:id="_tTzt9Fh1Ed2aHsyOaYt_3g" lineColor="0"/>
-        <element xmi:type="bpmn:Activity" href="airticket.bpmn#_tTzG4Fh1Ed2aHsyOaYt_3g"/>
-        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tTzt9Vh1Ed2aHsyOaYt_3g" x="708"/>
-      </children>
       <styles xmi:type="notation:DrawerStyle" xmi:id="_dhSKAVhtEd2aHsyOaYt_3g"/>
       <styles xmi:type="notation:SortingStyle" xmi:id="_dhSKAlhtEd2aHsyOaYt_3g"/>
       <styles xmi:type="notation:FilteringStyle" xmi:id="_dhSKA1htEd2aHsyOaYt_3g"/>
@@ -159,7 +150,7 @@
     <styles xmi:type="notation:FillStyle" xmi:id="_dhRi8VhtEd2aHsyOaYt_3g" fillColor="16771304"/>
     <styles xmi:type="notation:LineStyle" xmi:id="_dhRi8lhtEd2aHsyOaYt_3g" lineColor="11119017"/>
     <element xmi:type="bpmn:Pool" href="airticket.bpmn#_dhOfoVhtEd2aHsyOaYt_3g"/>
-    <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dhRi81htEd2aHsyOaYt_3g" x="16" y="24" width="1271" height="565"/>
+    <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dhRi81htEd2aHsyOaYt_3g" x="16" y="24" width="1209" height="289"/>
   </children>
   <styles xmi:type="notation:PageStyle" xmi:id="_iZDcIVhrEd2aHsyOaYt_3g"/>
   <styles xmi:type="notation:GuideStyle" xmi:id="_iZDcIlhrEd2aHsyOaYt_3g"/>
@@ -357,30 +348,6 @@
     <element xmi:type="bpmn:SequenceEdge" href="airticket.bpmn#_r-90MVhwEd2aHsyOaYt_3g"/>
     <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_r_A3hFhwEd2aHsyOaYt_3g" points="[-53, -6, 391, 54]$[-415, -31, 29, 29]"/>
   </edges>
-  <edges xmi:type="notation:Edge" xmi:id="_tT5NgFh1Ed2aHsyOaYt_3g" type="3001" source="_BdD00FhuEd2aHsyOaYt_3g" target="_tTzt8Fh1Ed2aHsyOaYt_3g">
-    <children xmi:type="notation:Node" xmi:id="_tT5NhVh1Ed2aHsyOaYt_3g" type="4012">
-      <styles xmi:type="notation:FillStyle" xmi:id="_tT5Nhlh1Ed2aHsyOaYt_3g" fillColor="16776959"/>
-      <styles xmi:type="notation:LineStyle" xmi:id="_tT5Nh1h1Ed2aHsyOaYt_3g" lineColor="16776959"/>
-      <layoutConstraint xmi:type="notation:Location" xmi:id="_tT5NiFh1Ed2aHsyOaYt_3g" y="-10"/>
-    </children>
-    <styles xmi:type="notation:RoutingStyle" xmi:id="_tT5NgVh1Ed2aHsyOaYt_3g" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
-    <styles xmi:type="notation:FontStyle" xmi:id="_tT5Nglh1Ed2aHsyOaYt_3g" fontName="Arial"/>
-    <styles xmi:type="notation:LineStyle" xmi:id="_tT5Ng1h1Ed2aHsyOaYt_3g" lineColor="0"/>
-    <element xmi:type="bpmn:SequenceEdge" href="airticket.bpmn#_tT3_YVh1Ed2aHsyOaYt_3g"/>
-    <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_tT5NhFh1Ed2aHsyOaYt_3g" points="[-53, -3, 650, 27]$[-701, -30, 2, 0]"/>
-  </edges>
-  <edges xmi:type="notation:Edge" xmi:id="_waE7UFh1Ed2aHsyOaYt_3g" type="3001" source="_tTzt8Fh1Ed2aHsyOaYt_3g" target="_D-J4kFhuEd2aHsyOaYt_3g">
-    <children xmi:type="notation:Node" xmi:id="_waFiYFh1Ed2aHsyOaYt_3g" type="4012">
-      <styles xmi:type="notation:FillStyle" xmi:id="_waFiYVh1Ed2aHsyOaYt_3g" fillColor="16776959"/>
-      <styles xmi:type="notation:LineStyle" xmi:id="_waFiYlh1Ed2aHsyOaYt_3g" lineColor="16776959"/>
-      <layoutConstraint xmi:type="notation:Location" xmi:id="_waFiY1h1Ed2aHsyOaYt_3g" y="-10"/>
-    </children>
-    <styles xmi:type="notation:RoutingStyle" xmi:id="_waE7UVh1Ed2aHsyOaYt_3g" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
-    <styles xmi:type="notation:FontStyle" xmi:id="_waE7Ulh1Ed2aHsyOaYt_3g" fontName="Arial"/>
-    <styles xmi:type="notation:LineStyle" xmi:id="_waE7U1h1Ed2aHsyOaYt_3g" lineColor="0"/>
-    <element xmi:type="bpmn:SequenceEdge" href="airticket.bpmn#_waDtMVh1Ed2aHsyOaYt_3g"/>
-    <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_waE7VFh1Ed2aHsyOaYt_3g" points="[-8, 29, 8, -100]$[-40, 128, -24, -1]"/>
-  </edges>
   <edges xmi:type="notation:Edge" xmi:id="_nZiTQG4_Ed2iTb26rib3kA" type="3001" source="_lMmP4FhtEd2aHsyOaYt_3g" target="_rsRCAFhtEd2aHsyOaYt_3g">
     <children xmi:type="notation:Node" xmi:id="_nZlWkG4_Ed2iTb26rib3kA" type="4012">
       <styles xmi:type="notation:FillStyle" xmi:id="_nZlWkW4_Ed2iTb26rib3kA" fillColor="16776959"/>
@@ -393,4 +360,16 @@
     <element xmi:type="bpmn:SequenceEdge" href="airticket.bpmn#_nZeo4W4_Ed2iTb26rib3kA"/>
     <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nZiTRG4_Ed2iTb26rib3kA" points="[54, 0, -206, 3]$[245, 7, -15, 10]"/>
   </edges>
+  <edges xmi:type="notation:Edge" xmi:id="_vJXRcKaBEd2r29fC0iIfDA" type="3001" source="_BdD00FhuEd2aHsyOaYt_3g" target="_D-J4kFhuEd2aHsyOaYt_3g">
+    <children xmi:type="notation:Node" xmi:id="_vJbi4KaBEd2r29fC0iIfDA" type="4012">
+      <styles xmi:type="notation:FillStyle" xmi:id="_vJbi4aaBEd2r29fC0iIfDA" fillColor="16776959"/>
+      <styles xmi:type="notation:LineStyle" xmi:id="_vJbi4qaBEd2r29fC0iIfDA" lineColor="16776959"/>
+      <layoutConstraint xmi:type="notation:Location" xmi:id="_vJbi46aBEd2r29fC0iIfDA" y="-10"/>
+    </children>
+    <styles xmi:type="notation:RoutingStyle" xmi:id="_vJXRcaaBEd2r29fC0iIfDA" routing="Rectilinear" smoothness="Normal" closestDistance="true"/>
+    <styles xmi:type="notation:FontStyle" xmi:id="_vJXRcqaBEd2r29fC0iIfDA" fontName="Arial"/>
+    <styles xmi:type="notation:LineStyle" xmi:id="_vJXRc6aBEd2r29fC0iIfDA" lineColor="0"/>
+    <element xmi:type="bpmn:SequenceEdge" href="airticket.bpmn#_vJRx4aaBEd2r29fC0iIfDA"/>
+    <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_vJXRdKaBEd2r29fC0iIfDA" points="[51, 29, -209, -100]$[242, 136, -18, 7]"/>
+  </edges>
 </notation:Diagram>




More information about the jbpm-commits mailing list