[jbpm-commits] JBoss JBPM SVN: r1928 - in jbossbpm/spec/trunk/modules: api/src/main/java/org/jboss/bpm/client and 15 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Tue Aug 19 06:45:22 EDT 2008


Author: thomas.diesler at jboss.com
Date: 2008-08-19 06:45:22 -0400 (Tue, 19 Aug 2008)
New Revision: 1928

Added:
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractElement.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ActivityBuilder.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Artifact.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ArtifactInput.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ArtifactOutput.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Assignment.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ComplexGateway.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ConnectingObject.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Entity.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Event.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EventDetail.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ExclusiveGateway.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Expression.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gate.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gateway.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/GraphicalElement.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/InclusiveGateway.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/InputSet.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/IntermediateEvent.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MessageEventDetail.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MessageFlow.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MutablePropertySupport.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ObjectNameFactory.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/OutputSet.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ParallelGateway.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Participant.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertyBuilder.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertyBuilderFactory.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertySupport.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ReceiveTask.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Role.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SendTask.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SequenceFlow.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SignalEventDetail.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleOutFlowSupport.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Handler.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/HandlerSupport.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleInFlowSetterSupport.java
Removed:
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ObjectNameFactory.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/ri/
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleInFlowSetterSupport.java
Modified:
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ExecutionManager.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/MessageManager.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Constants.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EventBuilder.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/GatewayBuilder.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Message.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Property.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/TaskBuilder.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/ExecutionHandler.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/FlowHandler.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/SignalHandler.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Token.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/TokenExecutor.java
   jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/test/AbstractAPITestCase.java
   jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessMarshaller.java
   jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessUnmarshaller.java
   jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBAssignment.java
   jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBSequenceFlow.java
   jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/jbpm-beans.xml
   jbossbpm/spec/trunk/modules/dialects/stp/src/test/resources/jbpm-beans.xml
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/ExecutionManagerImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/MessageManagerImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/RunnableToken.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityBuilderImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/AssignmentImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/BPMNElementImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ComplexGatewayImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EndEventImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EntityImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventBuilderImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventDetailImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExclusiveGatewayDataBasedImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExclusiveGatewayImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExpressionEvaluator.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExpressionImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowObjectImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GateImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayBuilderImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GraphicalElementImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/HandlerImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/HandlerSetterSupport.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/InclusiveGatewayImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/InputSetImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/IntermediateEventImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageEventDetailImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageFlowImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageSender.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MultipleInFlowSetterSupport.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MultipleOutFlowSetterSupport.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/OutputSetImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ParallelGatewayImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ParticipantImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessBuilderImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyBuilderFactoryImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyBuilderImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ReceiveTaskImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/RoleImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/RuntimeProcessImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SendTaskImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SequenceFlowImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SignalEventDetailImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleOutFlowSetterSupport.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/StartEventImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SubProcessImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SupportingElementImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskBuilderImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TokenExecutorImpl.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/DelegatingExecutionContext.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/DelegatingToken.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/MutableToken.java
   jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/TokenImpl.java
   jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AvailabilityHandler.java
   jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/ValidationHandler.java
   jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java
   jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/resources/jbpm-beans.xml
   jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java
   jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/ProcessMarshallerTest.java
   jbossbpm/spec/trunk/modules/testsuite/src/test/resources/jbpm-beans.xml
Log:
Restructure API packages

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ExecutionManager.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ExecutionManager.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ExecutionManager.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,15 +21,9 @@
  */
 package org.jboss.bpm.client;
 
-// $Id$
+// $Id: $
 
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.management.ObjectName;
-
 import org.jboss.bpm.model.Process;
-import org.jboss.bpm.ri.runtime.RuntimeProcess;
 import org.jboss.bpm.runtime.Attachments;
 
 /**
@@ -40,9 +34,6 @@
  */
 public abstract class ExecutionManager
 {
-  // The map of active runtime processes
-  private Map<ObjectName, RuntimeProcess> runtimeProcesses = new HashMap<ObjectName, RuntimeProcess>();
-  
   // Hide public constructor
   protected ExecutionManager()
   {
@@ -64,24 +55,4 @@
    * @param att The Attachments in the ExecutionContext
    */
   public abstract void startProcess(Process proc, Attachments att);
-  
-  /**
-   * Get a {@link RuntimeProcess} for a given processID
-   * @return null if there is no such process
-   */
-  public RuntimeProcess getRuntimeProcess(ObjectName procID)
-  {
-    return runtimeProcesses.get(procID);
-  }
-  
-  protected void addRuntimeProcess(RuntimeProcess rtProc)
-  {
-    ObjectName procID = rtProc.getProcess().getID();
-    runtimeProcesses.put(procID, rtProc);
-  }
-  
-  protected void removeRuntimeProcess(RuntimeProcess rtProc)
-  {
-    runtimeProcesses.remove(rtProc.getProcess().getID());
-  }
 }

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/MessageManager.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/MessageManager.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/MessageManager.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -31,13 +31,10 @@
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.jboss.bpm.model.Message;
-import org.jboss.bpm.ri.model.Event;
-import org.jboss.bpm.ri.model.Participant;
-import org.jboss.bpm.ri.model.Task;
 
 /**
  * The ProcessEngine sends mesages through the MessageManager. <p/> A {@link Message} has an ID and is targeted to a
- * specific {@link Participant}. A component can register a {@link MessageListener} with the MessageManager.
+ * specific Participant. A component can register a {@link MessageListener} with the MessageManager.
  * 
  * @author thomas.diesler at jboss.com
  * @since 18-Jun-2008
@@ -99,7 +96,7 @@
   }
 
   /**
-   * Send a message to a given {@link Task} or {@link Event}
+   * Send a message to a given Task or Event
    */
   public abstract void sendMessage(ObjectName procID, String targetName, Message msg);
 

Deleted: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ObjectNameFactory.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ObjectNameFactory.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ObjectNameFactory.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -1,74 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.client;
-
-// $Id$
-
-import java.util.Hashtable;
-
-import javax.management.MalformedObjectNameException;
-import javax.management.ObjectName;
-
-/**
- * A simple factory for creating safe object names.
- *
- * @author Thomas.Diesler at jboss.org
- * @since 08-May-2006
- */
-public class ObjectNameFactory
-{
-   public static ObjectName create(String name)
-   {
-      try
-      {
-         return new ObjectName(name);
-      }
-      catch (MalformedObjectNameException e)
-      {
-         throw new Error("Invalid ObjectName: " + name + "; " + e);
-      }
-   }
-
-   public static ObjectName create(String domain, String key, String value)
-   {
-      try
-      {
-         return new ObjectName(domain, key, value);
-      }
-      catch (MalformedObjectNameException e)
-      {
-         throw new Error("Invalid ObjectName: " + domain + "," + key + "," + value + "; " + e);
-      }
-   }
-
-   public static ObjectName create(String domain, Hashtable<String, String> table)
-   {
-      try
-      {
-         return new ObjectName(domain, table);
-      }
-      catch (MalformedObjectNameException e)
-      {
-         throw new Error("Invalid ObjectName: " + domain + "," + table + "; " + e);
-      }
-   }
-}

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractElement.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractElement.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractElement.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,42 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+//$Id$
+
+import java.io.Serializable;
+
+import javax.management.ObjectName;
+
+/**
+ * The parrent of all BPMN elements
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface AbstractElement extends Serializable
+{
+  /**
+   * Get the ID of this element
+   */
+  ObjectName getID();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/AbstractElement.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,112 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+import java.util.List;
+
+//$Id$
+
+/**
+ * An activity is a generic term for work that a company or organization performs via business processes. An activity can be atomic or non-atomic (compound). The types
+ * of activities that are a part of a Process Model are: Process, SubProcess, and Task.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface Activity extends FlowObject, PropertySupport, SingleInFlowSupport, SingleOutFlowSupport
+{
+  /**
+   * The ActivityType MUST be of type Task or Sub-Process.
+   */
+  enum ActivityType
+  {
+    Task, SubProcess
+  }
+  
+  /**
+   * The Activity LoopType
+   */
+  enum LoopType
+  {
+    None, Standard, MultiInstance
+  }
+  
+  /**
+   * The ActivityType MUST be of type Task or Sub-Process.
+   */
+  ActivityType getActivityType();
+
+  /**
+   * One or more Performers MAY be entered. The Performer attribute defines the
+   * resource that will perform or will be responsible for the activity. The Performer
+   * entry could be in the form of a specific individual, a group, an organization role
+   * or position, or an organization.
+   */
+  List<String> getPerformers();
+  
+  /**
+   * The InputSets attribute defines the data requirements for input to the Activity.
+   * Zero or more InputSets MAY be defined. Each Input set is sufficient to allow the
+   * Activity to be performed (if it has first been instantiated by the appropriate signal
+   * arriving from an incoming Sequence Flow)
+   */
+  List<InputSet> getInputSets();
+  
+  /**
+   * The OutputSets attribute defines the data requirements for output from the
+   * activity. Zero or more OutputSets MAY be defined. At the completion of the
+   * activity, only one of the OutputSets may be produced--It is up to the
+   * implementation of the activity to determine which set will be produced. However,
+   * the IORules attribute MAY indicate a relationship between an OutputSet and an
+   * InputSet that started the activity.
+   */
+  List<OutputSet> getOutputSets();
+  
+  /**
+   * The IORules attribute is a collection of expressions, each of which specifies the
+   * required relationship between one input and one output. That is, if the activity is
+   * instantiated with a specified input, that activity shall complete with the specified
+   * output.
+   */
+  List<Expression> getIORules();
+  
+  /**
+   * The default value is 1. The value MUST NOT be less than 1. This attribute
+   * defines the number of Tokens that must arrive before the activity can begin.
+   */
+  int getStartQuantity();
+  
+  /**
+   * The default value is 1. The value MUST NOT be less than 1. This attribute
+   * defines the number of Tokens that must be generated from the activity. This
+   * number of Tokens will be sent down any outgoing Sequence Flow (assuming any
+   * Sequence Flow Conditions are satisfied).
+   */
+  int getCompletionQuantity();
+  
+  /**
+   * LoopType is an attribute and is by default None, but MAY be set to Standard or
+   * MultiInstance. A Task of type Receive that has its Instantiate attribute set to True MUST NOT
+   * have a Standard or MultiInstance LoopType.
+   */
+  LoopType getLoopType();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ActivityBuilder.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ActivityBuilder.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ActivityBuilder.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,63 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+//$Id$
+
+/**
+ * The ActivityBuilder can be used to build an Activity dynamically.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface ActivityBuilder extends ProcessBuilder
+{
+  /**
+   * Add an InputSet
+   */
+  ActivityBuilder addInputSet();
+
+  /**
+   * Add an Property Input
+   */
+  ActivityBuilder addPropertyInput(String name, String value);
+
+  /**
+   * Add an OutputSet
+   */
+  ActivityBuilder addOutputSet();
+
+  /**
+   * Add an Property Output
+   */
+  ActivityBuilder addPropertyOutput(String name, String value);
+  
+  /**
+   * Add an IORule Expression
+   */
+  ActivityBuilder addIORule(String body, Constants.ExpressionLanguage lang);
+  
+  /**
+   * Add an activity property
+   */
+  ActivityBuilder addProperty(String name, String value);
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ActivityBuilder.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Artifact.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Artifact.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Artifact.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,49 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+
+/**
+ * An ArtifactInput, which is used in the definition of attributes for InputSet
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface Artifact 
+{
+  /**
+   * Defines the type of an {@link Artifact}
+   */
+  enum ArtifactType
+  {
+    DataObject, Group, Annotation 
+  };
+  
+ /**
+  * The ArtifactType MAY be set to DataObject, Group, or Annotation.
+  * The ArtifactType list MAY be extended to include new types.
+  */
+  ArtifactType getArtifactType();
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Artifact.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ArtifactInput.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ArtifactInput.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ArtifactInput.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,51 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+
+/**
+ * An ArtifactInput, which is used in the definition of attributes for {@link InputSet}
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface ArtifactInput extends Artifact
+{
+  /**
+   * This attribute identifies an Artifact that will be used as an input to an activity. The
+   * identified Artifact will be part of an InputSet for an activity.
+   */
+  Artifact getArtifactRef();
+  
+  /**
+   * The default value for this attribute is True. This means that the Input is required for
+   * an activity to start. If set to False, then the activity MAY start within the input if it
+   * is available, but MAY accept the input (more than once) after the activity has
+   * started. An InputSet may have a some of ArtifactInputs that have this attribute set
+   * to True and some that are set to False.
+   */
+  boolean isRequireForStart();
+
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ArtifactInput.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ArtifactOutput.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ArtifactOutput.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ArtifactOutput.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,51 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+
+/**
+ * An ArtifactOutput, which is used in the definition of attributes for {@link OutputSet}
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface ArtifactOutput extends Artifact
+{
+  /**
+   * This attribute identifies an Artifact that will be used as an output to an activity. The
+   * identified Artifact will be part of an OutputSet for an activity.
+   */
+  Artifact getArtifactRef();
+  
+  /**
+   * The default value for this attribute is True. This means that the Output will be
+   * produced when an activity has been completed. If set to False, then the activity
+   * MAY produce the output (more than once) before it has completed. An OutputSet
+   * may have a some of ArtifactOutputs that have this attribute set to True and some that
+   * are set to False.
+   */
+  boolean isProduceAtCompletion();
+
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ArtifactOutput.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Assignment.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Assignment.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Assignment.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,62 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+import org.jboss.bpm.model.Constants.AssignTime;
+
+//$Id$
+
+/**
+ * An Assignment, which is used in the definition of attributes for Process,
+ * Activity, Event, Gateway, and Gate.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface Assignment
+{
+  /**
+   * The target for the Assignment MUST be a Property of the Process or the activity
+   * itself.
+   */
+  Property getTo();
+  
+  /**
+   * The Expression MUST be made up of a combination of Values, Properties, and
+   * Attributes, which are separated by operators such as add or multiply. The expression
+   * language is defined in the ExpressionLanguage attribute of the Business Process
+   * Diagram
+   */
+  Expression getFrom();
+
+  /**
+   * An Assignment MAY have a AssignTime setting. If the Object is an activity (Task,
+   * Sub-Process, or Process), then the Assignment MUST have an AssignTime.
+   * A value of Start means that the assignment SHALL occur at the start of the activity.
+   * This can be used to assign the higher-level (global) Properties of the Process to the
+   * (local) Properties of the activity as an input to the activity.
+   * A value of End means that the assignment SHALL occur at the end of the activity.
+   * This can be used to assign the (local) Properties of the activity to the higher-level
+   * (global) Properties of the Process as an output to the activity.
+   */
+  AssignTime getAssignTime();
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Assignment.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ComplexGateway.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ComplexGateway.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ComplexGateway.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,51 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+// $Id$
+
+/**
+ * A Complex Gateway handles situations that are not easily handled through the other types of Gateways. Complex
+ * Gateways can also be used to combine a set of linked simple Gateways into a single, more compact situation. Modelers
+ * can provide complex expressions that determine the merging and/or splitting behavior of the Gateway.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface ComplexGateway extends Gateway
+{
+  /**
+   * If there are multiple incoming Sequence Flow, an IncomingCondition expression
+   * MUST be set by the modeler. This will consist of an expression that can reference
+   * Sequence Flow names and/or Process Properties (Data).
+   */
+  Expression getIncommingCondition();
+
+  /**
+   * If there are multiple outgoing Sequence Flow, an OutgoingCondition expression
+   * MUST be set by the modeler. This will consist of an expression that can reference
+   * (outgoing) Sequence Flow Ids and/or Process Properties (Data).
+   */
+  Expression getOutgoingCondition();
+
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ComplexGateway.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ConnectingObject.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ConnectingObject.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ConnectingObject.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,59 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+//$Id$
+
+/**
+ * There are two ways of Connecting Objects in BPMN: a Flow, either sequence or message, and an Association. Sequence
+ * Flow and Message Flow, to a certain extent, represent orthogonal aspects of the business processes depicted in a model,
+ * although they both affect the performance of activities within a Process.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface ConnectingObject
+{
+  /**
+   * Name is an optional attribute that is text description of the Connecting Object.
+   */
+  String getName();
+
+  /**
+   * SourceRef is an attribute that identifies which Graphical Element the Connecting
+   * Object is connected from. Note: there are restrictions as to what objects Sequence
+   * Flow and Message Flow can connect. 
+   */
+  FlowObject getSourceRef();
+
+  /**
+   * TargetRef is an attribute that identifies which Graphical Element the Connecting
+   * Object is connected to. Note: there are restrictions as to what objects Sequence
+   * Flow and Message Flow can connect.
+   */
+  FlowObject getTargetRef();
+
+  /**
+   * Get the required target name
+   */
+  String getTargetName();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ConnectingObject.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Constants.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Constants.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Constants.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,20 +21,18 @@
  */
 package org.jboss.bpm.model;
 
-import org.jboss.bpm.ri.model.Activity;
-import org.jboss.bpm.ri.model.Event;
+//$Id: $
 
-//$Id$
 
-
 /**
- * A Process is any {@link Activity} performed within a company or organization.
+ * DEfines the constants used by the JBossBPM spec
  * 
  * @author thomas.diesler at jboss.com
  * @since 08-Jul-2008
  */
 public interface Constants 
 {
+  static final String ID_DOMAIN = "jboss.bpm";
 
   public enum AssignTime
   {
@@ -42,7 +40,7 @@
   }
 
   /**
-   * Defines the type of an {@link Event}
+   * Defines the type of an Event
    */
   public enum EventDetailType
   {
@@ -86,4 +84,9 @@
   {
     None, Ready, Active, Cancelled, Aborting, Aborted, Completing, Completed
   }
+
+  public enum ParticipantType
+  {
+    Role, Entity
+  }
 }
\ No newline at end of file

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,51 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+//$Id$
+
+import java.util.List;
+
+
+/**
+ * As the name implies, the End Event indicates where a Process will end. 
+ * 
+ * In terms of Sequence Flow, the End Event ends the flow of the Process, and thus, will not have any outgoing Sequence Flow. 
+ * An End Event can have a specific Result that will appear as a marker within the center of the End Event shape. 
+ * End Event Results are Message, Error, Compensation, Link, and Multiple.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface EndEvent extends Event, SingleInFlowSupport
+{
+  /** 
+   * Result defines the type of result expected for an End Event. 
+   * Of the set of EventDetailTypes only six can be applied to an 
+   * End Event: Message, Error, Cancel, Compensation, Signal, and Terminate.
+   * 
+   * If there is no EventDetail defined, then this is considered a None End Event.
+   * If there is more than one EventDetail defined, this is considered a Multiple EndEvent.
+   */
+  List<EventDetail> getResult();
+
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Entity.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Entity.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Entity.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * An Entity, which is used in the definition of attributes for a {@link Participant}
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface Entity 
+{
+  /**
+   * Name is an attribute that is text description of the Entity.
+   */
+  String getName();
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Entity.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Event.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Event.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Event.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,45 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+
+//$Id$
+
+/**
+ * An Event is something that “happens” during the course of a business process. 
+ * <p/>
+ * These Events affect the flow of the Process and usually have a cause or an impact.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface Event extends FlowObject
+{
+  /**
+   * Defines the type of an {@link Event}
+   */
+  enum EventType
+  {
+    Start, End, Intermediate 
+  };
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Event.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EventBuilder.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EventBuilder.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EventBuilder.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -24,11 +24,9 @@
 //$Id$
 
 import org.jboss.bpm.model.Signal.SignalType;
-import org.jboss.bpm.ri.model.Event;
-import org.jboss.bpm.ri.model.EventDetail;
 
 /**
- * The EventBuilder can be used to build an {@link Event} dynamically.
+ * The EventBuilder can be used to build an Event dynamically.
  * 
  * @author thomas.diesler at jboss.com
  * @since 08-Jul-2008
@@ -36,17 +34,17 @@
 public interface EventBuilder extends ProcessBuilder
 {
   /**
-   * Add an event detail to the last added {@link Event}
+   * Add an event detail to the last added Event
    */
   EventBuilder addEventDetail(Constants.EventDetailType detailType);
   
   /**
-   * Add a signal ref to the last added {@link EventDetail}
+   * Add a signal ref to the last added EventDetail
    */
   EventBuilder addSignalRef(SignalType signalType, String signalMessage);
   
   /**
-   * Add a message ref to the last added {@link EventDetail}
+   * Add a message ref to the last added EventDetail
    */
   EventBuilder addMessageRef(String msgName);
 }
\ No newline at end of file

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EventDetail.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EventDetail.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EventDetail.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,44 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+import org.jboss.bpm.model.Constants.EventDetailType;
+
+//$Id$
+
+/**
+ * The base of all supported event details. 
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface EventDetail 
+{
+  /**
+   * The EventDetailType attribute defines the type of trigger expected for an Event. The
+   * set of types includes Message, Timer, Error, Conditional, Link, Signal, Compensate,
+   * Cancel, and Terminate. The EventTypes (Start, Intermediate, and End) will each
+   * have a subset of the EventDetailTypes that can be used.
+   * The EventDetailType list MAY be extended to include new types.
+   */
+  EventDetailType getEventDetailType();
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/EventDetail.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ExclusiveGateway.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ExclusiveGateway.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ExclusiveGateway.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,58 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+
+//$Id$
+
+/**
+ * Exclusive Gateways (Decisions) are locations within a business process where the Sequence Flow can take two or more
+ * alternative paths. This is basically the “fork in the road” for a process. For a given performance (or instance) of the
+ * process, only one of the paths can be taken (this should not be confused with forking of paths—refer to “Forking Flow”)
+ * 
+ * A Decision is not an activity from the business process perspective, but is a type of Gateway that controls
+ * the Sequence Flow between activities. It can be thought of as a question that is asked at that point in the Process. The
+ * question has a defined set of alternative answers (Gates). Each Decision Gate is associated with a condition expression
+ * found within an outgoing Sequence Flow. When a Gate is chosen during the performance of the Process, the
+ * corresponding Sequence Flow is then chosen. A Token arriving at the Decision would be directed down the appropriate
+ * path, based on the chosen Gate.
+ * 
+ * The Exclusive Decision has two or more outgoing Sequence Flow, but only one of them may be taken during the
+ * performance of the Process. Thus, the Exclusive Decision defines a set of alternative paths for the Token to take as it
+ * traverses the Flow. There are two types of Exclusive Decisions: Data-Based and Event-Based.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface ExclusiveGateway extends Gateway
+{
+  enum ExclusiveType
+  {
+    Data, Event
+  }
+  
+  /**
+   * ExclusiveType is by default Data. The ExclusiveType MAY be set to Event.
+   */
+  ExclusiveType getExclusiveType();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ExclusiveGateway.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Expression.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Expression.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Expression.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,55 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+import org.jboss.bpm.model.Constants.ExpressionLanguage;
+
+//$Id$
+
+/**
+ * An Expression, which is used in the definition of attributes for StartEvent,
+ * IntermediateEvent, Activity, ComplexGateway, and SequenceFlow
+ *  
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface Expression 
+{
+  /**
+   * An ExpressionBody MUST be entered to provide the text of the expression, which
+   * will be written in the language defined by the ExpressionLanguage attribute.
+   */
+  String getExpressionBody();
+  
+  /**
+   * An ExpressionValue MAY be available if the Expression is used as a {@link Property} value.
+   */
+  Object getExpressionValue();
+  
+  /**
+   * A Language MUST be provided to identify the language of the ExpressionBody.
+   * The value of the ExpressionLanguage should follow the naming conventions for the
+   * version of the specified language.
+   */
+  ExpressionLanguage getExpressionLanguage();
+
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Expression.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,51 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+import java.util.List;
+
+//$Id$
+
+/**
+ * A Flow Object is one of the set of following graphical objects: Event, Activity, and Gateway.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface FlowObject extends GraphicalElement
+{
+  /**
+   * Get the unique name.
+   */
+  String getName();
+
+  /**
+   * Get the associated Process
+   */
+  Process getProcess();
+
+  /**
+   * One or more assignment expressions MAY be made for the object. For activities (Task, Sub-Process, and Process), the
+   * Assignment SHALL be performed as defined by the AssignTime attribute.
+   */
+  List<Assignment> getAssignments();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gate.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gate.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gate.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,75 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+import java.util.List;
+
+
+
+//$Id$
+
+/**
+ * There MAY be zero or more Gates (except where noted below). Zero Gates are
+ * allowed if the Gateway is last object in a Process flow and there are no Start or
+ * End Events for the Process. If there are zero or only one incoming Sequence
+ * Flow, then there MUST be at least two Gates.
+ * 
+ * For Exclusive Data-Based Gateways
+ * When two Gates are required, one of them MAY be the DefaultGate.
+ * 
+ * For Exclusive Event-Based Gateways
+ * There MUST be two or more Gates. (Note that this type of Gateway does not act
+ * only as a Merge--it is always a Decision, at least.)
+ * 
+ * For Inclusive Gateways
+ * When two Gates are required, one of them MAY be the DefaultGate.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface Gate 
+{
+  /**
+   * Each Gate MUST have an associated (outgoing) Sequence Flow. 
+   * 
+   * For Exclusive Event-Based, Complex, and Parallel Gateways:
+   * The Sequence Flow MUST have its Condition attribute set to None (there is not an
+   * evaluation of a condition expression).
+   * 
+   * For Exclusive Data-Based, and Inclusive Gateways:
+   * The Sequence Flow MUST have its Condition attribute set to Expression and
+   * MUST have a valid ConditionExpression. The ConditionExpression MUST be
+   * unique for all the Gates within the Gateway. If there is only one Gate (i.e., the
+   * Gateway is acting only as a Merge), then Sequence Flow MUST have its Condition
+   * set to None.
+   * 
+   * For DefaultGates:
+   * The Sequence Flow MUST have its Condition attribute set to Otherwise
+   */
+  SequenceFlow getOutgoingSequenceFlow();
+
+  /**
+   * One or more assignment expressions MAY be made for each Gate. The
+   * Assignment SHALL be performed when the Gate is selected.
+   */
+  List<Assignment> getAssignments();
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gate.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gateway.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gateway.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gateway.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,75 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+import java.util.List;
+
+import org.jboss.bpm.model.Constants.GatewayType;
+
+//$Id$
+
+/**
+ * Gateways are modeling elements that are used to control how Sequence Flow interact as they converge and diverge within
+ * a Process. If the flow does not need to be controlled, then a Gateway is not needed. The term “Gateway” implies that
+ * there is a gating mechanism that either allows or disallows passage through the Gateway--that is, as Tokens arrive at a
+ * Gateway, they can be merged together on input and/or split apart on output as the Gateway mechanisms are invoked. To
+ * be more descriptive, a Gateway is actually a collection of “Gates.” 
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface Gateway extends FlowObject
+{
+  /**
+   * GatewayType is by default Exclusive. The GatewayType MAY be set to Inclusive, Complex, or Parallel. The GatewayType will determine the behavior of the Gateway,
+   * both for incoming and outgoing Sequence Flow
+   */
+  GatewayType getGatewayType();
+
+  /**
+   * There MAY be zero or more Gates (except where noted below). Zero Gates are allowed if the Gateway is last object in a Process flow and there are no Start or End
+   * Events for the Process. If there are zero or only one incoming Sequence Flow, then there MUST be at least two Gates.
+   * 
+   * For Exclusive Data-Based Gateways. 
+   * When two Gates are required, one of them MAY be the DefaultGate.
+   * 
+   * For Exclusive Event-Based Gateways.
+   * There MUST be two or more Gates. (Note that this type of Gateway does not act only as a Merge--it is always a Decision, at
+   * least.)
+   * 
+   * For Inclusive Gateways. 
+   * When two Gates are required, one of them MAY be the DefaultGate.
+   */
+  List<Gate> getGates();
+  
+  /**
+   * Get the optional default gate
+   * @return null if there is none
+   */
+  Gate getDefaultGate();
+  
+  /**
+   * Get the gate for the given target name
+   * @return null if there is none
+   */
+  Gate getGateByTargetName(String targetName);
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gateway.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/GatewayBuilder.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/GatewayBuilder.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/GatewayBuilder.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,13 +21,10 @@
  */
 package org.jboss.bpm.model;
 
-import org.jboss.bpm.ri.model.Gateway;
+//$Id:$
 
-
-//$Id$
-
 /**
- * The GatewayBuilder can be used to build a {@link Gateway} dynamically.
+ * The GatewayBuilder can be used to build a Gateway dynamically.
  * 
  * @author thomas.diesler at jboss.com
  * @since 08-Jul-2008

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/GraphicalElement.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/GraphicalElement.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/GraphicalElement.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,35 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * A graphical BPMN element 
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface GraphicalElement extends AbstractElement
+{
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/GraphicalElement.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/InclusiveGateway.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/InclusiveGateway.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/InclusiveGateway.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,44 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * This Decision represents a branching point where Alternatives are based on conditional expressions contained within
+ * outgoing Sequence Flow. However, in this case, the True evaluation of one condition expression does not exclude the
+ * evaluation of other condition expressions. All Sequence Flow with a True evaluation will be traversed by a Token. In
+ * some sense it’s like a grouping of related independent Binary (Yes/No) Decisions--and can be modeled that way. Since
+ * each path is independent, all combinations of the paths may be taken, from zero to all. However, it should be
+ * designed so that at least one path is taken.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface InclusiveGateway extends Gateway
+{
+  /**
+   * A Default Gate MAY be specified
+   */
+  Gate getDefaultGate();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/InclusiveGateway.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/InputSet.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/InputSet.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/InputSet.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,50 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+//$Id$
+
+import java.util.List;
+
+/**
+ * An InputSet, which is used in the definition of common attributes for Activities and for attributes of a Process
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface InputSet extends MutablePropertySupport
+{
+  /**
+   * Zero or more ArtifactInputs MAY be defined for each InputSet. For the
+   * combination of ArtifactInputs and PropertyInputs, there MUST be at least one
+   * item defined for the InputSet. An ArtifactInput is an Artifact, usually a Data
+   * Object. 
+   */
+  List<ArtifactInput> getArtifactInputs();
+
+  /**
+   * Zero or more PropertyInputs MAY be defined for each InputSet. For the
+   * combination of ArtifactInputs and PropertyInputs, there MUST be at least one
+   * item defined for the InputSet.
+   */
+  List<Property> getProperties();
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/InputSet.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/IntermediateEvent.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/IntermediateEvent.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/IntermediateEvent.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * An Intermediate Event is an {@link Event} that occurs after a {@link Process} has been started. 
+ * <p/>
+ * It will affect the {@link ConnectingObject} of the {@link Process}, but will not start or (directly) terminate
+ * the {@link Process}. An Intermediate Event will show where messages or delays are expected within the {@link Process}, 
+ * disrupt the Normal Flow through exception handling, or show the extra flow required for compensating a transaction.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface IntermediateEvent extends Event, SingleInFlowSupport, SingleOutFlowSupport
+{
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/IntermediateEvent.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Message.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Message.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Message.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,28 +21,16 @@
  */
 package org.jboss.bpm.model;
 
-import org.jboss.bpm.ri.model.EndEvent;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.IntermediateEvent;
-import org.jboss.bpm.ri.model.MessageFlow;
-import org.jboss.bpm.ri.model.Participant;
-import org.jboss.bpm.ri.model.PropertySupport;
-import org.jboss.bpm.ri.model.StartEvent;
-import org.jboss.bpm.ri.model.SupportingElement;
-import org.jboss.bpm.ri.model.Task;
+//$Id: $
 
-
-
-//$Id$
-
 /**
- * A Message, which is used in the definition of attributes for a {@link StartEvent},
- * {@link EndEvent}, {@link IntermediateEvent}, {@link Task}, and {@link MessageFlow}
+ * A Message, which is used in the definition of attributes for a StartEvent,
+ * EndEvent, IntermediateEvent, Task, and MessageFlow
  * 
  * @author thomas.diesler at jboss.com
  * @since 21-Jul-2008
  */
-public interface Message extends SupportingElement, PropertySupport
+public interface Message extends PropertySupport
 {
   /**
    * Specifies the technology that will be used to send or receive the

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MessageEventDetail.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MessageEventDetail.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MessageEventDetail.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,45 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * The Message event detail 
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface MessageEventDetail extends EventDetail
+{
+  /**
+   * If the EventDetailType is a MessageRef, then the a Message MUST be supplied.
+   */
+  Message getMessageRef();
+
+  /**
+   * This attribute specifies the technology that will be used to send or receive the
+   * message. A Web service is the default technology.
+   */
+  Message.Implementation getImplementation(); 
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MessageEventDetail.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MessageFlow.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MessageFlow.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MessageFlow.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,43 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * A Message Flow is a dashed line that is used to show the flow of messages between two entities that are prepared to
+ * send and receive them. In BPMN, two separate Pools in the Diagram will represent the two entities.
+ * 
+ * Message Flow MUST connect two Pools, either to the Pools themselves or to Flow Objects within the Pools. They cannot
+ * connect two objects within the same Pool.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface MessageFlow extends ConnectingObject
+{
+  /**
+   * MessageRef is an optional attribute that identifies the Message that is being sent.
+   */
+  Message getMessageRef();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MessageFlow.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MutablePropertySupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MutablePropertySupport.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MutablePropertySupport.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * Mutable property support
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface MutablePropertySupport extends PropertySupport
+{
+  /**
+   * Add a property
+   */
+  void addProperty(Property prop);
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/MutablePropertySupport.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Copied: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ObjectNameFactory.java (from rev 1925, jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/client/ObjectNameFactory.java)
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ObjectNameFactory.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ObjectNameFactory.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,74 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+// $Id$
+
+import java.util.Hashtable;
+
+import javax.management.MalformedObjectNameException;
+import javax.management.ObjectName;
+
+/**
+ * A simple factory for creating safe object names.
+ *
+ * @author Thomas.Diesler at jboss.org
+ * @since 08-May-2006
+ */
+public class ObjectNameFactory
+{
+   public static ObjectName create(String name)
+   {
+      try
+      {
+         return new ObjectName(name);
+      }
+      catch (MalformedObjectNameException e)
+      {
+         throw new Error("Invalid ObjectName: " + name + "; " + e);
+      }
+   }
+
+   public static ObjectName create(String domain, String key, String value)
+   {
+      try
+      {
+         return new ObjectName(domain, key, value);
+      }
+      catch (MalformedObjectNameException e)
+      {
+         throw new Error("Invalid ObjectName: " + domain + "," + key + "," + value + "; " + e);
+      }
+   }
+
+   public static ObjectName create(String domain, Hashtable<String, String> table)
+   {
+      try
+      {
+         return new ObjectName(domain, table);
+      }
+      catch (MalformedObjectNameException e)
+      {
+         throw new Error("Invalid ObjectName: " + domain + "," + table + "; " + e);
+      }
+   }
+}

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/OutputSet.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/OutputSet.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/OutputSet.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,50 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+//$Id$
+
+import java.util.List;
+
+/**
+ * An OuputSet, which is used in the definition of common attributes for Activities and for attributes of a Process
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface OutputSet extends MutablePropertySupport
+{
+  /**
+   * Zero or more ArtifactOutputs MAY be defined for each OutputSet. For the
+   * combination of ArtifactOutputs and PropertyOutputs, there MUST be at least one
+   * item defined for the OutputSet. An ArtifactOutput is an {@link Artifact}, 
+   * usually a DataObject. 
+   */
+  List<ArtifactOutput> getArtifactOutputs();
+
+  /**
+   * Zero or more PropertyInputs MAY be defined for each InputSet. For the
+   * combination of ArtifactInputs and PropertyInputs, there MUST be at least one
+   * item defined for the InputSet.
+   */
+  List<Property> getProperties();
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/OutputSet.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ParallelGateway.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ParallelGateway.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ParallelGateway.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,36 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * Parallel Gateway is required when two or more Activities need to be executed in parallel.  
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface ParallelGateway extends Gateway
+{
+
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ParallelGateway.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Participant.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Participant.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Participant.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,53 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+import org.jboss.bpm.model.Constants.ParticipantType;
+
+
+//$Id$
+
+/**
+ * A Participant, which is used in the definition of attributes for a Pool, {@link Message}, and WebService
+ * 
+ * TODO: Add javadoc links for Pool, WebService
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface Participant 
+{
+  /**
+   * Get the type of this participant
+   */
+  ParticipantType getParticipantType();
+
+  /**
+   * If the ParticipantType = Role, then a Role MUST be identified.
+   */
+  Role getRoleRef();
+
+  /**
+   * If the ParticipantType = Entity, then an Entity MUST be identified.
+   */
+  Entity getEntityRef();
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Participant.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,26 +23,23 @@
 
 //$Id: Process.java 1919 2008-08-18 10:40:03Z thomas.diesler at jboss.com $
 
+import java.util.List;
+
 import javax.management.ObjectName;
 
 import org.jboss.bpm.model.Constants.ProcessStatus;
-import org.jboss.bpm.ri.model.Activity;
+import org.jboss.bpm.model.Constants.ProcessType;
 import org.jboss.bpm.runtime.Attachments;
 
 /**
- * A Process is any {@link Activity} performed within a company or organization.
+ * A Process is any Activity performed within a company or organization.
  * 
  * @author thomas.diesler at jboss.com
  * @since 08-Jul-2008
  */
-public interface Process 
+public interface Process extends GraphicalElement, PropertySupport
 {
   /**
-   * Get the ID of this element
-   */
-  ObjectName getID();
-  
-  /**
    * Get the unique name.
    */
   String getName();
@@ -53,6 +50,69 @@
   ProcessStatus getProcessStatus();
   
   /**
+   * Get the process type
+   */
+  ProcessType getProcessType();
+
+  /**
+   * Get the list of flow objects
+   */
+  List<FlowObject> getFlowObjects();
+
+  /**
+   * Get a list of flow objects of a given type.
+   */
+  <T extends FlowObject> List<T> getFlowObjects(Class<T> clazz);
+
+  /**
+   * Get a flow object by name.
+   * @return null if not found
+   */
+  FlowObject getFlowObject(String name);
+  
+  /**
+   * One or more Performers MAY be entered. The Performers attribute defines the resource that will be responsible for
+   * the Process. The Performers entry could be in the form of a specific individual, a group, an organization role or
+   * position, or an organization.
+   */
+  List<String> getPerformers();
+
+  /**
+   * One or more assignment expressions MAY be made for the object. The Assignment SHALL be performed as defined by the
+   * AssignTime attribute.
+   */
+  List<Assignment> getAssignments();
+
+  /**
+   * The InputSets attribute defines the data requirements for input to the Process. Zero or more InputSets MAY be
+   * defined. Each Input set is sufficient to allow the Process to be performed (if it has first been instantiated by
+   * the appropriate signal arriving from an incoming Sequence Flow)
+   */
+  List<InputSet> getInputSets();
+
+  /**
+   * The OutputSets attribute defines the data requirements for output from the Process. Zero or more OutputSets MAY be
+   * defined. At the completion of the Process, only one of the OutputSets may be produced--It is up to the
+   * implementation of the Process to determine which set will be produced. However, the IORules attribute MAY indicate
+   * a relationship between an OutputSet and an InputSet that started the Process.
+   */
+  List<OutputSet> getOutputSets();
+
+  /**
+   * Get the list of associated {@link Message} objects.
+   * @return An empty list if there are none
+   */
+  List<Message> getMessages();
+
+  /**
+   * Get an associated {@link Message} by name.
+   * @return null if not found
+   */
+  Message getMessage(String msgName);
+
+  // Runtime Aspects ==================================================================================================== 
+  
+  /**
    * Start the process
    */
   ObjectName startProcess();

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Property.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Property.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Property.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,8 +21,6 @@
  */
 package org.jboss.bpm.model;
 
-import org.jboss.bpm.ri.model.Expression;
-import org.jboss.bpm.ri.model.SupportingElement;
 
 //$Id$
 
@@ -32,7 +30,7 @@
  * @author thomas.diesler at jboss.com
  * @since 21-Jul-2008
  */
-public interface Property extends SupportingElement
+public interface Property 
 {
   /**
    * Supported property types

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertyBuilder.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertyBuilder.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertyBuilder.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * A PropertyBuilder can be used to build a {@link Property} dynamically.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface PropertyBuilder
+{
+  /**
+   * Create a {@link Property} with a given name and value
+   */
+  Property newProperty(String name, Object value);
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertyBuilder.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertyBuilderFactory.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertyBuilderFactory.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertyBuilderFactory.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,64 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+//$Id$
+
+import org.jboss.bpm.client.ProcessEngine;
+import org.jboss.kernel.Kernel;
+import org.jboss.kernel.plugins.util.KernelLocator;
+import org.jboss.kernel.spi.registry.KernelRegistryEntry;
+
+/**
+ * A Factory for the {@link PropertyBuilder}.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public abstract class PropertyBuilderFactory
+{
+  /** The bean name - jBPMMessageBuilderFactory */
+  public static final String BEAN_NAME = "jBPMPropertyBuilderFactory";
+  
+  // Hide the constructor
+  protected PropertyBuilderFactory()
+  {
+  }
+  
+  /**
+   * Get a MessageBuilderFactory instance.
+   */
+  @SuppressWarnings("deprecation")
+  public static PropertyBuilderFactory newInstance()
+  {
+    // Make sure the engine is bootstrapped
+    ProcessEngine.locateProcessEngine();
+    Kernel kernel = KernelLocator.getKernel();
+    KernelRegistryEntry entry = kernel.getRegistry().getEntry(BEAN_NAME);
+    return (PropertyBuilderFactory)entry.getTarget();
+  }
+  
+  /**
+   * Get a {@link PropertyBuilder}.
+   */
+  public abstract PropertyBuilder newPropertyBuilder();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertyBuilderFactory.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertySupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertySupport.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertySupport.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,56 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+//$Id$
+
+import java.util.List;
+
+
+/**
+ * Property support
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface PropertySupport
+{
+  /**
+   * Get a Property with a given name. 
+   */
+  Property getProperty(String name);
+
+  /**
+   * Get a Property value with a given name. 
+   */
+  String getPropertyValue(String name);
+  
+  /**
+   * Multiple Properties MAY entered for the Message.
+   */
+  List<Property> getProperties();
+
+  /**
+   * Get the list of property names
+   */
+  List<String> getPropertyNames();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/PropertySupport.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ReceiveTask.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ReceiveTask.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ReceiveTask.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,59 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+import org.jboss.bpm.model.Message.Implementation;
+
+
+//$Id$
+
+/**
+ * A Receive Task is a simple Task that is designed to wait for a message to arrive from an external participant
+ * (relative to the Business Process). Once the message has been received, the Task is completed.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface ReceiveTask extends Task
+{
+  /**
+   * A Message for the MessageRef attribute MUST be entered. This indicates that the Message will be received by the
+   * Task. The Message in this context is equivalent to an in-only message pattern (Web service). One or more
+   * corresponding incoming Message Flows MAY be shown on the diagram. However, the display of the Message Flow is not
+   * required. The Message is applied to all incoming Message Flow, but can arrive for only one of the incoming Message
+   * Flow for a single instance of the Task.
+   */
+  Message getMessageRef();
+
+  /**
+   * Receive Tasks can be defined as the instantiation mechanism for the Process with the Instantiate attribute. This
+   * attribute MAY be set to true if the Task is the first activity after the Start Event or a starting Task if there is
+   * no Start Event (i.e., there are no incoming Sequence Flow). Multiple Tasks MAY have this attribute set to True.
+   */
+  boolean isInstantiate();
+
+  /**
+   * This attribute specifies the technology that will be used to send or receive the message. A Web service is the
+   * default technology.
+   */
+  Implementation getImplementation();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/ReceiveTask.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Role.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Role.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Role.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,40 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * A Role, which is used in the definition of attributes for a {@link Participant}
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface Role
+{
+  /**
+   * Name is an attribute that is text description of the Role.
+   */
+  String getName();
+
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Role.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SendTask.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SendTask.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SendTask.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,50 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+import org.jboss.bpm.model.Message.Implementation;
+
+
+
+//$Id$
+
+/**
+ * A Send Task.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface SendTask extends Task
+{
+  /**
+   * A Message for the MessageRef attribute MUST be entered. This indicates that the Message will be sent by the Task. The Message in this context is equivalent to an
+   * out-only message pattern (Web service). One or more corresponding outgoing Message Flow MAY be shown on the diagram. However, the display of the Message Flow is
+   * not required. The Message is applied to all outgoing Message Flow and the Message will be sent down all outgoing Message Flow at the completion of a single
+   * instance of the Task.
+   */
+  Message getMessageRef();
+
+  /**
+   * This attribute specifies the technology that will be used to send or receive the message. A Web service is the default technology.
+   */
+  Implementation getImplementation();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SendTask.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SequenceFlow.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SequenceFlow.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SequenceFlow.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,72 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * A Sequence Flow is used to show the order that activities will be performed in a Process. Each Flow has only one
+ * source and only one target. The source and target must be from the set of the following Flow Objects: Events (Start,
+ * Intermediate, and End), Activities (Task and Sub-Process), and Gateways. During performance (or simulation) of the
+ * process, a Token will leave the source Flow Object, traverse down the Sequence Flow, and enter the target Flow
+ * Object.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface SequenceFlow extends ConnectingObject
+{
+  /**
+   * The ConditionType
+   */
+  public enum ConditionType
+  {
+    None, Expression, Default
+  }
+
+  /**
+   * By default, the ConditionType of a Sequence Flow is None. This means that there is no evaluation at runtime to
+   * determine whether or not the Sequence Flow will be used. Once a Token is ready to traverse the Sequence Flow (i.e.,
+   * the Source is an activity that has completed), then the Token will do so. The normal, uncontrolled use of Sequence
+   * Flow, in a sequence of activities, will have a None ConditionType. A None ConditionType MUST NOT be used if the
+   * Source of the Sequence Flow is an Exclusive Data-Based or Inclusive Gateway. The ConditionType attribute MAY be set
+   * to Expression if the Source of the Sequence Flow is a Task, a Sub-Process, or a Gateway of type Exclusive-Data-
+   * Based or Inclusive. If the ConditionType attribute is set to Expression, then a condition marker SHALL be added to
+   * the line if the Sequence Flow is outgoing from an activity. However, a condition indicator MUST NOT be added to the
+   * line if the Sequence Flow is outgoing from a Gateway. An Expression ConditionType MUST NOT be used if the Source of
+   * the Sequence Flow is an Event-Based Exclusive Gateway, a Complex Gateway, a Parallel Gateway, a Start Event, or an
+   * Intermediate Event. In addition, an Expression ConditionType MUST NOT be used if the Sequence Flow is associated
+   * with the Default Gate of a Gateway. The ConditionType attribute MAY be set to Default only if the Source of the
+   * Sequence Flow is an activity or an Exclusive Data-Based Gateway.
+   */
+  ConditionType getConditionType();
+
+  /**
+   * If the ConditionType attribute is set to Expression, then the ConditionExpression attribute MUST be defined as a
+   * valid expression. The expression will be evaluated at runtime. If the result of the evaluation is TRUE, then a
+   * Token will be generated and will traverse the Sequence--Subject to any constraints imposed by a Source that is a
+   * Gateway.
+   */
+  Expression getConditionExpression();
+
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SequenceFlow.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SignalEventDetail.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SignalEventDetail.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SignalEventDetail.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,40 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * The Signal event detail
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 21-Jul-2008
+ */
+public interface SignalEventDetail extends EventDetail
+{
+  /**
+   * If the Trigger is a Signal, then a Signal Shall be entered.
+   */
+  Signal getSignalRef();
+
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SignalEventDetail.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+//$Id$
+
+/**
+ * Implementing {@link FlowObject} support a single incomming {@link ConnectingObject}.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface SingleInFlowSupport
+{
+  /**
+   * Get the out flow
+   */
+  ConnectingObject getInFlow();
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleOutFlowSupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleOutFlowSupport.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleOutFlowSupport.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,40 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+
+//$Id$
+
+/**
+ * Implementing {@link FlowObject}s support a single outgoing {@link ConnectingObject}s.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface SingleOutFlowSupport
+{
+  /**
+   * Get the out flow
+   */
+  SequenceFlow getOutFlow();
+}


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleOutFlowSupport.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,46 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+import java.util.List;
+
+//$Id$
+
+/**
+ * A Start Event indicates where a particular Process will start. <p/> In terms of Sequence Flow, the Start Event starts
+ * the Flow of the Process, and thus, will not have any incoming Sequence Flow. A Start Event can have a Trigger that
+ * indicates how the Process starts: Message, Timer, Rule, Link, or Multiple.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface StartEvent extends Event, SingleOutFlowSupport
+{
+  /**
+   * Trigger is an attribute that defines the type of trigger expected for a Start Event. Of the set of
+   * EventDetailTypes, only four (4) can be applied to a Start Event: Message, Timer, Conditional, and Signal. If there
+   * is no EventDetail defined, then this is considered a None Start Event and the Event will not have an internal
+   * marker. If there is more than one EventDetail defined, this is considered a Multiple Start Event
+   * and the Event will have the pentagon internal marker.
+   */
+  List<EventDetail> getTrigger();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,50 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.model;
+
+
+
+
+//$Id$
+
+/**
+ * A Task is an Atomic Activity that is included within a Process.
+ * 
+ * A Task is used when the work in the Process is not broken down to a finer level of Process Model detail. Generally, an end-user and/or an application are used to
+ * perform the Task when it is executed.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface Task extends Activity
+{
+  /**
+   * TaskType is an attribute that has a default of None, but MAY be set to Send,
+   * Receive, User, Script, Manual, Reference, or Service. The TaskType will be
+   * impacted by the Message Flow to and/or from the Task, if Message Flow are
+   * used. A TaskType of Receive MUST NOT have an outgoing Message Flow. A
+   * TaskType of Send MUST NOT have an incoming Message Flow. A TaskType of
+   * Script or Manual MUST NOT have an incoming or an outgoing Message Flow.
+   * The TaskType list MAY be extended to include new types.
+   */
+  Constants.TaskType getTaskType();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/TaskBuilder.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/TaskBuilder.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/model/TaskBuilder.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,14 +21,10 @@
  */
 package org.jboss.bpm.model;
 
-import org.jboss.bpm.ri.model.ActivityBuilder;
-import org.jboss.bpm.ri.model.Task;
+//$Id: $
 
-//$Id$
-
-
 /**
- * The TaskBuilder can be used to build a {@link Task} dynamically.
+ * The TaskBuilder can be used to build a Task dynamically.
  * 
  * @author thomas.diesler at jboss.com
  * @since 08-Jul-2008

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/ExecutionHandler.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/ExecutionHandler.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/ExecutionHandler.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,15 +21,12 @@
  */
 package org.jboss.bpm.runtime;
 
-//$Id$
+//$Id: $
 
-import org.jboss.bpm.client.ProcessEngine;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.runtime.Handler;
 
 /**
- * The {@link ProcessEngine} invokes the ExecutionHandler on a 
- * {@link FlowObject} to execute user provided business logic.
+ * The ProcessEngine invokes the ExecutionHandler on a 
+ * FlowObject to execute user provided business logic.
  * 
  * @author thomas.diesler at jboss.com
  * @since 08-Jul-2008

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/FlowHandler.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/FlowHandler.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/FlowHandler.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -24,9 +24,7 @@
 //$Id$
 
 import org.jboss.bpm.client.ProcessEngine;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.runtime.Handler;
-import org.jboss.bpm.ri.runtime.HandlerSupport;
+import org.jboss.bpm.model.FlowObject;
 
 /**
  * The {@link ProcessEngine} invokes the FlowHandler on an {@link HandlerSupport} 

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Handler.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Handler.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Handler.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,37 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.runtime;
+
+import java.io.Serializable;
+
+//$Id$
+
+/**
+ * The generic base for handlers that can be associated with a FlowObject.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface Handler extends Serializable
+{
+
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Handler.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/HandlerSupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/HandlerSupport.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/HandlerSupport.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,44 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.runtime;
+
+
+
+//$Id$
+
+/**
+ * A combined interface for execution aspects
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface HandlerSupport
+{
+  /** Get the associated ExecutionHandler */ 
+  ExecutionHandler getExecutionHandler();
+  
+  /** Get the associated SignalHandler */ 
+  SignalHandler getSignalHandler();
+  
+  /** Get the associated FlowHandler */ 
+  FlowHandler getFlowHandler();
+}
\ No newline at end of file


Property changes on: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/HandlerSupport.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/SignalHandler.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/SignalHandler.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/SignalHandler.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -24,10 +24,8 @@
 //$Id$
 
 import org.jboss.bpm.client.ProcessEngine;
+import org.jboss.bpm.model.FlowObject;
 import org.jboss.bpm.model.Signal;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.runtime.Handler;
-import org.jboss.bpm.ri.runtime.HandlerSupport;
 
 /**
  * The {@link ProcessEngine} invokes the SignalHandler on an {@link HandlerSupport} 

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Token.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Token.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/Token.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,10 +23,9 @@
 
 //$Id$
 
-import org.jboss.bpm.ri.model.Activity;
-import org.jboss.bpm.ri.model.InputSet;
-import org.jboss.bpm.ri.model.OutputSet;
-import org.jboss.bpm.ri.model.SequenceFlow;
+import org.jboss.bpm.model.InputSet;
+import org.jboss.bpm.model.OutputSet;
+import org.jboss.bpm.model.SequenceFlow;
 
 /**
  * A Token is a descriptive construct used to describe how the flow of a Process will proceed at runtime.
@@ -69,20 +68,20 @@
   
   /**
    * Get the active {@link InputSet}  
-   * @return null if the {@link Activity} does not define one
+   * @return null if the Activity does not define one
    */
   InputSet getInputSet();
   
   /**
    * Get the active {@link OutputSet}  
-   * @return null if the {@link Activity} does not define one
+   * @return null if the Activity does not define one
    */
   OutputSet getOutputSet();
   
   /**
    * Create a schallow copy of this Token.
    * <p/>
-   * The content in the {@link ExecutionContext} will be copied by reference. 
+   * The content in the ExecutionContext will be copied by reference. 
    */
   Token copyToken();
 

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/TokenExecutor.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/TokenExecutor.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/runtime/TokenExecutor.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,11 +21,11 @@
  */
 package org.jboss.bpm.runtime;
 
-//$Id$
+//$Id: $
 
 import java.util.Set;
 
-import org.jboss.bpm.ri.model.SequenceFlow;
+import org.jboss.bpm.model.SequenceFlow;
 
 /**
  * The {@link FlowHandler} invokes the TokenExecutor to move {@link Token}s

Modified: jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/test/AbstractAPITestCase.java
===================================================================
--- jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/test/AbstractAPITestCase.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/api/src/main/java/org/jboss/bpm/test/AbstractAPITestCase.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -44,15 +44,15 @@
 import org.jboss.bpm.client.DialectHandler;
 import org.jboss.bpm.client.MessageListener;
 import org.jboss.bpm.client.MessageManager;
-import org.jboss.bpm.client.ObjectNameFactory;
 import org.jboss.bpm.client.ProcessManager;
 import org.jboss.bpm.client.SignalListener;
 import org.jboss.bpm.client.SignalManager;
 import org.jboss.bpm.client.internal.EmbeddedBeansDeployer;
+import org.jboss.bpm.model.Constants;
 import org.jboss.bpm.model.Message;
+import org.jboss.bpm.model.ObjectNameFactory;
 import org.jboss.bpm.model.Process;
 import org.jboss.bpm.model.Signal;
-import org.jboss.bpm.ri.model.BPMNElement;
 
 public abstract class AbstractAPITestCase extends TestCase
 {
@@ -225,7 +225,7 @@
 
   public ObjectName getMessageListenerID()
   {
-    return ObjectNameFactory.create(BPMNElement.ID_DOMAIN, "msgListener", getShortName());
+    return ObjectNameFactory.create(Constants.ID_DOMAIN, "msgListener", getShortName());
   }
 
   public List<Message> getMessages()

Modified: jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessMarshaller.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessMarshaller.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessMarshaller.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -58,40 +58,40 @@
 import org.jboss.bpm.dialect.api10.model.JAXBStartEvent;
 import org.jboss.bpm.dialect.api10.model.JAXBTask;
 import org.jboss.bpm.dialect.api10.model.ObjectFactory;
+import org.jboss.bpm.model.Assignment;
+import org.jboss.bpm.model.ComplexGateway;
+import org.jboss.bpm.model.ConnectingObject;
 import org.jboss.bpm.model.Constants;
+import org.jboss.bpm.model.EndEvent;
+import org.jboss.bpm.model.Event;
+import org.jboss.bpm.model.EventDetail;
+import org.jboss.bpm.model.ExclusiveGateway;
+import org.jboss.bpm.model.Expression;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.Gate;
+import org.jboss.bpm.model.Gateway;
+import org.jboss.bpm.model.InclusiveGateway;
+import org.jboss.bpm.model.InputSet;
+import org.jboss.bpm.model.IntermediateEvent;
 import org.jboss.bpm.model.Message;
+import org.jboss.bpm.model.MessageEventDetail;
+import org.jboss.bpm.model.MessageFlow;
+import org.jboss.bpm.model.OutputSet;
+import org.jboss.bpm.model.ParallelGateway;
+import org.jboss.bpm.model.Participant;
+import org.jboss.bpm.model.Process;
 import org.jboss.bpm.model.Property;
+import org.jboss.bpm.model.ReceiveTask;
+import org.jboss.bpm.model.SendTask;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.model.Signal;
-import org.jboss.bpm.model.Process;
-import org.jboss.bpm.ri.model.Assignment;
-import org.jboss.bpm.ri.model.ComplexGateway;
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.EndEvent;
-import org.jboss.bpm.ri.model.Event;
-import org.jboss.bpm.ri.model.EventDetail;
-import org.jboss.bpm.ri.model.ExclusiveGateway;
-import org.jboss.bpm.ri.model.Expression;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.Gate;
-import org.jboss.bpm.ri.model.Gateway;
-import org.jboss.bpm.ri.model.InclusiveGateway;
-import org.jboss.bpm.ri.model.InputSet;
-import org.jboss.bpm.ri.model.IntermediateEvent;
-import org.jboss.bpm.ri.model.MessageEventDetail;
-import org.jboss.bpm.ri.model.MessageFlow;
-import org.jboss.bpm.ri.model.OutputSet;
-import org.jboss.bpm.ri.model.ParallelGateway;
-import org.jboss.bpm.ri.model.Participant;
-import org.jboss.bpm.ri.model.ReceiveTask;
-import org.jboss.bpm.ri.model.SendTask;
-import org.jboss.bpm.ri.model.SequenceFlow;
-import org.jboss.bpm.ri.model.SignalEventDetail;
-import org.jboss.bpm.ri.model.StartEvent;
-import org.jboss.bpm.ri.model.Task;
-import org.jboss.bpm.ri.model.SequenceFlow.ConditionType;
-import org.jboss.bpm.ri.runtime.HandlerSupport;
+import org.jboss.bpm.model.SignalEventDetail;
+import org.jboss.bpm.model.StartEvent;
+import org.jboss.bpm.model.Task;
+import org.jboss.bpm.model.SequenceFlow.ConditionType;
 import org.jboss.bpm.runtime.ExecutionHandler;
 import org.jboss.bpm.runtime.FlowHandler;
+import org.jboss.bpm.runtime.HandlerSupport;
 import org.jboss.bpm.runtime.SignalHandler;
 
 /**
@@ -104,7 +104,7 @@
 {
   public void marshallProcess(Process proc, Writer out) throws JAXBException, IOException
   {
-    JAXBProcess jaxbProc = adaptProcess((org.jboss.bpm.ri.model.ProcessModel)proc);
+    JAXBProcess jaxbProc = adaptProcess(proc);
     JAXBContext jaxbContext = JAXBContext.newInstance(ObjectFactory.class);
     Marshaller marshaller = jaxbContext.createMarshaller();
     marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
@@ -113,7 +113,7 @@
     marshaller.marshal(jaxbProc, out);
   }
 
-  private JAXBProcess adaptProcess(org.jboss.bpm.ri.model.ProcessModel proc)
+  private JAXBProcess adaptProcess(Process proc)
   {
     JAXBProcess jaxbProc = new JAXBProcess();
     jaxbProc.setName(proc.getName());

Modified: jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessUnmarshaller.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessUnmarshaller.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/ProcessUnmarshaller.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -37,7 +37,6 @@
 import org.jboss.bpm.InvalidProcessException;
 import org.jboss.bpm.NotImplementedException;
 import org.jboss.bpm.client.DialectHandler;
-import org.jboss.bpm.client.ObjectNameFactory;
 import org.jboss.bpm.client.ProcessManager;
 import org.jboss.bpm.dialect.api10.model.JAXBAssignment;
 import org.jboss.bpm.dialect.api10.model.JAXBCancelEventDetail;
@@ -78,12 +77,13 @@
 import org.jboss.bpm.model.EventBuilder;
 import org.jboss.bpm.model.GatewayBuilder;
 import org.jboss.bpm.model.MessageBuilder;
+import org.jboss.bpm.model.ObjectNameFactory;
 import org.jboss.bpm.model.Process;
 import org.jboss.bpm.model.ProcessBuilder;
 import org.jboss.bpm.model.ProcessBuilderFactory;
 import org.jboss.bpm.model.TaskBuilder;
-import org.jboss.bpm.ri.model.SequenceFlow.ConditionType;
-import org.jboss.bpm.ri.runtime.Handler;
+import org.jboss.bpm.model.SequenceFlow.ConditionType;
+import org.jboss.bpm.runtime.Handler;
 
 /**
  * A JAXB unmarshaller for a Process

Modified: jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBAssignment.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBAssignment.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBAssignment.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -27,16 +27,11 @@
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlType;
 
-import org.jboss.bpm.model.Process;
 import org.jboss.bpm.model.Constants.AssignTime;
-import org.jboss.bpm.ri.model.Activity;
-import org.jboss.bpm.ri.model.Event;
-import org.jboss.bpm.ri.model.Gate;
-import org.jboss.bpm.ri.model.Gateway;
 
 /**
- * An Assignment, which is used in the definition of attributes for {@link Process},
- * {@link Activity}, {@link Event}, {@link Gateway}, and {@link Gate}.
+ * An Assignment, which is used in the definition of attributes for Process,
+ * Activity, Event, Gateway, and Gate.
  * 
  * @author thomas.diesler at jboss.com
  * @since 08-Jul-2008

Modified: jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBSequenceFlow.java
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBSequenceFlow.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/main/java/org/jboss/bpm/dialect/api10/model/JAXBSequenceFlow.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -27,7 +27,7 @@
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlType;
 
-import org.jboss.bpm.ri.model.SequenceFlow.ConditionType;
+import org.jboss.bpm.model.SequenceFlow.ConditionType;
 
 /**
  * A Sequence Flow is a solid graphical line that is used to show the order that Activities will be performed in a Process. 

Modified: jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/jbpm-beans.xml
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/jbpm-beans.xml	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/dialects/api10/src/test/resources/jbpm-beans.xml	2008-08-19 10:45:22 UTC (rev 1928)
@@ -4,12 +4,12 @@
   <bean name="KernelLocator" class="org.jboss.kernel.plugins.util.KernelLocator"/>
   
   <!-- The Builder Factories -->
-  <bean name="jBPMProcessBuilderFactory" class="org.jboss.bpm.model.internal.ProcessBuilderFactoryImpl"/>
-  <bean name="jBPMMessageBuilderFactory" class="org.jboss.bpm.model.internal.MessageBuilderFactoryImpl"/>
-  <bean name="jBPMPropertyBuilderFactory" class="org.jboss.bpm.model.internal.PropertyBuilderFactoryImpl"/>
+  <bean name="jBPMProcessBuilderFactory" class="org.jboss.bpm.ri.model.impl.ProcessBuilderFactoryImpl"/>
+  <bean name="jBPMMessageBuilderFactory" class="org.jboss.bpm.ri.model.impl.MessageBuilderFactoryImpl"/>
+  <bean name="jBPMPropertyBuilderFactory" class="org.jboss.bpm.ri.model.impl.PropertyBuilderFactoryImpl"/>
   
   <!-- The ProcessEngine -->
-  <bean name="jBPMProcessEngine" class="org.jboss.bpm.client.internal.ProcessEngineImpl">
+  <bean name="jBPMProcessEngine" class="org.jboss.bpm.ri.client.ProcessEngineImpl">
     <property name="processManager"><inject bean="jBPMProcessManager"/></property>
     <property name="executionManager"><inject bean="jBPMExecutionManager"/></property>
     <property name="signalManager"><inject bean="jBPMSignalManager"/></property>
@@ -17,12 +17,12 @@
   </bean>
 
   <!-- The Managers -->
-  <bean name="jBPMExecutionManager" class="org.jboss.bpm.client.internal.ExecutionManagerImpl"/>
-  <bean name="jBPMSignalManager" class="org.jboss.bpm.client.internal.SignalManagerImpl"/>
-  <bean name="jBPMMessageManager" class="org.jboss.bpm.client.internal.MessageManagerImpl"/>
+  <bean name="jBPMExecutionManager" class="org.jboss.bpm.ri.client.ExecutionManagerImpl"/>
+  <bean name="jBPMSignalManager" class="org.jboss.bpm.ri.client.SignalManagerImpl"/>
+  <bean name="jBPMMessageManager" class="org.jboss.bpm.ri.client.MessageManagerImpl"/>
   
   <!-- The ProcessManager -->
-  <bean name="jBPMProcessManager" class="org.jboss.bpm.client.internal.ProcessManagerImpl">
+  <bean name="jBPMProcessManager" class="org.jboss.bpm.ri.client.ProcessManagerImpl">
     <property name="dialectRegistry"><inject bean="jBPMDialectRegistry"/></property>
     <property name="dialectHandlers">
       <map keyClass="java.lang.String" valueClass="org.jboss.bpm.client.DialectHandler">

Modified: jbossbpm/spec/trunk/modules/dialects/stp/src/test/resources/jbpm-beans.xml
===================================================================
--- jbossbpm/spec/trunk/modules/dialects/stp/src/test/resources/jbpm-beans.xml	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/dialects/stp/src/test/resources/jbpm-beans.xml	2008-08-19 10:45:22 UTC (rev 1928)
@@ -3,11 +3,13 @@
   <!-- The KernelLocator -->
   <bean name="KernelLocator" class="org.jboss.kernel.plugins.util.KernelLocator"/>
   
-  <!-- The ProcessBuilderFactory -->
-  <bean name="jBPMProcessBuilderFactory" class="org.jboss.bpm.model.internal.ProcessBuilderFactoryImpl"/>
+  <!-- The Builder Factories -->
+  <bean name="jBPMProcessBuilderFactory" class="org.jboss.bpm.ri.model.impl.ProcessBuilderFactoryImpl"/>
+  <bean name="jBPMMessageBuilderFactory" class="org.jboss.bpm.ri.model.impl.MessageBuilderFactoryImpl"/>
+  <bean name="jBPMPropertyBuilderFactory" class="org.jboss.bpm.ri.model.impl.PropertyBuilderFactoryImpl"/>
   
   <!-- The ProcessEngine -->
-  <bean name="jBPMProcessEngine" class="org.jboss.bpm.client.internal.ProcessEngineImpl">
+  <bean name="jBPMProcessEngine" class="org.jboss.bpm.ri.client.ProcessEngineImpl">
     <property name="processManager"><inject bean="jBPMProcessManager"/></property>
     <property name="executionManager"><inject bean="jBPMExecutionManager"/></property>
     <property name="signalManager"><inject bean="jBPMSignalManager"/></property>
@@ -15,12 +17,12 @@
   </bean>
 
   <!-- The Managers -->
-  <bean name="jBPMExecutionManager" class="org.jboss.bpm.client.internal.ExecutionManagerImpl"/>
-  <bean name="jBPMSignalManager" class="org.jboss.bpm.client.internal.SignalManagerImpl"/>
-  <bean name="jBPMMessageManager" class="org.jboss.bpm.client.internal.MessageManagerImpl"/>
+  <bean name="jBPMExecutionManager" class="org.jboss.bpm.ri.client.ExecutionManagerImpl"/>
+  <bean name="jBPMSignalManager" class="org.jboss.bpm.ri.client.SignalManagerImpl"/>
+  <bean name="jBPMMessageManager" class="org.jboss.bpm.ri.client.MessageManagerImpl"/>
   
   <!-- The ProcessManager -->
-  <bean name="jBPMProcessManager" class="org.jboss.bpm.client.internal.ProcessManagerImpl">
+  <bean name="jBPMProcessManager" class="org.jboss.bpm.ri.client.ProcessManagerImpl">
     <property name="dialectRegistry"><inject bean="jBPMDialectRegistry"/></property>
     <property name="dialectHandlers">
       <map keyClass="java.lang.String" valueClass="org.jboss.bpm.client.DialectHandler">

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/ExecutionManagerImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/ExecutionManagerImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/ExecutionManagerImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,20 +23,25 @@
 
 // $Id$
 
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.management.ObjectName;
+
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.jboss.bpm.InvalidProcessException;
 import org.jboss.bpm.client.ExecutionManager;
 import org.jboss.bpm.client.ProcessManager;
 import org.jboss.bpm.client.SignalManager;
+import org.jboss.bpm.model.Assignment;
 import org.jboss.bpm.model.Constants;
+import org.jboss.bpm.model.Expression;
 import org.jboss.bpm.model.Process;
 import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.StartEvent;
 import org.jboss.bpm.model.Constants.AssignTime;
 import org.jboss.bpm.model.Signal.SignalType;
-import org.jboss.bpm.ri.model.Assignment;
-import org.jboss.bpm.ri.model.Expression;
-import org.jboss.bpm.ri.model.StartEvent;
 import org.jboss.bpm.ri.model.impl.ExpressionEvaluator;
 import org.jboss.bpm.ri.model.impl.ProcessImpl;
 import org.jboss.bpm.ri.model.impl.RuntimeProcessImpl;
@@ -44,8 +49,8 @@
 import org.jboss.bpm.ri.model.impl.TokenExecutorImpl;
 import org.jboss.bpm.ri.runtime.DelegatingToken;
 import org.jboss.bpm.ri.runtime.MutableToken;
-import org.jboss.bpm.ri.runtime.RuntimeProcess;
 import org.jboss.bpm.ri.runtime.TokenImpl;
+import org.jboss.bpm.ri.runtime.spec.RuntimeProcess;
 import org.jboss.bpm.runtime.Attachments;
 import org.jboss.bpm.runtime.ExecutionContext;
 import org.jboss.bpm.runtime.Token;
@@ -62,6 +67,9 @@
   // provide logging
   private static final Log log = LogFactory.getLog(ExecutionManager.class);
 
+  // The map of active runtime processes
+  private Map<ObjectName, RuntimeProcess> runtimeProcesses = new HashMap<ObjectName, RuntimeProcess>();
+  
   @Override
   public void startProcess(final Process proc, final Attachments att)
   {
@@ -143,6 +151,26 @@
     }
   }
 
+  /**
+   * Get a {@link RuntimeProcess} for a given processID
+   * @return null if there is no such process
+   */
+  public RuntimeProcess getRuntimeProcess(ObjectName procID)
+  {
+    return runtimeProcesses.get(procID);
+  }
+  
+  protected void addRuntimeProcess(RuntimeProcess rtProc)
+  {
+    ObjectName procID = rtProc.getProcess().getID();
+    runtimeProcesses.put(procID, rtProc);
+  }
+  
+  protected void removeRuntimeProcess(RuntimeProcess rtProc)
+  {
+    runtimeProcesses.remove(rtProc.getProcess().getID());
+  }
+  
   class RunnableProcess implements Runnable
   {
     RuntimeProcess rtProc;

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/MessageManagerImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/MessageManagerImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/MessageManagerImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -30,11 +30,11 @@
 import org.jboss.bpm.client.MessageListener;
 import org.jboss.bpm.client.MessageManager;
 import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Event;
+import org.jboss.bpm.model.FlowObject;
 import org.jboss.bpm.model.Message;
 import org.jboss.bpm.model.Process;
-import org.jboss.bpm.ri.model.Event;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.Task;
+import org.jboss.bpm.model.Task;
 import org.jboss.bpm.ri.model.impl.ProcessImpl;
 
 /**

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/RunnableToken.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/RunnableToken.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/client/RunnableToken.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -25,15 +25,15 @@
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.jboss.bpm.model.ConnectingObject;
 import org.jboss.bpm.model.Constants;
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.FlowObject;
+import org.jboss.bpm.model.FlowObject;
 import org.jboss.bpm.ri.model.impl.FlowObjectImpl;
 import org.jboss.bpm.ri.model.impl.ProcessImpl;
 import org.jboss.bpm.ri.runtime.DelegatingToken;
-import org.jboss.bpm.ri.runtime.HandlerSupport;
 import org.jboss.bpm.ri.runtime.MutableToken;
-import org.jboss.bpm.ri.runtime.RuntimeProcess;
+import org.jboss.bpm.ri.runtime.spec.RuntimeProcess;
+import org.jboss.bpm.runtime.HandlerSupport;
 import org.jboss.bpm.runtime.SignalHandler;
 import org.jboss.bpm.runtime.Token;
 import org.jboss.bpm.runtime.TokenExecutor;

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityBuilderImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityBuilderImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityBuilderImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,10 +23,10 @@
 
 //$Id$
 
+import org.jboss.bpm.model.Activity;
+import org.jboss.bpm.model.ActivityBuilder;
 import org.jboss.bpm.model.Property;
 import org.jboss.bpm.model.Constants.ExpressionLanguage;
-import org.jboss.bpm.ri.model.Activity;
-import org.jboss.bpm.ri.model.ActivityBuilder;
 
 /**
  * The ActivityBuilder can be used to build an {@link Activity} dynamically.

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ActivityImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -29,15 +29,14 @@
 
 import org.jboss.bpm.InvalidProcessException;
 import org.jboss.bpm.NotImplementedException;
+import org.jboss.bpm.model.Activity;
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.Expression;
+import org.jboss.bpm.model.InputSet;
+import org.jboss.bpm.model.MutablePropertySupport;
+import org.jboss.bpm.model.OutputSet;
 import org.jboss.bpm.model.Property;
-import org.jboss.bpm.ri.model.Activity;
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.Expression;
-import org.jboss.bpm.ri.model.InputSet;
-import org.jboss.bpm.ri.model.OutputSet;
-import org.jboss.bpm.ri.model.ProcessModel;
-import org.jboss.bpm.ri.model.SequenceFlow;
-import org.jboss.bpm.ri.runtime.MutablePropertySupport;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.ri.runtime.MutableToken;
 import org.jboss.bpm.runtime.ExecutionContext;
 import org.jboss.bpm.runtime.Token;
@@ -294,7 +293,7 @@
   }
 
   @Override
-  protected void initialize(ProcessModel proc)
+  protected void initialize(ProcessImpl proc)
   {
     super.initialize(proc);
 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/AssignmentImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/AssignmentImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/AssignmentImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,10 +23,10 @@
 
 //$Id$
 
+import org.jboss.bpm.model.Assignment;
+import org.jboss.bpm.model.Expression;
 import org.jboss.bpm.model.Property;
 import org.jboss.bpm.model.Constants.AssignTime;
-import org.jboss.bpm.ri.model.Assignment;
-import org.jboss.bpm.ri.model.Expression;
 
 /**
  * An Assignment, which is used in the definition of attributes for Process, Activities, Events, Gateways, and Gates.

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/BPMNElementImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/BPMNElementImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/BPMNElementImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -25,13 +25,14 @@
 
 import javax.management.ObjectName;
 
-import org.jboss.bpm.client.ObjectNameFactory;
-import org.jboss.bpm.ri.model.BPMNElement;
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.Event;
-import org.jboss.bpm.ri.model.Gateway;
-import org.jboss.bpm.ri.model.ProcessModel;
-import org.jboss.bpm.ri.model.Task;
+import org.jboss.bpm.model.AbstractElement;
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.Constants;
+import org.jboss.bpm.model.Event;
+import org.jboss.bpm.model.Gateway;
+import org.jboss.bpm.model.ObjectNameFactory;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.Task;
 import org.jboss.util.id.UID;
 
 /**
@@ -40,7 +41,7 @@
  * @since 08-Jul-2008
  */
 @SuppressWarnings("serial")
-public class BPMNElementImpl implements BPMNElement
+public class BPMNElementImpl implements AbstractElement
 {
   private ObjectName id;
 
@@ -52,22 +53,22 @@
   /**
    * Initialize the flow object
    */
-  protected void initialize(ProcessModel proc)
+  protected void initialize(ProcessImpl proc)
   {
     assignElementID();
   }
 
   protected void assignElementID()
   {
-    StringBuilder str = new StringBuilder(ID_DOMAIN + ":");
+    StringBuilder str = new StringBuilder(Constants.ID_DOMAIN + ":");
     if (this instanceof Event)
     {
       Event event = (Event)this;
       str.append("type=Event,name=" + event.getName());
     }
-    else if (this instanceof ProcessModel)
+    else if (this instanceof Process)
     {
-      ProcessModel proc = (ProcessModel)this;
+      Process proc = (Process)this;
       str.append("type=Process,name=" + proc.getName());
     }
     else if (this instanceof Task)

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ComplexGatewayImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ComplexGatewayImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ComplexGatewayImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -24,9 +24,9 @@
 //$Id$
 
 import org.jboss.bpm.NotImplementedException;
+import org.jboss.bpm.model.ComplexGateway;
+import org.jboss.bpm.model.Expression;
 import org.jboss.bpm.model.Constants.GatewayType;
-import org.jboss.bpm.ri.model.ComplexGateway;
-import org.jboss.bpm.ri.model.Expression;
 import org.jboss.bpm.runtime.Token;
 import org.jboss.bpm.runtime.TokenExecutor;
 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EndEventImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EndEventImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EndEventImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -30,13 +30,12 @@
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.jboss.bpm.client.SignalManager;
+import org.jboss.bpm.model.EndEvent;
+import org.jboss.bpm.model.EventDetail;
+import org.jboss.bpm.model.MessageEventDetail;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.model.Signal;
 import org.jboss.bpm.model.Constants.EventDetailType;
-import org.jboss.bpm.ri.model.EndEvent;
-import org.jboss.bpm.ri.model.EventDetail;
-import org.jboss.bpm.ri.model.MessageEventDetail;
-import org.jboss.bpm.ri.model.ProcessModel;
-import org.jboss.bpm.ri.model.SequenceFlow;
 import org.jboss.bpm.runtime.SignalHandler;
 import org.jboss.bpm.runtime.Token;
 import org.jboss.bpm.runtime.TokenExecutor;
@@ -135,7 +134,7 @@
   }
 
   @Override
-  protected void initialize(ProcessModel proc)
+  protected void initialize(ProcessImpl proc)
   {
     super.initialize(proc);
     

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EntityImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EntityImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EntityImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,7 +21,8 @@
  */
 package org.jboss.bpm.ri.model.impl;
 
-import org.jboss.bpm.ri.model.Entity;
+import org.jboss.bpm.model.Constants;
+import org.jboss.bpm.model.Entity;
 
 //$Id$
 
@@ -42,9 +43,9 @@
     this.entityRef = this;
   }
 
-  public ParticipantType getParticipantType()
+  public Constants.ParticipantType getParticipantType()
   {
-    return ParticipantType.Entity;
+    return Constants.ParticipantType.Entity;
   }
   
   public String getName()

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventBuilderImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventBuilderImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventBuilderImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -24,15 +24,15 @@
 //$Id$
 
 import org.jboss.bpm.NotImplementedException;
+import org.jboss.bpm.model.EndEvent;
+import org.jboss.bpm.model.Event;
 import org.jboss.bpm.model.EventBuilder;
+import org.jboss.bpm.model.EventDetail;
+import org.jboss.bpm.model.IntermediateEvent;
 import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.StartEvent;
 import org.jboss.bpm.model.Constants.EventDetailType;
 import org.jboss.bpm.model.Signal.SignalType;
-import org.jboss.bpm.ri.model.EndEvent;
-import org.jboss.bpm.ri.model.Event;
-import org.jboss.bpm.ri.model.EventDetail;
-import org.jboss.bpm.ri.model.IntermediateEvent;
-import org.jboss.bpm.ri.model.StartEvent;
 
 /**
  * The EventBuilder can be used to build an {@link Event} dynamically.

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventDetailImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventDetailImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventDetailImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,8 +23,8 @@
 
 //$Id$
 
-import org.jboss.bpm.ri.model.Event;
-import org.jboss.bpm.ri.model.EventDetail;
+import org.jboss.bpm.model.Event;
+import org.jboss.bpm.model.EventDetail;
 
 /**
  * The base of all supported event details. 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/EventImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,7 +21,7 @@
  */
 package org.jboss.bpm.ri.model.impl;
 
-import org.jboss.bpm.ri.model.Event;
+import org.jboss.bpm.model.Event;
 
 //$Id$
 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExclusiveGatewayDataBasedImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExclusiveGatewayDataBasedImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExclusiveGatewayDataBasedImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,7 +23,7 @@
 
 //$Id$
 
-import org.jboss.bpm.ri.model.ExclusiveGatewayDataBased;
+import org.jboss.bpm.ri.model.spec.ExclusiveGatewayDataBased;
 
 /**
  * A point in the workflow process where, based on a decision or workflow control data, one of several branches is chosen. 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExclusiveGatewayImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExclusiveGatewayImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExclusiveGatewayImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -28,14 +28,14 @@
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.ExclusiveGateway;
+import org.jboss.bpm.model.Expression;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.Gate;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.model.Constants.GatewayType;
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.ExclusiveGateway;
-import org.jboss.bpm.ri.model.Expression;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.Gate;
-import org.jboss.bpm.ri.model.SequenceFlow;
-import org.jboss.bpm.ri.model.SequenceFlow.ConditionType;
+import org.jboss.bpm.model.SequenceFlow.ConditionType;
 import org.jboss.bpm.runtime.Token;
 import org.jboss.bpm.runtime.TokenExecutor;
 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExpressionEvaluator.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExpressionEvaluator.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExpressionEvaluator.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -26,8 +26,8 @@
 import java.util.HashMap;
 import java.util.Map;
 
+import org.jboss.bpm.model.Expression;
 import org.jboss.bpm.model.Constants.ExpressionLanguage;
-import org.jboss.bpm.ri.model.Expression;
 import org.jboss.bpm.runtime.ExecutionContext;
 import org.jboss.bpm.runtime.Token;
 import org.jboss.bpm.runtime.Attachments.Key;

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExpressionImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExpressionImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ExpressionImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,8 +23,8 @@
 
 //$Id$
 
+import org.jboss.bpm.model.Expression;
 import org.jboss.bpm.model.Constants.ExpressionLanguage;
-import org.jboss.bpm.ri.model.Expression;
 
 /**
  * An Expression, which is used in the definition of attributes for @{link StartEvent},

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,8 +23,8 @@
 
 //$Id$
 
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.FlowObject;
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.FlowObject;
 
 /**
  * A Flow is a graphical line connecting two objects in a BPD. There are two types of Flow: Sequence Flow and Message Flow, each with their own line style. Flow is also

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowObjectImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowObjectImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/FlowObjectImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -27,18 +27,18 @@
 
 import org.jboss.bpm.InvalidProcessException;
 import org.jboss.bpm.NameNotUniqueException;
+import org.jboss.bpm.model.Assignment;
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.Expression;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.Gate;
+import org.jboss.bpm.model.Gateway;
+import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.SingleInFlowSupport;
+import org.jboss.bpm.model.SingleOutFlowSupport;
 import org.jboss.bpm.model.Constants.AssignTime;
-import org.jboss.bpm.ri.model.Assignment;
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.Expression;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.Gate;
-import org.jboss.bpm.ri.model.Gateway;
-import org.jboss.bpm.ri.model.MultipleInFlowSupport;
-import org.jboss.bpm.ri.model.MultipleOutFlowSupport;
-import org.jboss.bpm.ri.model.ProcessModel;
-import org.jboss.bpm.ri.model.SingleInFlowSupport;
-import org.jboss.bpm.ri.model.SingleOutFlowSupport;
+import org.jboss.bpm.ri.model.spec.MultipleInFlowSupport;
+import org.jboss.bpm.ri.model.spec.MultipleOutFlowSupport;
 import org.jboss.bpm.runtime.ExecutionContext;
 import org.jboss.bpm.runtime.ExecutionHandler;
 import org.jboss.bpm.runtime.FlowHandler;
@@ -58,7 +58,7 @@
 public abstract class FlowObjectImpl extends GraphicalElementImpl implements FlowObject, HandlerSetterSupport
 {
   private String name;
-  private ProcessModel proc;
+  private ProcessImpl proc;
   private FlowHandler flowHandler;
   private SignalHandler signalHandler;
   private ExecutionHandler executionHandler;
@@ -69,7 +69,7 @@
     this.name = name;
   }
 
-  public ProcessModel getProcess()
+  public Process getProcess()
   {
     return proc;
   }
@@ -204,7 +204,7 @@
   }
 
   @Override
-  protected void initialize(ProcessModel proc)
+  protected void initialize(ProcessImpl proc)
   {
     super.initialize(proc);
     this.proc = proc;
@@ -267,7 +267,7 @@
       throw new InvalidProcessException("Unconnected flow object: " + this);
   }
 
-  private void initFlow(ProcessModel proc, SequenceFlowImpl flow)
+  private void initFlow(Process proc, SequenceFlowImpl flow)
   {
     if (flow != null)
     {

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GateImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GateImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GateImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -26,12 +26,12 @@
 import java.util.List;
 
 import org.jboss.bpm.NotImplementedException;
-import org.jboss.bpm.ri.model.Assignment;
-import org.jboss.bpm.ri.model.Expression;
-import org.jboss.bpm.ri.model.Gate;
-import org.jboss.bpm.ri.model.Gateway;
-import org.jboss.bpm.ri.model.SequenceFlow;
-import org.jboss.bpm.ri.model.SequenceFlow.ConditionType;
+import org.jboss.bpm.model.Assignment;
+import org.jboss.bpm.model.Expression;
+import org.jboss.bpm.model.Gate;
+import org.jboss.bpm.model.Gateway;
+import org.jboss.bpm.model.SequenceFlow;
+import org.jboss.bpm.model.SequenceFlow.ConditionType;
 
 /**
  * A {@link Gate} associated with a {@link Gateway}.

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayBuilderImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayBuilderImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayBuilderImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,11 +23,11 @@
 
 //$Id$
 
+import org.jboss.bpm.model.Gate;
+import org.jboss.bpm.model.Gateway;
 import org.jboss.bpm.model.GatewayBuilder;
 import org.jboss.bpm.model.Constants.ExpressionLanguage;
-import org.jboss.bpm.ri.model.Gate;
-import org.jboss.bpm.ri.model.Gateway;
-import org.jboss.bpm.ri.model.SequenceFlow.ConditionType;
+import org.jboss.bpm.model.SequenceFlow.ConditionType;
 
 /**
  * The GatewayBuilder can be used to build a {@link Gateway} dynamically.

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GatewayImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -30,12 +30,12 @@
 import java.util.Map;
 
 import org.jboss.bpm.client.SignalManager;
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.Gate;
+import org.jboss.bpm.model.Gateway;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.model.Signal;
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.Gate;
-import org.jboss.bpm.ri.model.Gateway;
-import org.jboss.bpm.ri.model.SequenceFlow;
-import org.jboss.bpm.ri.model.SequenceFlow.ConditionType;
+import org.jboss.bpm.model.SequenceFlow.ConditionType;
 import org.jboss.bpm.runtime.ExecutionHandler;
 import org.jboss.bpm.runtime.SignalHandler;
 import org.jboss.bpm.runtime.Token;

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GraphicalElementImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GraphicalElementImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/GraphicalElementImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,7 +23,7 @@
 
 //$Id$
 
-import org.jboss.bpm.ri.model.GraphicalElement;
+import org.jboss.bpm.model.GraphicalElement;
 
 /**
  * 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/HandlerImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/HandlerImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/HandlerImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -24,7 +24,7 @@
 //$Id$
 
 import org.jboss.bpm.NotImplementedException;
-import org.jboss.bpm.ri.runtime.Handler;
+import org.jboss.bpm.runtime.Handler;
 
 /**
  * Base implementation of all handlers

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/HandlerSetterSupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/HandlerSetterSupport.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/HandlerSetterSupport.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,9 +21,9 @@
  */
 package org.jboss.bpm.ri.model.impl;
 
-import org.jboss.bpm.ri.runtime.HandlerSupport;
 import org.jboss.bpm.runtime.ExecutionHandler;
 import org.jboss.bpm.runtime.FlowHandler;
+import org.jboss.bpm.runtime.HandlerSupport;
 import org.jboss.bpm.runtime.SignalHandler;
 
 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/InclusiveGatewayImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/InclusiveGatewayImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/InclusiveGatewayImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -30,14 +30,14 @@
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.jboss.bpm.model.Expression;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.Gate;
+import org.jboss.bpm.model.InclusiveGateway;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.model.Constants.ExpressionLanguage;
 import org.jboss.bpm.model.Constants.GatewayType;
-import org.jboss.bpm.ri.model.Expression;
-import org.jboss.bpm.ri.model.Gate;
-import org.jboss.bpm.ri.model.GraphicalElement;
-import org.jboss.bpm.ri.model.InclusiveGateway;
-import org.jboss.bpm.ri.model.SequenceFlow;
-import org.jboss.bpm.ri.model.SequenceFlow.ConditionType;
+import org.jboss.bpm.model.SequenceFlow.ConditionType;
 import org.jboss.bpm.runtime.ExecutionContext;
 import org.jboss.bpm.runtime.Token;
 import org.jboss.bpm.runtime.TokenExecutor;
@@ -71,7 +71,7 @@
   @Override
   protected void defaultFlowHandler(TokenExecutor tokenExecutor, Token token)
   {
-    GraphicalElement sourceRef = token.getFlow().getSourceRef();
+    FlowObject sourceRef = token.getFlow().getSourceRef();
     log.debug("Propagate token comming from: " + sourceRef);
     
     // Get the applicable gates

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/InputSetImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/InputSetImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/InputSetImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -29,10 +29,10 @@
 import java.util.List;
 import java.util.Map;
 
+import org.jboss.bpm.model.ArtifactInput;
+import org.jboss.bpm.model.InputSet;
+import org.jboss.bpm.model.MutablePropertySupport;
 import org.jboss.bpm.model.Property;
-import org.jboss.bpm.ri.model.ArtifactInput;
-import org.jboss.bpm.ri.model.InputSet;
-import org.jboss.bpm.ri.runtime.MutablePropertySupport;
 
 /**
  * An InputSet, which is used in the definition of common attributes for Activities and for attributes of a Process

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/IntermediateEventImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/IntermediateEventImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/IntermediateEventImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -28,11 +28,11 @@
 import java.util.List;
 
 import org.jboss.bpm.client.SignalManager;
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.EventDetail;
+import org.jboss.bpm.model.IntermediateEvent;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.model.Signal;
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.EventDetail;
-import org.jboss.bpm.ri.model.IntermediateEvent;
-import org.jboss.bpm.ri.model.SequenceFlow;
 import org.jboss.bpm.runtime.SignalHandler;
 import org.jboss.bpm.runtime.Token;
 import org.jboss.bpm.runtime.TokenExecutor;

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageEventDetailImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageEventDetailImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageEventDetailImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,10 +23,10 @@
 
 //$Id$
 
+import org.jboss.bpm.model.Event;
 import org.jboss.bpm.model.Message;
+import org.jboss.bpm.model.MessageEventDetail;
 import org.jboss.bpm.model.Constants.EventDetailType;
-import org.jboss.bpm.ri.model.Event;
-import org.jboss.bpm.ri.model.MessageEventDetail;
 
 /**
  * The message event detail

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageFlowImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageFlowImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageFlowImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -25,7 +25,7 @@
 
 import org.jboss.bpm.NotImplementedException;
 import org.jboss.bpm.model.Message;
-import org.jboss.bpm.ri.model.MessageFlow;
+import org.jboss.bpm.model.MessageFlow;
 
 /**
  * A Message Flow is a dashed line that is used to show the flow of messages between two entities that are prepared to send and receive them. 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -27,11 +27,11 @@
 
 import javax.management.ObjectName;
 
+import org.jboss.bpm.model.FlowObject;
 import org.jboss.bpm.model.Message;
+import org.jboss.bpm.model.MutablePropertySupport;
+import org.jboss.bpm.model.Participant;
 import org.jboss.bpm.model.Property;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.Participant;
-import org.jboss.bpm.ri.runtime.MutablePropertySupport;
 
 //$Id$
 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageSender.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageSender.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MessageSender.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -26,14 +26,14 @@
 import javax.management.ObjectName;
 
 import org.jboss.bpm.client.MessageManager;
-import org.jboss.bpm.client.ObjectNameFactory;
+import org.jboss.bpm.model.Entity;
+import org.jboss.bpm.model.FlowObject;
 import org.jboss.bpm.model.Message;
 import org.jboss.bpm.model.MessageBuilder;
 import org.jboss.bpm.model.MessageBuilderFactory;
+import org.jboss.bpm.model.ObjectNameFactory;
+import org.jboss.bpm.model.Participant;
 import org.jboss.bpm.model.Property;
-import org.jboss.bpm.ri.model.Entity;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.Participant;
 import org.jboss.bpm.runtime.ExecutionContext;
 import org.jboss.bpm.runtime.Token;
 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MultipleInFlowSetterSupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MultipleInFlowSetterSupport.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MultipleInFlowSetterSupport.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,9 +21,9 @@
  */
 package org.jboss.bpm.ri.model.impl;
 
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.MultipleInFlowSupport;
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.ri.model.spec.MultipleInFlowSupport;
 
 
 //$Id$

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MultipleOutFlowSetterSupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MultipleOutFlowSetterSupport.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/MultipleOutFlowSetterSupport.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,9 +21,9 @@
  */
 package org.jboss.bpm.ri.model.impl;
 
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.MultipleOutFlowSupport;
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.ri.model.spec.MultipleOutFlowSupport;
 
 //$Id$
 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/OutputSetImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/OutputSetImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/OutputSetImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -29,10 +29,10 @@
 import java.util.List;
 import java.util.Map;
 
+import org.jboss.bpm.model.ArtifactOutput;
+import org.jboss.bpm.model.MutablePropertySupport;
+import org.jboss.bpm.model.OutputSet;
 import org.jboss.bpm.model.Property;
-import org.jboss.bpm.ri.model.ArtifactOutput;
-import org.jboss.bpm.ri.model.OutputSet;
-import org.jboss.bpm.ri.runtime.MutablePropertySupport;
 
 /**
  * An OuputSet, which is used in the definition of common attributes for Activities and for attributes of a Process

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ParallelGatewayImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ParallelGatewayImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ParallelGatewayImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -28,11 +28,11 @@
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.Gate;
+import org.jboss.bpm.model.ParallelGateway;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.model.Constants.GatewayType;
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.Gate;
-import org.jboss.bpm.ri.model.ParallelGateway;
-import org.jboss.bpm.ri.model.SequenceFlow;
 import org.jboss.bpm.ri.runtime.TokenImpl;
 import org.jboss.bpm.runtime.Token;
 import org.jboss.bpm.runtime.TokenExecutor;

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ParticipantImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ParticipantImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ParticipantImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,9 +21,9 @@
  */
 package org.jboss.bpm.ri.model.impl;
 
-import org.jboss.bpm.ri.model.Entity;
-import org.jboss.bpm.ri.model.Participant;
-import org.jboss.bpm.ri.model.Role;
+import org.jboss.bpm.model.Entity;
+import org.jboss.bpm.model.Participant;
+import org.jboss.bpm.model.Role;
 
 //$Id$
 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessBuilderImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessBuilderImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessBuilderImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -25,6 +25,8 @@
 
 import org.jboss.bpm.NotImplementedException;
 import org.jboss.bpm.model.EventBuilder;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.Gateway;
 import org.jboss.bpm.model.GatewayBuilder;
 import org.jboss.bpm.model.Message;
 import org.jboss.bpm.model.MessageBuilder;
@@ -36,8 +38,6 @@
 import org.jboss.bpm.model.Constants.ExpressionLanguage;
 import org.jboss.bpm.model.Constants.GatewayType;
 import org.jboss.bpm.model.Constants.TaskType;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.Gateway;
 import org.jboss.bpm.runtime.ExecutionHandler;
 import org.jboss.bpm.runtime.FlowHandler;
 import org.jboss.bpm.runtime.SignalHandler;

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ProcessImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -40,19 +40,18 @@
 import org.jboss.bpm.NotImplementedException;
 import org.jboss.bpm.ProcessTimeoutException;
 import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.Assignment;
 import org.jboss.bpm.model.Constants;
+import org.jboss.bpm.model.EndEvent;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.InputSet;
 import org.jboss.bpm.model.Message;
+import org.jboss.bpm.model.MutablePropertySupport;
+import org.jboss.bpm.model.OutputSet;
 import org.jboss.bpm.model.Process;
 import org.jboss.bpm.model.Property;
+import org.jboss.bpm.model.StartEvent;
 import org.jboss.bpm.ri.client.ProcessManagerImpl;
-import org.jboss.bpm.ri.model.Assignment;
-import org.jboss.bpm.ri.model.EndEvent;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.InputSet;
-import org.jboss.bpm.ri.model.OutputSet;
-import org.jboss.bpm.ri.model.ProcessModel;
-import org.jboss.bpm.ri.model.StartEvent;
-import org.jboss.bpm.ri.runtime.MutablePropertySupport;
 import org.jboss.bpm.runtime.Attachments;
 
 /**
@@ -62,7 +61,7 @@
  * @since 08-Jul-2008
  */
 @SuppressWarnings("serial")
-public class ProcessImpl extends SupportingElementImpl implements ProcessModel, Process, MutablePropertySupport
+public class ProcessImpl extends SupportingElementImpl implements Process, MutablePropertySupport
 {
   // provide logging
   private static final Log log = LogFactory.getLog(ProcessImpl.class);
@@ -187,7 +186,7 @@
   /**
    * A naive copy implementation that relies on serialization
    */
-  public ProcessModel copyProcess()
+  public Process copyProcess()
   {
     try
     {

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyBuilderFactoryImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyBuilderFactoryImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyBuilderFactoryImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,8 +23,8 @@
 
 //$Id$
 
-import org.jboss.bpm.ri.model.PropertyBuilder;
-import org.jboss.bpm.ri.model.PropertyBuilderFactory;
+import org.jboss.bpm.model.PropertyBuilder;
+import org.jboss.bpm.model.PropertyBuilderFactory;
 
 /**
  * A Factory for the {@link PropertyBuilder}.

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyBuilderImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyBuilderImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyBuilderImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -24,7 +24,7 @@
 //$Id$
 
 import org.jboss.bpm.model.Property;
-import org.jboss.bpm.ri.model.PropertyBuilder;
+import org.jboss.bpm.model.PropertyBuilder;
 
 /**
  * A PropertyBuilder can be used to build a {@link Property} dynamically.

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/PropertyImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,8 +23,8 @@
 
 //$Id$
 
+import org.jboss.bpm.model.Expression;
 import org.jboss.bpm.model.Property;
-import org.jboss.bpm.ri.model.Expression;
 
 /**
  * A Property, which is used in the definition of attributes for a Process and common activity attributes

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ReceiveTaskImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ReceiveTaskImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/ReceiveTaskImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -31,10 +31,9 @@
 import org.jboss.bpm.client.MessageListener;
 import org.jboss.bpm.model.Message;
 import org.jboss.bpm.model.Property;
+import org.jboss.bpm.model.ReceiveTask;
 import org.jboss.bpm.model.Constants.TaskType;
 import org.jboss.bpm.model.Message.Implementation;
-import org.jboss.bpm.ri.model.ProcessModel;
-import org.jboss.bpm.ri.model.ReceiveTask;
 import org.jboss.bpm.runtime.ExecutionContext;
 import org.jboss.bpm.runtime.Token;
 import org.jboss.bpm.runtime.TokenExecutor;
@@ -162,14 +161,13 @@
   }
 
   @Override
-  protected void initialize(ProcessModel proc)
+  protected void initialize(ProcessImpl proc)
   {
     super.initialize(proc);
 
     if (messageRef == null)
       throw new InvalidProcessException("A Message for the MessageRef attribute MUST be entered");
 
-    ProcessImpl procImpl = (ProcessImpl)proc;
-    procImpl.initializeMessageRef(messageRef);
+    proc.initializeMessageRef(messageRef);
   }
 }
\ No newline at end of file

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/RoleImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/RoleImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/RoleImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,7 +21,8 @@
  */
 package org.jboss.bpm.ri.model.impl;
 
-import org.jboss.bpm.ri.model.Role;
+import org.jboss.bpm.model.Constants;
+import org.jboss.bpm.model.Role;
 
 //$Id$
 
@@ -42,9 +43,9 @@
     this.roleRef = this;
   }
 
-  public ParticipantType getParticipantType()
+  public Constants.ParticipantType getParticipantType()
   {
-    return ParticipantType.Role;
+    return Constants.ParticipantType.Role;
   }
   
   public String getName()

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/RuntimeProcessImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/RuntimeProcessImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/RuntimeProcessImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -24,7 +24,7 @@
 //$Id$
 
 import org.jboss.bpm.model.Process;
-import org.jboss.bpm.ri.runtime.RuntimeProcess;
+import org.jboss.bpm.ri.runtime.spec.RuntimeProcess;
 import org.jboss.bpm.runtime.TokenExecutor;
 
 /**

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SendTaskImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SendTaskImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SendTaskImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -26,10 +26,9 @@
 
 import org.jboss.bpm.InvalidProcessException;
 import org.jboss.bpm.model.Message;
+import org.jboss.bpm.model.SendTask;
 import org.jboss.bpm.model.Constants.TaskType;
 import org.jboss.bpm.model.Message.Implementation;
-import org.jboss.bpm.ri.model.ProcessModel;
-import org.jboss.bpm.ri.model.SendTask;
 import org.jboss.bpm.runtime.Token;
 
 /**
@@ -81,15 +80,14 @@
   }
 
   @Override
-  protected void initialize(ProcessModel proc)
+  protected void initialize(ProcessImpl proc)
   {
     super.initialize(proc);
 
     if (messageRef == null)
       throw new InvalidProcessException("A Message for the MessageRef attribute MUST be entered");
 
-    ProcessImpl procImpl = (ProcessImpl)proc;
-    procImpl.initializeMessageRef(messageRef);
+    proc.initializeMessageRef(messageRef);
     
     if (messageRef.getToRef() == null)
       throw new IllegalArgumentException("Message targetID cannot be null for: " + this);

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SequenceFlowImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SequenceFlowImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SequenceFlowImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,9 +23,9 @@
 
 //$Id$
 
-import org.jboss.bpm.ri.model.Expression;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.SequenceFlow;
+import org.jboss.bpm.model.Expression;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.SequenceFlow;
 
 /**
  * A Sequence Flow is a solid graphical line that is used to show the order that Activities will be performed in a Process. 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SignalEventDetailImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SignalEventDetailImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SignalEventDetailImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -24,8 +24,8 @@
 //$Id$
 
 import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.SignalEventDetail;
 import org.jboss.bpm.model.Constants.EventDetailType;
-import org.jboss.bpm.ri.model.SignalEventDetail;
 
 /**
  * The Signal event detail

Deleted: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleInFlowSetterSupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleInFlowSetterSupport.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleInFlowSetterSupport.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -1,44 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.bpm.ri.model.impl;
-
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.SequenceFlow;
-import org.jboss.bpm.ri.model.SingleInFlowSupport;
-
-
-//$Id$
-
-/**
- * Implementing {@link FlowObject} support a single incomming {@link ConnectingObject}.
- * 
- * @author thomas.diesler at jboss.com
- * @since 08-Jul-2008
- */
-public interface SingleInFlowSetterSupport extends SingleInFlowSupport
-{
-  /**
-   * Set the incomming Flow
-   */
-  void setInFlow(SequenceFlow flow);
-}

Added: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleInFlowSetterSupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleInFlowSetterSupport.java	                        (rev 0)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleInFlowSetterSupport.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -0,0 +1,45 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.bpm.ri.model.impl;
+
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.SequenceFlow;
+import org.jboss.bpm.model.SingleInFlowSupport;
+
+
+
+//$Id$
+
+/**
+ * Implementing {@link FlowObject} support a single incomming {@link ConnectingObject}.
+ * 
+ * @author thomas.diesler at jboss.com
+ * @since 08-Jul-2008
+ */
+public interface SingleInFlowSetterSupport extends SingleInFlowSupport
+{
+  /**
+   * Set the incomming Flow
+   */
+  void setInFlow(SequenceFlow flow);
+}

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleOutFlowSetterSupport.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleOutFlowSetterSupport.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SingleOutFlowSetterSupport.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -21,10 +21,10 @@
  */
 package org.jboss.bpm.ri.model.impl;
 
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.SequenceFlow;
-import org.jboss.bpm.ri.model.SingleOutFlowSupport;
+import org.jboss.bpm.model.ConnectingObject;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.SequenceFlow;
+import org.jboss.bpm.model.SingleOutFlowSupport;
 
 
 //$Id$

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/StartEventImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/StartEventImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/StartEventImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -33,14 +33,14 @@
 import org.jboss.bpm.client.SignalListener;
 import org.jboss.bpm.client.SignalManager;
 import org.jboss.bpm.model.Constants;
+import org.jboss.bpm.model.EventDetail;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.model.Signal;
-import org.jboss.bpm.ri.model.EventDetail;
-import org.jboss.bpm.ri.model.ProcessModel;
-import org.jboss.bpm.ri.model.SequenceFlow;
-import org.jboss.bpm.ri.model.SignalEventDetail;
-import org.jboss.bpm.ri.model.StartEvent;
-import org.jboss.bpm.ri.runtime.RuntimeProcess;
+import org.jboss.bpm.model.SignalEventDetail;
+import org.jboss.bpm.model.StartEvent;
+import org.jboss.bpm.ri.client.ExecutionManagerImpl;
 import org.jboss.bpm.ri.runtime.TokenImpl;
+import org.jboss.bpm.ri.runtime.spec.RuntimeProcess;
 import org.jboss.bpm.runtime.SignalHandler;
 import org.jboss.bpm.runtime.Token;
 import org.jboss.bpm.runtime.TokenExecutor;
@@ -118,7 +118,7 @@
   }
 
   @Override
-  protected void initialize(final ProcessModel proc)
+  protected void initialize(final ProcessImpl proc)
   {
     super.initialize(proc);
     
@@ -143,7 +143,7 @@
               if (proc.getProcessStatus() == Constants.ProcessStatus.Active)
               {
                 log.debug("Start process from signal: " + signal);
-                ExecutionManager exManager = ExecutionManager.locateExecutionManager();
+                ExecutionManagerImpl exManager = (ExecutionManagerImpl)ExecutionManager.locateExecutionManager();
                 RuntimeProcess rtProc = exManager.getRuntimeProcess(start.getProcess().getID());
                 TokenExecutor tokenExecutor = rtProc.getTokenExecutor();
                 TokenImpl token = new TokenImpl(null);

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SubProcessImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SubProcessImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SubProcessImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -25,7 +25,7 @@
 
 import org.jboss.bpm.client.SignalManager;
 import org.jboss.bpm.model.Signal;
-import org.jboss.bpm.ri.model.SubProcess;
+import org.jboss.bpm.ri.model.spec.SubProcess;
 import org.jboss.bpm.runtime.SignalHandler;
 
 /**

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SupportingElementImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SupportingElementImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/SupportingElementImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,7 +23,7 @@
 
 //$Id$
 
-import org.jboss.bpm.ri.model.SupportingElement;
+import org.jboss.bpm.ri.model.spec.SupportingElement;
 
 /**
  * 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskBuilderImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskBuilderImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskBuilderImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,8 +23,8 @@
 
 //$Id$
 
+import org.jboss.bpm.model.Task;
 import org.jboss.bpm.model.TaskBuilder;
-import org.jboss.bpm.ri.model.Task;
 
 /**
  * The TaskBuilder can be used to dynamically build {@link Task}.

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TaskImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,8 +23,8 @@
 
 import org.jboss.bpm.client.SignalManager;
 import org.jboss.bpm.model.Signal;
+import org.jboss.bpm.model.Task;
 import org.jboss.bpm.model.Constants.TaskType;
-import org.jboss.bpm.ri.model.Task;
 import org.jboss.bpm.runtime.SignalHandler;
 
 //$Id$

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TokenExecutorImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TokenExecutorImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/model/impl/TokenExecutorImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -33,13 +33,13 @@
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.jboss.bpm.model.ConnectingObject;
 import org.jboss.bpm.model.Constants;
 import org.jboss.bpm.model.Process;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.ri.client.RunnableToken;
-import org.jboss.bpm.ri.model.ConnectingObject;
-import org.jboss.bpm.ri.model.SequenceFlow;
 import org.jboss.bpm.ri.runtime.MutableToken;
-import org.jboss.bpm.ri.runtime.RuntimeProcess;
+import org.jboss.bpm.ri.runtime.spec.RuntimeProcess;
 import org.jboss.bpm.runtime.FlowHandler;
 import org.jboss.bpm.runtime.Token;
 import org.jboss.bpm.runtime.TokenExecutor;

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/DelegatingExecutionContext.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/DelegatingExecutionContext.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/DelegatingExecutionContext.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -28,14 +28,14 @@
 import java.util.HashMap;
 import java.util.Map;
 
+import org.jboss.bpm.model.Activity;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.Process;
 import org.jboss.bpm.model.Property;
-import org.jboss.bpm.ri.model.Activity;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.ProcessModel;
 import org.jboss.bpm.runtime.ExecutionContext;
 
 /**
- * An ExecutionContext that delegates to the current {@link Activity} or {@link ProcessModel} for property rerieval.
+ * An ExecutionContext that delegates to the current {@link Activity} or {@link Process} for property rerieval.
  * 
  * @author Thomas.Diesler at jboss.com
  * @since 15-Aug-2008
@@ -46,14 +46,14 @@
   private ExecutionContext delegate;
   private String activityPrefix;
   private String procPrefix;
-  private ProcessModel proc;
+  private Process proc;
 
   DelegatingExecutionContext(FlowObject flowObject, ExecutionContext delegate)
   {
     this.flowObject = flowObject;
     this.delegate = delegate;
 
-    proc = flowObject.getProcess();
+    proc = (Process)flowObject.getProcess();
     procPrefix = proc.getName() + ".";
     activityPrefix = procPrefix + flowObject.getName() + ".";
   }

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/DelegatingToken.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/DelegatingToken.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/DelegatingToken.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,11 +23,11 @@
 
 //$Id$
 
-import org.jboss.bpm.ri.model.Activity;
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.InputSet;
-import org.jboss.bpm.ri.model.OutputSet;
-import org.jboss.bpm.ri.model.SequenceFlow;
+import org.jboss.bpm.model.Activity;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.InputSet;
+import org.jboss.bpm.model.OutputSet;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.runtime.ExecutionContext;
 import org.jboss.bpm.runtime.Token;
 

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/MutableToken.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/MutableToken.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/MutableToken.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,9 +23,9 @@
 
 //$Id$
 
-import org.jboss.bpm.ri.model.InputSet;
-import org.jboss.bpm.ri.model.OutputSet;
-import org.jboss.bpm.ri.model.SequenceFlow;
+import org.jboss.bpm.model.InputSet;
+import org.jboss.bpm.model.OutputSet;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.runtime.Token;
 
 /**

Modified: jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/TokenImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/TokenImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/ri/src/main/java/org/jboss/bpm/ri/runtime/TokenImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,10 +23,10 @@
 
 //$Id$
 
-import org.jboss.bpm.ri.model.FlowObject;
-import org.jboss.bpm.ri.model.InputSet;
-import org.jboss.bpm.ri.model.OutputSet;
-import org.jboss.bpm.ri.model.SequenceFlow;
+import org.jboss.bpm.model.FlowObject;
+import org.jboss.bpm.model.InputSet;
+import org.jboss.bpm.model.OutputSet;
+import org.jboss.bpm.model.SequenceFlow;
 import org.jboss.bpm.runtime.Attachments;
 import org.jboss.bpm.runtime.ExecutionContext;
 import org.jboss.bpm.runtime.Token;

Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AvailabilityHandler.java
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AvailabilityHandler.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/AvailabilityHandler.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,10 +23,10 @@
 
 // $Id$
 
-import org.jboss.bpm.ri.model.InputSet;
-import org.jboss.bpm.ri.model.OutputSet;
-import org.jboss.bpm.ri.model.PropertyBuilder;
-import org.jboss.bpm.ri.model.PropertyBuilderFactory;
+import org.jboss.bpm.model.InputSet;
+import org.jboss.bpm.model.OutputSet;
+import org.jboss.bpm.model.PropertyBuilder;
+import org.jboss.bpm.model.PropertyBuilderFactory;
 import org.jboss.bpm.runtime.ExecutionHandler;
 import org.jboss.bpm.runtime.Token;
 

Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/ValidationHandler.java
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/ValidationHandler.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/ValidationHandler.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -23,10 +23,10 @@
 
 // $Id$
 
-import org.jboss.bpm.ri.model.InputSet;
-import org.jboss.bpm.ri.model.OutputSet;
-import org.jboss.bpm.ri.model.PropertyBuilder;
-import org.jboss.bpm.ri.model.PropertyBuilderFactory;
+import org.jboss.bpm.model.InputSet;
+import org.jboss.bpm.model.OutputSet;
+import org.jboss.bpm.model.PropertyBuilder;
+import org.jboss.bpm.model.PropertyBuilderFactory;
 import org.jboss.bpm.runtime.ExecutionHandler;
 import org.jboss.bpm.runtime.Token;
 

Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/java/org/jboss/bpm/samples/airticket/server/AirticketServiceImpl.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -8,13 +8,13 @@
 
 import org.jboss.bpm.client.MessageListener;
 import org.jboss.bpm.client.MessageManager;
-import org.jboss.bpm.client.ObjectNameFactory;
 import org.jboss.bpm.client.ProcessManager;
 import org.jboss.bpm.client.SignalListener;
 import org.jboss.bpm.client.SignalManager;
 import org.jboss.bpm.model.Message;
 import org.jboss.bpm.model.MessageBuilder;
 import org.jboss.bpm.model.MessageBuilderFactory;
+import org.jboss.bpm.model.ObjectNameFactory;
 import org.jboss.bpm.model.Process;
 import org.jboss.bpm.model.Signal;
 import org.jboss.bpm.samples.airticket.AirticketProcessBuilder;

Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/resources/jbpm-beans.xml
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/resources/jbpm-beans.xml	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/main/resources/jbpm-beans.xml	2008-08-19 10:45:22 UTC (rev 1928)
@@ -4,12 +4,12 @@
   <bean name="KernelLocator" class="org.jboss.kernel.plugins.util.KernelLocator"/>
   
   <!-- The Builder Factories -->
-  <bean name="jBPMProcessBuilderFactory" class="org.jboss.bpm.model.internal.ProcessBuilderFactoryImpl"/>
-  <bean name="jBPMMessageBuilderFactory" class="org.jboss.bpm.model.internal.MessageBuilderFactoryImpl"/>
-  <bean name="jBPMPropertyBuilderFactory" class="org.jboss.bpm.model.internal.PropertyBuilderFactoryImpl"/>
+  <bean name="jBPMProcessBuilderFactory" class="org.jboss.bpm.ri.model.impl.ProcessBuilderFactoryImpl"/>
+  <bean name="jBPMMessageBuilderFactory" class="org.jboss.bpm.ri.model.impl.MessageBuilderFactoryImpl"/>
+  <bean name="jBPMPropertyBuilderFactory" class="org.jboss.bpm.ri.model.impl.PropertyBuilderFactoryImpl"/>
   
   <!-- The ProcessEngine -->
-  <bean name="jBPMProcessEngine" class="org.jboss.bpm.client.internal.ProcessEngineImpl">
+  <bean name="jBPMProcessEngine" class="org.jboss.bpm.ri.client.ProcessEngineImpl">
     <property name="processManager"><inject bean="jBPMProcessManager"/></property>
     <property name="executionManager"><inject bean="jBPMExecutionManager"/></property>
     <property name="signalManager"><inject bean="jBPMSignalManager"/></property>
@@ -17,12 +17,12 @@
   </bean>
 
   <!-- The Managers -->
-  <bean name="jBPMExecutionManager" class="org.jboss.bpm.client.internal.ExecutionManagerImpl"/>
-  <bean name="jBPMSignalManager" class="org.jboss.bpm.client.internal.SignalManagerImpl"/>
-  <bean name="jBPMMessageManager" class="org.jboss.bpm.client.internal.MessageManagerImpl"/>
+  <bean name="jBPMExecutionManager" class="org.jboss.bpm.ri.client.ExecutionManagerImpl"/>
+  <bean name="jBPMSignalManager" class="org.jboss.bpm.ri.client.SignalManagerImpl"/>
+  <bean name="jBPMMessageManager" class="org.jboss.bpm.ri.client.MessageManagerImpl"/>
   
   <!-- The ProcessManager -->
-  <bean name="jBPMProcessManager" class="org.jboss.bpm.client.internal.ProcessManagerImpl">
+  <bean name="jBPMProcessManager" class="org.jboss.bpm.ri.client.ProcessManagerImpl">
     <property name="dialectRegistry"><inject bean="jBPMDialectRegistry"/></property>
     <property name="dialectHandlers">
       <map keyClass="java.lang.String" valueClass="org.jboss.bpm.client.DialectHandler">
@@ -44,4 +44,4 @@
     </property>
   </bean>
   
-</deployment>
\ No newline at end of file
+</deployment>

Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/AirticketTest.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -29,10 +29,10 @@
 
 import org.jboss.bpm.client.MessageListener;
 import org.jboss.bpm.client.MessageManager;
-import org.jboss.bpm.client.ObjectNameFactory;
 import org.jboss.bpm.model.Message;
 import org.jboss.bpm.model.MessageBuilder;
 import org.jboss.bpm.model.MessageBuilderFactory;
+import org.jboss.bpm.model.ObjectNameFactory;
 import org.jboss.bpm.model.Process;
 import org.jboss.bpm.test.DefaultEngineTestCase;
 

Modified: jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/ProcessMarshallerTest.java
===================================================================
--- jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/ProcessMarshallerTest.java	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/samples/airticket/server/src/test/java/org/jboss/bpm/samples/airticket/ProcessMarshallerTest.java	2008-08-19 10:45:22 UTC (rev 1928)
@@ -30,8 +30,8 @@
 import javax.management.ObjectName;
 
 import org.jboss.bpm.client.DialectHandler;
-import org.jboss.bpm.client.ObjectNameFactory;
 import org.jboss.bpm.client.ProcessManager;
+import org.jboss.bpm.model.ObjectNameFactory;
 import org.jboss.bpm.model.Process;
 import org.jboss.bpm.test.DefaultEngineTestCase;
 import org.jboss.util.xml.DOMUtils;

Modified: jbossbpm/spec/trunk/modules/testsuite/src/test/resources/jbpm-beans.xml
===================================================================
--- jbossbpm/spec/trunk/modules/testsuite/src/test/resources/jbpm-beans.xml	2008-08-19 10:19:38 UTC (rev 1927)
+++ jbossbpm/spec/trunk/modules/testsuite/src/test/resources/jbpm-beans.xml	2008-08-19 10:45:22 UTC (rev 1928)
@@ -4,12 +4,12 @@
   <bean name="KernelLocator" class="org.jboss.kernel.plugins.util.KernelLocator"/>
   
   <!-- The Builder Factories -->
-  <bean name="jBPMProcessBuilderFactory" class="org.jboss.bpm.model.internal.ProcessBuilderFactoryImpl"/>
-  <bean name="jBPMMessageBuilderFactory" class="org.jboss.bpm.model.internal.MessageBuilderFactoryImpl"/>
-  <bean name="jBPMPropertyBuilderFactory" class="org.jboss.bpm.model.internal.PropertyBuilderFactoryImpl"/>
+  <bean name="jBPMProcessBuilderFactory" class="org.jboss.bpm.ri.model.impl.ProcessBuilderFactoryImpl"/>
+  <bean name="jBPMMessageBuilderFactory" class="org.jboss.bpm.ri.model.impl.MessageBuilderFactoryImpl"/>
+  <bean name="jBPMPropertyBuilderFactory" class="org.jboss.bpm.ri.model.impl.PropertyBuilderFactoryImpl"/>
   
   <!-- The ProcessEngine -->
-  <bean name="jBPMProcessEngine" class="org.jboss.bpm.client.internal.ProcessEngineImpl">
+  <bean name="jBPMProcessEngine" class="org.jboss.bpm.ri.client.ProcessEngineImpl">
     <property name="processManager"><inject bean="jBPMProcessManager"/></property>
     <property name="executionManager"><inject bean="jBPMExecutionManager"/></property>
     <property name="signalManager"><inject bean="jBPMSignalManager"/></property>
@@ -17,12 +17,12 @@
   </bean>
 
   <!-- The Managers -->
-  <bean name="jBPMExecutionManager" class="org.jboss.bpm.client.internal.ExecutionManagerImpl"/>
-  <bean name="jBPMSignalManager" class="org.jboss.bpm.client.internal.SignalManagerImpl"/>
-  <bean name="jBPMMessageManager" class="org.jboss.bpm.client.internal.MessageManagerImpl"/>
+  <bean name="jBPMExecutionManager" class="org.jboss.bpm.ri.client.ExecutionManagerImpl"/>
+  <bean name="jBPMSignalManager" class="org.jboss.bpm.ri.client.SignalManagerImpl"/>
+  <bean name="jBPMMessageManager" class="org.jboss.bpm.ri.client.MessageManagerImpl"/>
   
   <!-- The ProcessManager -->
-  <bean name="jBPMProcessManager" class="org.jboss.bpm.client.internal.ProcessManagerImpl">
+  <bean name="jBPMProcessManager" class="org.jboss.bpm.ri.client.ProcessManagerImpl">
     <property name="dialectRegistry"><inject bean="jBPMDialectRegistry"/></property>
     <property name="dialectHandlers">
       <map keyClass="java.lang.String" valueClass="org.jboss.bpm.client.DialectHandler">




More information about the jbpm-commits mailing list