Author: thomas.diesler(a)jboss.com
Date: 2008-07-14 12:31:59 -0400 (Mon, 14 Jul 2008)
New Revision: 1631
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/client/internal/ExecutionManagerImpl.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Event.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ExecutionHandler.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Flow.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowHandler.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gateway.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Handler.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/IntermediateEvent.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleInFlowSupport.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleOutFlowSupport.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/NamedFlowObject.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ProcessBuilder.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Result.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Signal.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SignalHandler.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleOutFlowSupport.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SubProcess.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/EndEventImpl.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/FlowHandlerImpl.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/GatewayImpl.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/IntermediateEventImpl.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/ParallelGatewayImpl.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/SubProcessImpl.java
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/TaskImpl.java
Log:
javadoc
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/client/internal/ExecutionManagerImpl.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/client/internal/ExecutionManagerImpl.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/client/internal/ExecutionManagerImpl.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -103,7 +103,7 @@
token.removeHeadFlow();
// Transfer the token to the FlowHandler
- flowHandler.transfer(token);
+ flowHandler.execute(token);
}
}
finally
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Activity.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,5 +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$
+
+/**
+ * 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, Sub-Process,
and Task.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface Activity extends FlowObject, NamedFlowObject
{
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/EndEvent.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,10 +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$
+/**
+ * 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(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface EndEvent extends Event, NamedFlowObject, SingleInFlowSupport
{
/**
- * Get the result
+ * Get the {@link Result}
*/
Result getResult();
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Event.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Event.java 2008-07-14 15:46:47
UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Event.java 2008-07-14 16:31:59
UTC (rev 1631)
@@ -1,5 +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$
+
+/**
+ * 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(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface Event extends FlowObject, Executable
{
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ExecutionHandler.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ExecutionHandler.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ExecutionHandler.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,11 +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 org.jboss.bpm.client.ProcessEngine;
import org.jboss.bpm.runtime.Token;
+/**
+ * The {@link ProcessEngine} invokes the ExecutionHandler on an {@link Executable}
+ * {@link FlowObject} to execute user provided business logic.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface ExecutionHandler extends Handler
{
/**
- * Execute this flow object
+ * Execute business logic associated with a {@link FlowObject}
*/
void execute(Token token);
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Flow.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Flow.java 2008-07-14 15:46:47
UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Flow.java 2008-07-14 16:31:59
UTC (rev 1631)
@@ -1,5 +1,38 @@
+/*
+ * 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 Flow is a graphical line connecting two objects in a BPD.
+ * <p/>
+ * There are two types of Flow: {@link SequenceFlow} and {@link MessageFlow}, each with
their own line style.
+ * Flow is also used in a generic sense (and lowercase) to describe how Tokens will
traverse from the
+ * {@link StartEvent} to an {@link EndEvent}.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface Flow
{
/**
@@ -8,7 +41,7 @@
String getName();
/**
- * Get the target name
+ * Get the required target name
*/
String getTargetName();
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowHandler.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowHandler.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowHandler.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,16 +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;
+//$Id$
+
+import org.jboss.bpm.client.ProcessEngine;
import org.jboss.bpm.runtime.Token;
+/**
+ * The {@link ProcessEngine} invokes the FlowHandler on an {@link Executable}
+ * {@link FlowObject} to move the {@link Token} to the next {@link FlowObject}.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface FlowHandler extends Handler
{
-
/**
- * Transfer the token to the FlowHandler.
+ * Execute the the FlowHandler.
* <p/>
* The FlowHandler will add the active outgoing @{link Flow}s to
- * @{link Token}'s flow queue.
+ * some @{link Flow} queue for the {@link ProcessEngine} to execute.
*/
- void transfer(Token token);
+ void execute(Token token);
}
\ No newline at end of file
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/FlowObject.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,10 +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 Flow Object is one of the set of following graphical objects:
+ * {@link Event}, {@link Activity}, and {@link Gateway}.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface FlowObject
{
/**
* Get the associated Process
*/
Process getProcess();
-
}
\ No newline at end of file
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gateway.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gateway.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Gateway.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,6 +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: ExecutionHandlerImpl.java 1627 2008-07-14 15:16:28Z thomas.diesler(a)jboss.com $
+/**
+ * Gateways are modelling elements that are used to control how Flows interact as they
converge and diverge within a Process.
+ * </p>
+ * If the flow does not need to be controlled, then a Gateway is not needed.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface Gateway extends FlowObject, NamedFlowObject, Executable,
MultipleOutFlowSupport, MultipleInFlowSupport
{
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Handler.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Handler.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Handler.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,5 +1,34 @@
+/*
+ * 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 generic base for handlers that can be associated with a {@link FlowObject}.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface Handler
{
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/IntermediateEvent.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/IntermediateEvent.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/IntermediateEvent.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,5 +1,38 @@
+/*
+ * 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 Flow} 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(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface IntermediateEvent extends Event, NamedFlowObject, SingleInFlowSupport,
SingleOutFlowSupport
{
}
\ No newline at end of file
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleInFlowSupport.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleInFlowSupport.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleInFlowSupport.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -25,6 +25,12 @@
//$Id$
+/**
+ * Implementing {@link FlowObject}s support multiple incomming {@link Flow}s.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface MultipleInFlowSupport
{
/**
@@ -32,5 +38,8 @@
*/
List<Flow> getInFlows();
+ /**
+ * TODO: remove from the API
+ */
void addInFlow(Flow flow);
}
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleOutFlowSupport.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleOutFlowSupport.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/MultipleOutFlowSupport.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -25,6 +25,12 @@
//$Id$
+/**
+ * Implementing {@link FlowObject}s support multiple outgoing {@link Flow}s.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface MultipleOutFlowSupport
{
/**
@@ -32,6 +38,9 @@
*/
List<Flow> getOutFlows();
+ /**
+ * TODO: remove from the API
+ */
void addOutFlow(Flow flow);
}
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/NamedFlowObject.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/NamedFlowObject.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/NamedFlowObject.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -24,7 +24,8 @@
//$Id$
/**
- * A Flow Object with a name
+ * Implementing {@link FlowObject}s have can be uniquely identified
+ * in the {@link Process} by name.
*
* @author thomas.diesler(a)jboss.com
* @since 08-Jul-2008
@@ -32,7 +33,7 @@
public interface NamedFlowObject
{
/**
- * Get the name
+ * Get the unique name.
*/
String getName();
}
\ No newline at end of file
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Process.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,12 +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: MultipleInFlowSupport.java 1627 2008-07-14 15:16:28Z thomas.diesler(a)jboss.com $
+
import java.util.List;
import java.util.concurrent.Future;
import org.jboss.bpm.runtime.Attachments;
-public interface Process extends NamedFlowObject
+/**
+ * A Process is any {@link Activity} performed within a company or organization.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
+public interface Process extends Activity, NamedFlowObject
{
+ /**
+ * Defines the state a {@link Process} can be in
+ */
enum ProcessState
{
CREATED, INITIALIZED, STARTED, ENDED
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ProcessBuilder.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ProcessBuilder.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/ProcessBuilder.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -21,6 +21,8 @@
*/
package org.jboss.bpm.model;
+//$Id$
+
import org.jboss.bpm.model.internal.ComplexGatewayImpl;
import org.jboss.bpm.model.internal.EndEventImpl;
import org.jboss.bpm.model.internal.ExclusiveGatewayImpl;
@@ -35,12 +37,8 @@
import org.jboss.bpm.model.internal.SubProcessImpl;
import org.jboss.bpm.model.internal.TaskImpl;
-
-
-// $Id$
-
/**
- * A Process is any Activity performed within a company or organization.
+ * The ProcessBuilder can be used to dynamically build {@link Process}es.
*
* @author thomas.diesler(a)jboss.com
* @since 08-Jul-2008
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Result.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Result.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Result.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -27,7 +27,7 @@
/**
* A Result is consequence of reaching an End Event.
- *
+ * <p/>
* Results can be of different types, including: Message, Error, Compensation, Link, and
Multiple.
*
* @author thomas.diesler(a)jboss.com
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Signal.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Signal.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Signal.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -21,10 +21,6 @@
*/
package org.jboss.bpm.model;
-import javax.xml.bind.annotation.XmlTransient;
-import javax.xml.bind.annotation.XmlType;
-
-
//$Id$
@@ -34,11 +30,11 @@
* @author Thomas.Diesler(a)jboss.com
* @since 08-Jul-2008
*/
-@XmlTransient
public class Signal
{
- // @XmlTransient does not work with jaxb-2.1.7
- @XmlType(name="SignalType")
+ /**
+ * Defines the types of supported Signals
+ */
public enum Type
{
ENTER_START_EVENT, EXIT_START_EVENT,
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SignalHandler.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SignalHandler.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SignalHandler.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,8 +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$
+
+import org.jboss.bpm.client.ProcessEngine;
+import org.jboss.bpm.client.SignalManager;
+
+/**
+ * The {@link ProcessEngine} invokes the SignalHandler on an {@link Executable}
+ * {@link FlowObject} to send {@link Signal}s to the {@link SignalManager}.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface SignalHandler extends Handler
{
-
/**
* Get signal for enter
*/
@@ -12,5 +44,4 @@
* Get signal for exit
*/
Signal getExitSignal();
-
}
\ No newline at end of file
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleInFlowSupport.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -21,8 +21,15 @@
*/
package org.jboss.bpm.model;
+
//$Id$
+/**
+ * Implementing {@link FlowObject}s support a single incomming {@link Flow}s.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface SingleInFlowSupport
{
/**
@@ -30,5 +37,8 @@
*/
Flow getInFlow();
+ /**
+ * TODO: remove from the API
+ */
void setInFlow(Flow flow);
}
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleOutFlowSupport.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleOutFlowSupport.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SingleOutFlowSupport.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -21,8 +21,15 @@
*/
package org.jboss.bpm.model;
+
//$Id$
+/**
+ * Implementing {@link FlowObject}s support a single outgoing {@link Flow}s.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface SingleOutFlowSupport
{
/**
@@ -30,5 +37,8 @@
*/
Flow getOutFlow();
+ /**
+ * TODO: remove from the API
+ */
void setOutFlow(Flow flow);
}
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/StartEvent.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,5 +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.model;
+//$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(a)jboss.com
+ * @since 08-Jul-2008
+ */
public interface StartEvent extends Event, SingleOutFlowSupport
{
}
\ No newline at end of file
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SubProcess.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SubProcess.java 2008-07-14
15:46:47 UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/SubProcess.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -1,5 +1,34 @@
+/*
+ * 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;
-public interface SubProcess extends FlowObject, Executable, SingleInFlowSupport,
SingleOutFlowSupport
+//$Id$
+
+/**
+ * A Sub-Process is Process that is included within another Process.
+ *
+ * @author thomas.diesler(a)jboss.com
+ * @since 08-Jul-2008
+ */
+public interface SubProcess extends Process, Executable, SingleInFlowSupport,
SingleOutFlowSupport
{
}
\ No newline at end of file
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java
===================================================================
--- api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java 2008-07-14 15:46:47
UTC (rev 1630)
+++ api/trunk/modules/api/src/main/java/org/jboss/bpm/model/Task.java 2008-07-14 16:31:59
UTC (rev 1631)
@@ -1,5 +1,5 @@
package org.jboss.bpm.model;
-public interface Task extends FlowObject, Executable, SingleInFlowSupport,
SingleOutFlowSupport
+public interface Task extends Activity, Executable, SingleInFlowSupport,
SingleOutFlowSupport
{
}
\ No newline at end of file
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/EndEventImpl.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/EndEventImpl.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/EndEventImpl.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -98,7 +98,7 @@
return new FlowHandlerImpl()
{
@Override
- public void transfer(Token token)
+ public void execute(Token token)
{
log.debug("End reached in: " + getName());
}
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/FlowHandlerImpl.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/FlowHandlerImpl.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/FlowHandlerImpl.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -47,13 +47,13 @@
super(delegate);
}
- public void transfer(Token token)
+ public void execute(Token token)
{
if (handler == null)
{
handler = newInstance(FlowHandler.class);
}
- handler.transfer(token);
+ handler.execute(token);
}
public static FlowHandler adaptHandler(JAXBFlowHandler jaxb)
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/GatewayImpl.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/GatewayImpl.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/GatewayImpl.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -134,7 +134,7 @@
return new FlowHandlerImpl()
{
@Override
- public void transfer(Token token)
+ public void execute(Token token)
{
if (outFlows.size() == 1)
token.addTailFlow(outFlows.get(0));
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/IntermediateEventImpl.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/IntermediateEventImpl.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/IntermediateEventImpl.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -100,7 +100,7 @@
return new FlowHandlerImpl()
{
@Override
- public void transfer(Token token)
+ public void execute(Token token)
{
token.addTailFlow(getOutFlow());
}
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/ParallelGatewayImpl.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/ParallelGatewayImpl.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/ParallelGatewayImpl.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -57,7 +57,7 @@
return new FlowHandlerImpl()
{
@Override
- public void transfer(Token token)
+ public void execute(Token token)
{
for(Flow outFlow : getOutFlows())
token.addTailFlow(outFlow);
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/StartEventImpl.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -77,7 +77,7 @@
return new FlowHandlerImpl()
{
@Override
- public void transfer(Token token)
+ public void execute(Token token)
{
token.addTailFlow(outFlow);
}
Modified:
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/SubProcessImpl.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/SubProcessImpl.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/SubProcessImpl.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -120,7 +120,7 @@
return new FlowHandlerImpl()
{
@Override
- public void transfer(Token token)
+ public void execute(Token token)
{
token.addTailFlow(outFlow);
}
Modified: api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/TaskImpl.java
===================================================================
---
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/TaskImpl.java 2008-07-14
15:46:47 UTC (rev 1630)
+++
api/trunk/modules/api/src/main/java/org/jboss/bpm/model/internal/TaskImpl.java 2008-07-14
16:31:59 UTC (rev 1631)
@@ -134,7 +134,7 @@
return new FlowHandlerImpl()
{
@Override
- public void transfer(Token token)
+ public void execute(Token token)
{
token.addTailFlow(outFlow);
}