Index: src/nongnu/cashews/owls/process/AnyOrder.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/AnyOrder.java
diff -N src/nongnu/cashews/owls/process/AnyOrder.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/AnyOrder.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,46 @@
+/* AnyOrder.java -- A list of processes which execute serially in any order.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+import java.util.List;
+
+/**
+ * An AnyOrder
executes each control construct serially,
+ * but without any particular order (as there is with Sequence
).
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ControlConstruct
+ * @see Sequence
+ */
+public class AnyOrder
+ extends ControlConstruct
+{
+
+ /**
+ * The control constructs to be performed serially in any order.
+ *
+ * @serial the control constructs.
+ */
+ private List components;
+
+
+}
Index: src/nongnu/cashews/owls/process/AtomicProcess.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/AtomicProcess.java
diff -N src/nongnu/cashews/owls/process/AtomicProcess.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/AtomicProcess.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,55 @@
+/* AtomicProcess.java -- Representation of an OWL-S atomic process.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+/**
+ * An atomic process is the basic unit of a process implementation.
+ * Interacting with an atomic process involves a maximum of two messages;
+ * one containing the input parameters, and one containing the outputs.
+ * The internals of the process are a `black box'; the only description
+ * of the process is in terms of its external interface. An atomic
+ * process always has at least the two participants, the client
+ * and the server. To actually use the process, it must be related
+ * to a grounding.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see Input
+ * @see Output
+ * @see Participant#CLIENT
+ * @see Participant#SERVER
+ * @see nongnu.cashews.owls.service.ServiceGrounding
+ */
+public class AtomicProcess
+ extends Process
+{
+
+ /**
+ * Default constructor, which constructs an AtomicProcess
+ * with the two initial participants, the client and the server.
+ */
+ public AtomicProcess()
+ {
+ addParticipant(Participant.CLIENT);
+ addParticipant(Participant.SERVER);
+ }
+
+}
Index: src/nongnu/cashews/owls/process/Choice.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/Choice.java
diff -N src/nongnu/cashews/owls/process/Choice.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/Choice.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,45 @@
+/* Choice.java -- A list of processes from which one is picked to execute.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+import java.util.List;
+
+/**
+ * A Choice
picks one of the control constructs and executes
+ * it. The choice is non-deterministic.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ControlConstruct
+ */
+public class Choice
+ extends ControlConstruct
+{
+
+ /**
+ * The control construct list from which one will be performed.
+ *
+ * @serial the control constructs.
+ */
+ private List components;
+
+
+}
Index: src/nongnu/cashews/owls/process/CompositeProcess.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/CompositeProcess.java
diff -N src/nongnu/cashews/owls/process/CompositeProcess.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/CompositeProcess.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,102 @@
+/* CompositeProcess.java -- Representation of an OWL-S composite process.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+/**
+ * A CompositeProcess
is composed of several subprocesses,
+ * and specify constraints on the order and conditional execution of
+ * these processes. They are constructed using control constructs,
+ * and references to processes called Perform
s.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ControlConstruct
+ * @see Perform
+ */
+public class CompositeProcess
+ extends Process
+{
+
+ /**
+ * The top-level or root control construct for this composite process.
+ *
+ * @serial the root control construct.
+ */
+ private ControlConstruct root;
+
+ /**
+ * A flag to determine whether this composite process descends finally
+ * to atomic processes, and thus can be invoked.
+ *
+ * @serial whether the composite process can be invoked or not.
+ */
+ private boolean invocable;
+
+ /**
+ * The computed input of this composite process. A computed input
+ * consists of an expression which results in the input to this
+ * composite process as a whole.
+ * This allows one of several inputs to be selected conditionally, for
+ * example. It is computed based on the makeup of the composite process.
+ * The final expressiveness of this is excepted to be greater than OWL.
+ *
+ * @serial the computed input.
+ * FIXME: Change to Thing when OWL exists.
+ */
+ private Object computedInput;
+
+ /**
+ * The computed output of this composite process. A computed output
+ * consists of an expression which results in the input to this
+ * composite process as a whole.
+ * This allows one of several outputts to be selected conditionally, for
+ * example. It is computed based on the makeup of the composite process.
+ * The final expressiveness of this is excepted to be greater than OWL.
+ *
+ * @serial the computed output.
+ * FIXME: Change to Thing when OWL exists.
+ */
+ private Object computedOutput;
+
+ /**
+ * The computed precondition of this composite process. A computed
+ * precondition consists of an expression that characterises the
+ * preconditions of the subprocesses.
+ * The final expressiveness of this is excepted to be greater than OWL.
+ *
+ * @serial the computed precondition.
+ * FIXME: Change to Thing when OWL exists.
+ */
+ private Object computedPrecondition;
+
+ /**
+ * The computed effect of this composite process. A computed
+ * effect consists of an expression that characterises the
+ * effects of the subprocesses.
+ * The final expressiveness of this is excepted to be greater than OWL,
+ * and it is not presently well-defined for conditional effects.
+ *
+ * @serial the computed effect.
+ * FIXME: Change to Thing when OWL exists.
+ */
+ private Object computedEffect;
+
+}
Index: src/nongnu/cashews/owls/process/ControlConstruct.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/ControlConstruct.java
diff -N src/nongnu/cashews/owls/process/ControlConstruct.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/ControlConstruct.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,34 @@
+/* ControlConstruct.java -- Representation of an OWL-S control construct.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+/**
+ * A ControlConstruct
forms a node in the tree of
+ * components contained within a CompositeProcess
.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see CompositeProcess
+ */
+public abstract class ControlConstruct
+{
+
+}
Index: src/nongnu/cashews/owls/process/IfThenElse.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/IfThenElse.java
diff -N src/nongnu/cashews/owls/process/IfThenElse.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/IfThenElse.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,59 @@
+/* IfThenElse.java -- A conditional process choice.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+import nongnu.cashews.owls.expression.Condition;
+
+/**
+ * An IfThenElse
construct chooses one of two processes,
+ * based on the result of a Condition
.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ControlConstruct
+ * @see nongnu.cashews.owls.expression.Condition
+ */
+public class IfThenElse
+ extends ControlConstruct
+{
+
+ /**
+ * The condition on which the branch is decided.
+ *
+ * @serial the condition.
+ */
+ private Condition ifCondition;
+
+ /**
+ * The control construct used for the `then' branch.
+ *
+ * @serial the control construct taken on a result of true.
+ */
+ private ControlConstruct thenConstruct;
+
+ /**
+ * The control construct used for the `else' branch.
+ *
+ * @serial the control construct taken on a result of false.
+ */
+ private ControlConstruct elseConstruct;
+
+}
Index: src/nongnu/cashews/owls/process/Iterate.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/Iterate.java
diff -N src/nongnu/cashews/owls/process/Iterate.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/Iterate.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,35 @@
+/* Iterate.java -- An abstract subclass for iterative control constructs.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+/**
+ * Iterate
is simply an abstraction of all iterative
+ * control constructs.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ControlConstruct
+ */
+public class Iterate
+ extends ControlConstruct
+{
+
+}
Index: src/nongnu/cashews/owls/process/Perform.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/Perform.java
diff -N src/nongnu/cashews/owls/process/Perform.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/Perform.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,58 @@
+/* Perform.java -- A process reference for a composite process.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+import java.util.List;
+
+/**
+ * A Perform
references a process and is used within
+ * a CompositeProcess
to link in other processes.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ */
+public class Perform
+ extends ControlConstruct
+{
+
+ /**
+ * The process this Perform references.
+ *
+ * @serial the referenced process.
+ */
+ private Process process;
+
+ /**
+ * The bindings that give the data for this Perform.
+ *
+ * @serial the Perform data.
+ */
+ private List data;
+
+ /**
+ * The parent of this Perform.
+ *
+ * @serial the parent perform.
+ */
+ private Perform parent;
+
+
+}
Index: src/nongnu/cashews/owls/process/Process.java
===================================================================
RCS file: /cvsroot/cashew-s-editor/cashews/src/nongnu/cashews/owls/process/Process.java,v
retrieving revision 1.1
diff -u -3 -p -u -r1.1 Process.java
--- src/nongnu/cashews/owls/process/Process.java 31 Mar 2005 17:16:08 -0000 1.1
+++ src/nongnu/cashews/owls/process/Process.java 31 Mar 2005 17:17:00 -0000
@@ -102,7 +102,7 @@ public abstract class Process
locals = new ArrayList();
results = new ArrayList();
participants = new ArrayList();
- preconditions = new ArrayList():
+ preconditions = new ArrayList();
}
/**
Index: src/nongnu/cashews/owls/process/Produce.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/Produce.java
diff -N src/nongnu/cashews/owls/process/Produce.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/Produce.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,47 @@
+/* Produce.java -- An encapsulation of the output bindings for a composite.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+import java.util.List;
+
+/**
+ * A Produce
encapsulates the output bindings
+ * which produce the final results of the composite process.
+ * The purpose of this is to delay the production of values
+ * which depend on the successful execution of the other
+ * processes in the composite process.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ */
+public class Produce
+ extends ControlConstruct
+{
+
+ /**
+ * The output bindings that produce the output for the composite process.
+ *
+ * @serial the output bindings.
+ */
+ private List produce;
+
+
+}
Index: src/nongnu/cashews/owls/process/RepeatUntil.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/RepeatUntil.java
diff -N src/nongnu/cashews/owls/process/RepeatUntil.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/RepeatUntil.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,53 @@
+/* RepeatUntil.java -- An iterative construct which executes until true.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+import nongnu.cashews.owls.expression.Condition;
+
+/**
+ * A RepeatWhile
construct repeatedly executes its
+ * control construct until the condition holds.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ControlConstruct
+ * @see nongnu.cashews.owls.expression.Condition
+ */
+public class RepeatUntil
+ extends Iterate
+{
+
+ /**
+ * The condition on which the iteration depends.
+ *
+ * @serial the condition.
+ */
+ private Condition condition;
+
+ /**
+ * The control construct which is repeatedly executed until the condition
+ * returns true.
+ *
+ * @serial the control construct which is executed until the condition holds.
+ */
+ private ControlConstruct construct;
+
+}
Index: src/nongnu/cashews/owls/process/RepeatWhile.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/RepeatWhile.java
diff -N src/nongnu/cashews/owls/process/RepeatWhile.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/RepeatWhile.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,53 @@
+/* RepeatWhile.java -- An iterative construct which executes while true.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+import nongnu.cashews.owls.expression.Condition;
+
+/**
+ * A RepeatWhile
construct repeatedly executes its
+ * control construct while the condition holds.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ControlConstruct
+ * @see nongnu.cashews.owls.expression.Condition
+ */
+public class RepeatWhile
+ extends Iterate
+{
+
+ /**
+ * The condition on which the iteration depends.
+ *
+ * @serial the condition.
+ */
+ private Condition condition;
+
+ /**
+ * The control construct which is repeatedly executed while the condition
+ * returns true.
+ *
+ * @serial the control construct which is executed while the condition holds.
+ */
+ private ControlConstruct construct;
+
+}
Index: src/nongnu/cashews/owls/process/Sequence.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/Sequence.java
diff -N src/nongnu/cashews/owls/process/Sequence.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/Sequence.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,46 @@
+/* Sequence.java -- A list of processes which execute in order.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+import java.util.List;
+
+/**
+ * A Sequence
executes each control construct sequentially and
+ * serially. The sequence completes when all control constructs have
+ * completed.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ControlConstruct
+ */
+public class Sequence
+ extends ControlConstruct
+{
+
+ /**
+ * The control constructs to be performed in sequence.
+ *
+ * @serial the control constructs.
+ */
+ private List components;
+
+
+}
Index: src/nongnu/cashews/owls/process/Split.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/Split.java
diff -N src/nongnu/cashews/owls/process/Split.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/Split.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,46 @@
+/* Split.java -- A list of processes which execute concurrently.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+import java.util.List;
+
+/**
+ * A Split
schedules each control construct to execute
+ * concurrently. The construct completes when each control construct
+ * has been scheduled.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ControlConstruct
+ */
+public class Split
+ extends ControlConstruct
+{
+
+ /**
+ * The control constructs to be performed concurrently.
+ *
+ * @serial the control constructs.
+ */
+ private List components;
+
+
+}
Index: src/nongnu/cashews/owls/process/SplitJoin.java
===================================================================
RCS file: src/nongnu/cashews/owls/process/SplitJoin.java
diff -N src/nongnu/cashews/owls/process/SplitJoin.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/nongnu/cashews/owls/process/SplitJoin.java 31 Mar 2005 17:17:00 -0000
@@ -0,0 +1,46 @@
+/* SplitJoin.java -- A list of processes which execute concurrently with synch.
+ Copyright (C) 2005 The University of Sheffield.
+
+ This file is part of the CASheW-s editor.
+
+ The CASheW-s editor is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ The CASheW-s editor 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
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with The CASheW-s editor; see the file COPYING. If not, write to the
+ Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA.
+*/
+
+package nongnu.cashews.owls.process;
+
+import java.util.List;
+
+/**
+ * A Split
schedules each control construct to execute
+ * concurrently with barrier synchronization. The construct completes
+ * when each control construct has completed.
+ *
+ * @author Andrew John Hughes (address@hidden)
+ * @see ControlConstruct
+ */
+public class SplitJoin
+ extends ControlConstruct
+{
+
+ /**
+ * The control constructs to be performed concurrently.
+ *
+ * @serial the control constructs.
+ */
+ private List components;
+
+
+}