diff options
Diffstat (limited to 'ajdoc/testdata/spacewar/doc/coordination')
12 files changed, 232 insertions, 32 deletions
diff --git a/ajdoc/testdata/spacewar/doc/coordination/Condition.html b/ajdoc/testdata/spacewar/doc/coordination/Condition.html index f59e7c297..11a17148c 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/Condition.html +++ b/ajdoc/testdata/spacewar/doc/coordination/Condition.html @@ -2,7 +2,7 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:05 PST 2004 --> +<!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:28 PDT 2004 --> <TITLE> Condition </TITLE> @@ -90,6 +90,10 @@ Interface Condition</H2> <P> + Interface for pre-conditions that are passed to guardedEntry methods of + Coordinator. + Conditions should be passed as anonymous classes that simply implement + the checkit method. <P> <P> @@ -119,7 +123,9 @@ Interface Condition</H2> <TD><CODE><B><A HREF="../coordination/Condition.html#checkit()">checkit</A></B>()</CODE> <BR> - </TD> + + This method is called automatically by Coordinator.guardedEntry(...) + and it's called everytime the coordination state changes.</TD> </TR> </TABLE> @@ -147,6 +153,8 @@ checkit</H3> public boolean <B>checkit</B>()</PRE> <DL> <DD> + This method is called automatically by Coordinator.guardedEntry(...) + and it's called everytime the coordination state changes. <P> <DD><DL> </DL> diff --git a/ajdoc/testdata/spacewar/doc/coordination/CoordinationAction.html b/ajdoc/testdata/spacewar/doc/coordination/CoordinationAction.html index 6898803ea..89fdcbad9 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/CoordinationAction.html +++ b/ajdoc/testdata/spacewar/doc/coordination/CoordinationAction.html @@ -2,7 +2,7 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:05 PST 2004 --> +<!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:28 PDT 2004 --> <TITLE> CoordinationAction </TITLE> @@ -90,6 +90,10 @@ Interface CoordinationAction</H2> <P> + Interface for coordination actions that are passed to guardedEntry methods of + Coordinator. + Coordination actions should be passed as anonymous classes that simply + implement the doit method. <P> <P> @@ -119,7 +123,9 @@ Interface CoordinationAction</H2> <TD><CODE><B><A HREF="../coordination/CoordinationAction.html#doit()">doit</A></B>()</CODE> <BR> - </TD> + + This method is called by Coordinator.guardedEntry(...) and + Coordinator.guardedExit(...).</TD> </TR> </TABLE> @@ -147,6 +153,9 @@ doit</H3> public void <B>doit</B>()</PRE> <DL> <DD> + This method is called by Coordinator.guardedEntry(...) and + Coordinator.guardedExit(...). Use it for changing coordination state + upon entering and exiting methods. <P> <DD><DL> </DL> diff --git a/ajdoc/testdata/spacewar/doc/coordination/Coordinator.html b/ajdoc/testdata/spacewar/doc/coordination/Coordinator.html index 8765d0636..8dd0a7095 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/Coordinator.html +++ b/ajdoc/testdata/spacewar/doc/coordination/Coordinator.html @@ -2,7 +2,7 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:05 PST 2004 --> +<!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:28 PDT 2004 --> <TITLE> Coordinator </TITLE> @@ -97,6 +97,39 @@ java.lang.Object <P> + The Coordinator class provides the basic functionality for synchronizing + and coordinating different threads upon entering and exiting methods. + It can be used in two different ways: + 1) by instantiating regular coordinator objects that are used by aspects; or + 2) by extending it (sub-classing) with coordinator aspects. + <P> + Method invocations are the smallest units for defining critical sections + and pre-conditions. The use of coordinators, either regular objects or aspect + instances, should always end up by invoking guardedEntry(...) in a + before weave and guardedExit(...) in an after weave for all methods that + need coordination. guardedEntry and guardedExit are the methods that + actually manage the synchronization and coordination constraints given + by their parameters and by pre-existent exclusion markers. + <P> + The synchronization of threads for the execution of critical section + methods in an object is done by marking those methods as self- and/or + mutually-exclusive (addSelfex, addMutex). + Just by itself, addSelfex("M") does not enforce the self-exclusion + of method M - enforcement is done by invoking guardedEntry before + M is executed. Similarly, addMutex(new String[] {"M1", "M2"}) does + not enforce the mutual exclusion between methods M1 and M2. + <P> + A guardedEntry on a method that has been marked as self-exclusive + ensures that the method is executed in the invoked object by only one thread + at a time. A guardedEntry on a method that has been marked has mutually- + exclusive with other methods ensures that the execution of that method + by a thread in the invoked object temporarily blocks the execution by + other threads of the methods that are in the same mutex set. + <P> + The coordination of threads, i.e. their explicit suspension and + resumption, is done through the use of pre-conditions and coordination + actions that are passed as parameters to guardedEntry and guardedExit + with the form of anonymous classes. <P> <P> @@ -115,10 +148,10 @@ java.lang.Object <!-- ======== ADVICE SUMMARY ======= --> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="1"CELLSPACING="0"><TR><TD COLSPAN=2 BGCOLOR="#CCCCFF"><FONT SIZE="+2"><B>Advice Summary</B></FONT></TD></TR> -<TR><TD><A HREF="#before(): synchronizationPoint.."><TT><B>before(): synchronizationPoint..</B></TT></A><BR> <TABLE WIDTH="100%" BGCOLOR=#FFFFFF><TR><TD width="10%" bgcolor="#FFD8B0"><B><FONT COLOR=000000> Advises:</b></font></td><td><A HREF="Display1.html#paintObjects(Graphics)"><tt>spacewar.Display1.paintObjects</tt></A>, <A HREF="Display2.html#paintObjects(Graphics)"><tt>spacewar.Display2.paintObjects</tt></A>, <A HREF="Game.html#resetShips()"><tt>spacewar.Game.resetShips</tt></A>, <A HREF="Game.html#newPlayer(int)"><tt>spacewar.Game.newPlayer</tt></A>, <A HREF="Game.html#newRobot(int)"><tt>spacewar.Game.newRobot</tt></A>, <A HREF="Game.html#clockTick()"><tt>spacewar.Game.clockTick</tt></A>, <A HREF="Game.html#handleCollisions()"><tt>spacewar.Game.handleCollisions</tt></A>, <A HREF="Registry.html#dummy()"><tt>spacewar.Registry.dummy</tt></A>, <A HREF="Robot.html#run()"><tt>spacewar.Robot.run</tt></A>, <A HREF="SpaceObject.html"><tt>spacewar.SpaceObject</tt></A>, <A HREF="SpaceObject.html#die()"><tt>spacewar.SpaceObject.die</tt></A></B></FONT></TD></TR></TABLE> +<TR><TD><A HREF="#before(): synchronizationPoint.."><TT><B>before(): synchronizationPoint..</B></TT></A><BR> <TABLE WIDTH="100%" BGCOLOR=#FFFFFF><TR><TD width="10%" bgcolor="#FFD8B0"><B><FONT COLOR=000000> Advises:</b></font></td><td><A HREF="Display1.html#paintObjects(Graphics)"><tt>spacewar.Display1.paintObjects</tt></A>, <A HREF="Display2.html#paintObjects(Graphics)"><tt>spacewar.Display2.paintObjects</tt></A>, <A HREF="Game.html#resetShips()"><tt>spacewar.Game.resetShips</tt></A>, <A HREF="Game.html#newPlayer(int)"><tt>spacewar.Game.newPlayer</tt></A>, <A HREF="Game.html#newRobot(int)"><tt>spacewar.Game.newRobot</tt></A>, <A HREF="Game.html#clockTick()"><tt>spacewar.Game.clockTick</tt></A>, <A HREF="Game.html#handleCollisions()"><tt>spacewar.Game.handleCollisions</tt></A>, <A HREF="Registry.html#dummy()"><tt>spacewar.Registry.dummy</tt></A>, <A HREF="Robot.html#run()"><tt>spacewar.Robot.run</tt></A>, <A HREF="../spacewar/SpaceObject.html"><tt>spacewar.SpaceObject</tt></A>, <A HREF="SpaceObject.html#die()"><tt>spacewar.SpaceObject.die</tt></A></B></FONT></TD></TR></TABLE> </TR></TD> </TD></TR><TD> -<TR><TD><A HREF="#after(): synchronizationPoint.."><TT><B>after(): synchronizationPoint..</B></TT></A><BR> <TABLE WIDTH="100%" BGCOLOR=#FFFFFF><TR><TD width="10%" bgcolor="#FFD8B0"><B><FONT COLOR=000000> Advises:</b></font></td><td><A HREF="Display1.html#paintObjects(Graphics)"><tt>spacewar.Display1.paintObjects</tt></A>, <A HREF="Display2.html#paintObjects(Graphics)"><tt>spacewar.Display2.paintObjects</tt></A>, <A HREF="Game.html#resetShips()"><tt>spacewar.Game.resetShips</tt></A>, <A HREF="Game.html#newPlayer(int)"><tt>spacewar.Game.newPlayer</tt></A>, <A HREF="Game.html#newRobot(int)"><tt>spacewar.Game.newRobot</tt></A>, <A HREF="Game.html#clockTick()"><tt>spacewar.Game.clockTick</tt></A>, <A HREF="Game.html#handleCollisions()"><tt>spacewar.Game.handleCollisions</tt></A>, <A HREF="Registry.html#dummy()"><tt>spacewar.Registry.dummy</tt></A>, <A HREF="Robot.html#run()"><tt>spacewar.Robot.run</tt></A>, <A HREF="SpaceObject.html"><tt>spacewar.SpaceObject</tt></A>, <A HREF="SpaceObject.html#die()"><tt>spacewar.SpaceObject.die</tt></A></B></FONT></TD></TR></TABLE> +<TR><TD><A HREF="#after(): synchronizationPoint.."><TT><B>after(): synchronizationPoint..</B></TT></A><BR> <TABLE WIDTH="100%" BGCOLOR=#FFFFFF><TR><TD width="10%" bgcolor="#FFD8B0"><B><FONT COLOR=000000> Advises:</b></font></td><td><A HREF="Display1.html#paintObjects(Graphics)"><tt>spacewar.Display1.paintObjects</tt></A>, <A HREF="Display2.html#paintObjects(Graphics)"><tt>spacewar.Display2.paintObjects</tt></A>, <A HREF="Game.html#resetShips()"><tt>spacewar.Game.resetShips</tt></A>, <A HREF="Game.html#newPlayer(int)"><tt>spacewar.Game.newPlayer</tt></A>, <A HREF="Game.html#newRobot(int)"><tt>spacewar.Game.newRobot</tt></A>, <A HREF="Game.html#clockTick()"><tt>spacewar.Game.clockTick</tt></A>, <A HREF="Game.html#handleCollisions()"><tt>spacewar.Game.handleCollisions</tt></A>, <A HREF="Registry.html#dummy()"><tt>spacewar.Registry.dummy</tt></A>, <A HREF="Robot.html#run()"><tt>spacewar.Robot.run</tt></A>, <A HREF="../spacewar/SpaceObject.html"><tt>spacewar.SpaceObject</tt></A>, <A HREF="SpaceObject.html#die()"><tt>spacewar.SpaceObject.die</tt></A></B></FONT></TD></TR></TABLE> </TR></TD> </TD></TR><TD> </TABLE><P> @@ -155,7 +188,9 @@ java.lang.Object <TD><CODE><B><A HREF="../coordination/Coordinator.html#addMutex(java.lang.String[])">addMutex</A></B>(java.lang.String[] methNames)</CODE> <BR> - </TD> + + Takes an array of multi-part method names and marks those + methods as mutually exclusive.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -163,7 +198,9 @@ java.lang.Object <TD><CODE><B><A HREF="../coordination/Coordinator.html#addSelfex(java.lang.String)">addSelfex</A></B>(java.lang.String methName)</CODE> <BR> - </TD> + + Takes a multi-part method name (eg "BoundedBuffer.put") + and marks that method as self-exclusive.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -171,7 +208,10 @@ java.lang.Object <TD><CODE><B><A HREF="../coordination/Coordinator.html#guardedEntry(java.lang.String)">guardedEntry</A></B>(java.lang.String methName)</CODE> <BR> - </TD> + + This method is the guard for enforcing all synchronization and + coordination constraints of a given method, and it should be called + just before the method is executed.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -180,7 +220,9 @@ java.lang.Object <A HREF="../coordination/Condition.html" title="interface in coordination">Condition</A> condition)</CODE> <BR> - </TD> + + Just like guardedEntry(String methName), but the given method is executed + only when the given condition is true.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -190,7 +232,11 @@ java.lang.Object <A HREF="../coordination/CoordinationAction.html" title="interface in coordination">CoordinationAction</A> action)</CODE> <BR> - </TD> + + Just like guardedEntry(String methName), but the given method is executed + only when the given condition is true; the additional + coordination action that is executed before the given method is + executed.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -199,7 +245,10 @@ java.lang.Object <A HREF="../coordination/CoordinationAction.html" title="interface in coordination">CoordinationAction</A> action)</CODE> <BR> - </TD> + + Just like guardedEntry(String methName), but with an additional + coordination action that is executed before the given method is + executed.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -210,7 +259,10 @@ java.lang.Object long millis)</CODE> <BR> - </TD> + + This method is similar to guardedEntry, but it takes + an additional parameter - the milliseconds after which any suspension + will abort with a timeout.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -220,7 +272,10 @@ java.lang.Object long millis)</CODE> <BR> - </TD> + + This method is similar to guardedEntry, but it takes + an additional parameter - the milliseconds after which any suspension + will abort with a timeout.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -230,7 +285,10 @@ java.lang.Object long millis)</CODE> <BR> - </TD> + + This method is similar to guardedEntry, but it takes + an additional parameter - the milliseconds after which any suspension + will abort with a timeout.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -239,7 +297,10 @@ java.lang.Object long millis)</CODE> <BR> - </TD> + + This method is similar to guardedEntry, but it takes + an additional parameter - the milliseconds after which any suspension + will abort with a timeout.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -247,7 +308,10 @@ java.lang.Object <TD><CODE><B><A HREF="../coordination/Coordinator.html#guardedExit(java.lang.String)">guardedExit</A></B>(java.lang.String methName)</CODE> <BR> - </TD> + + This method provides the means for updating all synchronization and + coordination state after the execution of a given method, and it should be + called after the method is executed.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -256,7 +320,9 @@ java.lang.Object <A HREF="../coordination/CoordinationAction.html" title="interface in coordination">CoordinationAction</A> action)</CODE> <BR> - </TD> + + Just like guardedExit(String methName) but with an additional + coordination action that is executed.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -264,7 +330,9 @@ java.lang.Object <TD><CODE><B><A HREF="../coordination/Coordinator.html#removeMutex(java.lang.String[])">removeMutex</A></B>(java.lang.String[] methNames)</CODE> <BR> - </TD> + + Takes an array of multi-part method names that correspond + to an existing mutex set and remove the mutual exclusion constraint.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> @@ -272,7 +340,8 @@ java.lang.Object <TD><CODE><B><A HREF="../coordination/Coordinator.html#removeSelfex(java.lang.String)">removeSelfex</A></B>(java.lang.String methName)</CODE> <BR> - </TD> + + Takes a multi-part method name (e.g.</TD> </TR> </TABLE> <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A> @@ -306,12 +375,12 @@ java.lang.Object </TR> </TABLE><A NAME="before(): synchronizationPoint.."><!-- --></A> <H3>before</H3><P><TT><B>before(): synchronizationPoint..</B></TT> -<P><P><TABLE WIDTH="100%" BGCOLOR=#FFFFFF><TR><TD width="10%" bgcolor="#FFD8B0"><B><FONT COLOR=000000> Advises:</b></font></td><td><A HREF="Display1.html#paintObjects(Graphics)"><tt>spacewar.Display1.paintObjects</tt></A>, <A HREF="Display2.html#paintObjects(Graphics)"><tt>spacewar.Display2.paintObjects</tt></A>, <A HREF="Game.html#resetShips()"><tt>spacewar.Game.resetShips</tt></A>, <A HREF="Game.html#newPlayer(int)"><tt>spacewar.Game.newPlayer</tt></A>, <A HREF="Game.html#newRobot(int)"><tt>spacewar.Game.newRobot</tt></A>, <A HREF="Game.html#clockTick()"><tt>spacewar.Game.clockTick</tt></A>, <A HREF="Game.html#handleCollisions()"><tt>spacewar.Game.handleCollisions</tt></A>, <A HREF="Registry.html#dummy()"><tt>spacewar.Registry.dummy</tt></A>, <A HREF="Robot.html#run()"><tt>spacewar.Robot.run</tt></A>, <A HREF="SpaceObject.html"><tt>spacewar.SpaceObject</tt></A>, <A HREF="SpaceObject.html#die()"><tt>spacewar.SpaceObject.die</tt></A></B></FONT></TD></TR></TABLE> +<P><P><TABLE WIDTH="100%" BGCOLOR=#FFFFFF><TR><TD width="10%" bgcolor="#FFD8B0"><B><FONT COLOR=000000> Advises:</b></font></td><td><A HREF="Display1.html#paintObjects(Graphics)"><tt>spacewar.Display1.paintObjects</tt></A>, <A HREF="Display2.html#paintObjects(Graphics)"><tt>spacewar.Display2.paintObjects</tt></A>, <A HREF="Game.html#resetShips()"><tt>spacewar.Game.resetShips</tt></A>, <A HREF="Game.html#newPlayer(int)"><tt>spacewar.Game.newPlayer</tt></A>, <A HREF="Game.html#newRobot(int)"><tt>spacewar.Game.newRobot</tt></A>, <A HREF="Game.html#clockTick()"><tt>spacewar.Game.clockTick</tt></A>, <A HREF="Game.html#handleCollisions()"><tt>spacewar.Game.handleCollisions</tt></A>, <A HREF="Registry.html#dummy()"><tt>spacewar.Registry.dummy</tt></A>, <A HREF="Robot.html#run()"><tt>spacewar.Robot.run</tt></A>, <A HREF="../spacewar/SpaceObject.html"><tt>spacewar.SpaceObject</tt></A>, <A HREF="SpaceObject.html#die()"><tt>spacewar.SpaceObject.die</tt></A></B></FONT></TD></TR></TABLE> </TR></TD> <P><HR> <A NAME="after(): synchronizationPoint.."><!-- --></A> <H3>after</H3><P><TT><B>after(): synchronizationPoint..</B></TT> -<P><P><TABLE WIDTH="100%" BGCOLOR=#FFFFFF><TR><TD width="10%" bgcolor="#FFD8B0"><B><FONT COLOR=000000> Advises:</b></font></td><td><A HREF="Display1.html#paintObjects(Graphics)"><tt>spacewar.Display1.paintObjects</tt></A>, <A HREF="Display2.html#paintObjects(Graphics)"><tt>spacewar.Display2.paintObjects</tt></A>, <A HREF="Game.html#resetShips()"><tt>spacewar.Game.resetShips</tt></A>, <A HREF="Game.html#newPlayer(int)"><tt>spacewar.Game.newPlayer</tt></A>, <A HREF="Game.html#newRobot(int)"><tt>spacewar.Game.newRobot</tt></A>, <A HREF="Game.html#clockTick()"><tt>spacewar.Game.clockTick</tt></A>, <A HREF="Game.html#handleCollisions()"><tt>spacewar.Game.handleCollisions</tt></A>, <A HREF="Registry.html#dummy()"><tt>spacewar.Registry.dummy</tt></A>, <A HREF="Robot.html#run()"><tt>spacewar.Robot.run</tt></A>, <A HREF="SpaceObject.html"><tt>spacewar.SpaceObject</tt></A>, <A HREF="SpaceObject.html#die()"><tt>spacewar.SpaceObject.die</tt></A></B></FONT></TD></TR></TABLE> +<P><P><TABLE WIDTH="100%" BGCOLOR=#FFFFFF><TR><TD width="10%" bgcolor="#FFD8B0"><B><FONT COLOR=000000> Advises:</b></font></td><td><A HREF="Display1.html#paintObjects(Graphics)"><tt>spacewar.Display1.paintObjects</tt></A>, <A HREF="Display2.html#paintObjects(Graphics)"><tt>spacewar.Display2.paintObjects</tt></A>, <A HREF="Game.html#resetShips()"><tt>spacewar.Game.resetShips</tt></A>, <A HREF="Game.html#newPlayer(int)"><tt>spacewar.Game.newPlayer</tt></A>, <A HREF="Game.html#newRobot(int)"><tt>spacewar.Game.newRobot</tt></A>, <A HREF="Game.html#clockTick()"><tt>spacewar.Game.clockTick</tt></A>, <A HREF="Game.html#handleCollisions()"><tt>spacewar.Game.handleCollisions</tt></A>, <A HREF="Registry.html#dummy()"><tt>spacewar.Registry.dummy</tt></A>, <A HREF="Robot.html#run()"><tt>spacewar.Robot.run</tt></A>, <A HREF="../spacewar/SpaceObject.html"><tt>spacewar.SpaceObject</tt></A>, <A HREF="SpaceObject.html#die()"><tt>spacewar.SpaceObject.die</tt></A></B></FONT></TD></TR></TABLE> </TR></TD> <P><!-- ============ FIELD DETAIL =========== --> @@ -351,6 +420,10 @@ addSelfex</H3> public void <B>addSelfex</B>(java.lang.String methName)</PRE> <DL> <DD> + Takes a multi-part method name (eg "BoundedBuffer.put") + and marks that method as self-exclusive. + No checks are made with respect to the existence of the method + whose name is given. <P> <DD><DL> </DL> @@ -364,6 +437,8 @@ removeSelfex</H3> public void <B>removeSelfex</B>(java.lang.String methName)</PRE> <DL> <DD> + Takes a multi-part method name (e.g. "BoundedBuffer.put") + and removes that method from the list of self-exclusive methods. <P> <DD><DL> </DL> @@ -377,6 +452,10 @@ addMutex</H3> public void <B>addMutex</B>(java.lang.String[] methNames)</PRE> <DL> <DD> + Takes an array of multi-part method names and marks those + methods as mutually exclusive. + No checks are made with respect to the existence of the methods + whose names are given. <P> <DD><DL> </DL> @@ -390,6 +469,9 @@ removeMutex</H3> public void <B>removeMutex</B>(java.lang.String[] methNames)</PRE> <DL> <DD> + Takes an array of multi-part method names that correspond + to an existing mutex set and remove the mutual exclusion constraint. + If the given mutex set does not exist, removeMutex does nothing. <P> <DD><DL> </DL> @@ -403,6 +485,18 @@ guardedEntry</H3> public void <B>guardedEntry</B>(java.lang.String methName)</PRE> <DL> <DD> + This method is the guard for enforcing all synchronization and + coordination constraints of a given method, and it should be called + just before the method is executed. + In this form, only the method name is given. The only constraints + checked are the exclusion constraints. + If the method was previousely marked as selfex (through addSelfex), + guardedEntry ensures that the method is executed only when no other + thread is executing it. + If the method was previousely marked as being in one or more mutex + sets, guardedEntry ensures that the method is executed only when no other + thread is executing any of the methods with which the give method is + mutexed. <P> <DD><DL> </DL> @@ -417,6 +511,26 @@ public void <B>guardedEntry</B>(java.lang.String methName, <A HREF="../coordination/Condition.html" title="interface in coordination">Condition</A> condition)</PRE> <DL> <DD> + Just like guardedEntry(String methName), but the given method is executed + only when the given condition is true. + guardedEntry is the guard for enforcing all synchronization and + coordination constraints of a given method, and it should be called + just before the method is executed. + In this form, the method name is given along with a condition. + The constraints checked are the exclusion constraints and whether + the given condition is true. + If the method was previousely marked as selfex (through addSelfex), + guardedEntry ensures that the method is executed only when no other + thread is executing it. + If the method was previousely marked as being in one or more mutex + sets, guardedEntry ensures that the method is executed only when no other + thread is executing any of the methods with which the give method is + mutexed. + If the condition is false, guardedEntry suspends the current thread. + That thread remains suspended until the condition becomes true, in + which case all constraints are rechecked before the method is executed. + When all exclusion constraints are checked and the given condition is + true, the given method is executed. <P> <DD><DL> </DL> @@ -431,6 +545,23 @@ public void <B>guardedEntry</B>(java.lang.String methName, <A HREF="../coordination/CoordinationAction.html" title="interface in coordination">CoordinationAction</A> action)</PRE> <DL> <DD> + Just like guardedEntry(String methName), but with an additional + coordination action that is executed before the given method is + executed. + guardedEntry is the guard for enforcing all synchronization and + coordination constraints of a given method, and it should be called + just before the method is executed. + In this form, the method name is given along with a coordination action. + The only constraints checked are the exclusion constraints. + If the method was previousely marked as selfex (through addSelfex), + guardedEntry ensures that the method is executed only when no other + thread is executing it. + If the method was previousely marked as being in one or more mutex + sets, guardedEntry ensures that the method is executed only when no other + thread is executing any of the methods with which the give method is + mutexed. + The given coordination action is executed just before the given method + is executed. <P> <DD><DL> </DL> @@ -446,6 +577,31 @@ public void <B>guardedEntry</B>(java.lang.String methName, <A HREF="../coordination/CoordinationAction.html" title="interface in coordination">CoordinationAction</A> action)</PRE> <DL> <DD> + Just like guardedEntry(String methName), but the given method is executed + only when the given condition is true; the additional + coordination action that is executed before the given method is + executed. + guardedEntry is the guard for enforcing all synchronization and + coordination constraints of a given method, and it should be called + just before the method is executed. + In this form, the method name is given along with a condition and + a coordination action. + The constraints checked are the exclusion constraints and whether the + given condition is true. + If the method was previousely marked as selfex (through addSelfex), + guardedEntry ensures that the method is executed only when no other + thread is executing it. + If the method was previousely marked as being in one or more mutex + sets, guardedEntry ensures that the method is executed only when no other + thread is executing any of the methods with which the give method is + mutexed. + If the condition is false, guardedEntry suspends the current thread. + That thread remains suspended until the condition becomes true, in + which case all constraints are rechecked before the method is executed. + When all exclusion constraints are checked and the given condition is + true, the given method is executed. + The given coordination action is executed just before the given method + is executed. <P> <DD><DL> </DL> @@ -461,6 +617,9 @@ public void <B>guardedEntryWithTimeout</B>(java.lang.String methName, throws <A HREF="../coordination/TimeoutException.html" title="class in coordination">TimeoutException</A></PRE> <DL> <DD> + This method is similar to guardedEntry, but it takes + an additional parameter - the milliseconds after which any suspension + will abort with a timeout. <P> <DD><DL> @@ -479,6 +638,9 @@ public void <B>guardedEntryWithTimeout</B>(java.lang.String methName, throws <A HREF="../coordination/TimeoutException.html" title="class in coordination">TimeoutException</A></PRE> <DL> <DD> + This method is similar to guardedEntry, but it takes + an additional parameter - the milliseconds after which any suspension + will abort with a timeout. <P> <DD><DL> @@ -497,6 +659,9 @@ public void <B>guardedEntryWithTimeout</B>(java.lang.String methName, throws <A HREF="../coordination/TimeoutException.html" title="class in coordination">TimeoutException</A></PRE> <DL> <DD> + This method is similar to guardedEntry, but it takes + an additional parameter - the milliseconds after which any suspension + will abort with a timeout. <P> <DD><DL> @@ -516,6 +681,9 @@ public void <B>guardedEntryWithTimeout</B>(java.lang.String methName, throws <A HREF="../coordination/TimeoutException.html" title="class in coordination">TimeoutException</A></PRE> <DL> <DD> + This method is similar to guardedEntry, but it takes + an additional parameter - the milliseconds after which any suspension + will abort with a timeout. <P> <DD><DL> @@ -531,6 +699,12 @@ guardedExit</H3> public void <B>guardedExit</B>(java.lang.String methName)</PRE> <DL> <DD> + This method provides the means for updating all synchronization and + coordination state after the execution of a given method, and it should be + called after the method is executed. + In this form, only the method name is given. + The synchronization state for self- and mutual-exclusion is + automatically upadted. <P> <DD><DL> </DL> @@ -545,6 +719,15 @@ public void <B>guardedExit</B>(java.lang.String methName, <A HREF="../coordination/CoordinationAction.html" title="interface in coordination">CoordinationAction</A> action)</PRE> <DL> <DD> + Just like guardedExit(String methName) but with an additional + coordination action that is executed. + guardedExit provides the means for updating all synchronization and + coordination state after the execution of a given method, and it should be + called after the method is executed. + In this form, the method name is given along with a coordination action. + The synchronization state for self- and mutual-exclusion is + automatically upadted. + The given coordination action is executed. <P> <DD><DL> </DL> diff --git a/ajdoc/testdata/spacewar/doc/coordination/Exclusion.html b/ajdoc/testdata/spacewar/doc/coordination/Exclusion.html index 3adbbcbd8..fb2b2a4cc 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/Exclusion.html +++ b/ajdoc/testdata/spacewar/doc/coordination/Exclusion.html @@ -2,7 +2,7 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:05 PST 2004 --> +<!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:28 PDT 2004 --> <TITLE> Exclusion </TITLE> diff --git a/ajdoc/testdata/spacewar/doc/coordination/Method.html b/ajdoc/testdata/spacewar/doc/coordination/Method.html index ec6596b3a..8ed9da7ab 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/Method.html +++ b/ajdoc/testdata/spacewar/doc/coordination/Method.html @@ -2,7 +2,7 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:05 PST 2004 --> +<!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:28 PDT 2004 --> <TITLE> Method </TITLE> diff --git a/ajdoc/testdata/spacewar/doc/coordination/MethodState.html b/ajdoc/testdata/spacewar/doc/coordination/MethodState.html index df5cad790..324788f53 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/MethodState.html +++ b/ajdoc/testdata/spacewar/doc/coordination/MethodState.html @@ -2,7 +2,7 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:05 PST 2004 --> +<!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:28 PDT 2004 --> <TITLE> MethodState </TITLE> diff --git a/ajdoc/testdata/spacewar/doc/coordination/Mutex.html b/ajdoc/testdata/spacewar/doc/coordination/Mutex.html index ceb108de9..aca1f71b7 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/Mutex.html +++ b/ajdoc/testdata/spacewar/doc/coordination/Mutex.html @@ -2,7 +2,7 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:05 PST 2004 --> +<!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:28 PDT 2004 --> <TITLE> Mutex </TITLE> diff --git a/ajdoc/testdata/spacewar/doc/coordination/Selfex.html b/ajdoc/testdata/spacewar/doc/coordination/Selfex.html index 5836f9bd9..5e09bb6e8 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/Selfex.html +++ b/ajdoc/testdata/spacewar/doc/coordination/Selfex.html @@ -2,7 +2,7 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:05 PST 2004 --> +<!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:28 PDT 2004 --> <TITLE> Selfex </TITLE> diff --git a/ajdoc/testdata/spacewar/doc/coordination/TimeoutException.html b/ajdoc/testdata/spacewar/doc/coordination/TimeoutException.html index 6c0ed5e8c..9cc93e7ff 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/TimeoutException.html +++ b/ajdoc/testdata/spacewar/doc/coordination/TimeoutException.html @@ -2,7 +2,7 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:05 PST 2004 --> +<!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:28 PDT 2004 --> <TITLE> TimeoutException </TITLE> diff --git a/ajdoc/testdata/spacewar/doc/coordination/package-frame.html b/ajdoc/testdata/spacewar/doc/coordination/package-frame.html index 881d93bd3..3b2752a15 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/package-frame.html +++ b/ajdoc/testdata/spacewar/doc/coordination/package-frame.html @@ -2,7 +2,7 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:03 PST 2004 --> +<!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:27 PDT 2004 --> <TITLE> coordination </TITLE> diff --git a/ajdoc/testdata/spacewar/doc/coordination/package-summary.html b/ajdoc/testdata/spacewar/doc/coordination/package-summary.html index eb7fd0ecc..a1d3ffd30 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/package-summary.html +++ b/ajdoc/testdata/spacewar/doc/coordination/package-summary.html @@ -1 +1 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><!--NewPage--><HTML><HEAD><!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:03 PST 2004 --><TITLE>coordination</TITLE><META NAME="keywords" CONTENT="coordination package"><LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style"><SCRIPT type="text/javascript">function windowTitle(){ parent.document.title="coordination";}</SCRIPT></HEAD><BODY BGCOLOR="white" onload="windowTitle();"><!-- ========= START OF TOP NAVBAR ======= --><A NAME="navbar_top"><!-- --></A><A HREF="#skip-navbar_top" title="Skip navigation links"></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""><TR><TD COLSPAN=3 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_top_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> PREV PACKAGE <A HREF="../spacewar/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../index.html" target="_top"><B>FRAMES</B></A> <A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>'); } //--></SCRIPT><NOSCRIPT> <A HREF="../allclasses-noframe.html"><B>All Classes</B></A></NOSCRIPT></FONT></TD></TR></TABLE><A NAME="skip-navbar_top"></A><!-- ========= END OF TOP NAVBAR ========= --><HR><H2>Package coordination</H2><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=2><FONT SIZE="+2"><B>Interface Summary</B></FONT></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Condition.html" title="interface in coordination">Condition</A></B></TD><TD></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/CoordinationAction.html" title="interface in coordination">CoordinationAction</A></B></TD><TD></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Exclusion.html" title="interface in coordination">Exclusion</A></B></TD><TD></TD></TR></TABLE> <P><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=2><FONT SIZE="+2"><B>Class Summary</B></FONT></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Coordinator.html" title="class in coordination">Coordinator</A></B></TD><TD></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Method.html" title="class in coordination">Method</A></B></TD><TD></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/MethodState.html" title="class in coordination">MethodState</A></B></TD><TD></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Mutex.html" title="class in coordination">Mutex</A></B></TD><TD></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Selfex.html" title="class in coordination">Selfex</A></B></TD><TD></TD></TR></TABLE> <P><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=2><FONT SIZE="+2"><B>Exception Summary</B></FONT></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/TimeoutException.html" title="class in coordination">TimeoutException</A></B></TD><TD></TD></TR></TABLE> <P><HR><!-- ======= START OF BOTTOM NAVBAR ====== --><A NAME="navbar_bottom"><!-- --></A><A HREF="#skip-navbar_bottom" title="Skip navigation links"></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""><TR><TD COLSPAN=3 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_bottom_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> PREV PACKAGE <A HREF="../spacewar/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../index.html" target="_top"><B>FRAMES</B></A> <A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>'); } //--></SCRIPT><NOSCRIPT> <A HREF="../allclasses-noframe.html"><B>All Classes</B></A></NOSCRIPT></FONT></TD></TR></TABLE><A NAME="skip-navbar_bottom"></A><!-- ======== END OF BOTTOM NAVBAR ======= --><HR></BODY></HTML>
\ No newline at end of file +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><!--NewPage--><HTML><HEAD><!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:27 PDT 2004 --><TITLE>coordination</TITLE><META NAME="keywords" CONTENT="coordination package"><LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style"><SCRIPT type="text/javascript">function windowTitle(){ parent.document.title="coordination";}</SCRIPT></HEAD><BODY BGCOLOR="white" onload="windowTitle();"><!-- ========= START OF TOP NAVBAR ======= --><A NAME="navbar_top"><!-- --></A><A HREF="#skip-navbar_top" title="Skip navigation links"></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""><TR><TD COLSPAN=3 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_top_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> PREV PACKAGE <A HREF="../spacewar/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../index.html" target="_top"><B>FRAMES</B></A> <A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>'); } //--></SCRIPT><NOSCRIPT> <A HREF="../allclasses-noframe.html"><B>All Classes</B></A></NOSCRIPT></FONT></TD></TR></TABLE><A NAME="skip-navbar_top"></A><!-- ========= END OF TOP NAVBAR ========= --><HR><H2>Package coordination</H2><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=2><FONT SIZE="+2"><B>Interface Summary</B></FONT></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Condition.html" title="interface in coordination">Condition</A></B></TD><TD> Interface for pre-conditions that are passed to guardedEntry methods of Coordinator.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/CoordinationAction.html" title="interface in coordination">CoordinationAction</A></B></TD><TD> Interface for coordination actions that are passed to guardedEntry methods of Coordinator.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Exclusion.html" title="interface in coordination">Exclusion</A></B></TD><TD></TD></TR></TABLE> <P><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=2><FONT SIZE="+2"><B>Class Summary</B></FONT></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Coordinator.html" title="class in coordination">Coordinator</A></B></TD><TD> The Coordinator class provides the basic functionality for synchronizing and coordinating different threads upon entering and exiting methods.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Method.html" title="class in coordination">Method</A></B></TD><TD></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/MethodState.html" title="class in coordination">MethodState</A></B></TD><TD></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Mutex.html" title="class in coordination">Mutex</A></B></TD><TD></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/Selfex.html" title="class in coordination">Selfex</A></B></TD><TD></TD></TR></TABLE> <P><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=2><FONT SIZE="+2"><B>Exception Summary</B></FONT></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD WIDTH="15%"><B><A HREF="../coordination/TimeoutException.html" title="class in coordination">TimeoutException</A></B></TD><TD></TD></TR></TABLE> <P><HR><!-- ======= START OF BOTTOM NAVBAR ====== --><A NAME="navbar_bottom"><!-- --></A><A HREF="#skip-navbar_bottom" title="Skip navigation links"></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""><TR><TD COLSPAN=3 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_bottom_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> PREV PACKAGE <A HREF="../spacewar/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../index.html" target="_top"><B>FRAMES</B></A> <A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>'); } //--></SCRIPT><NOSCRIPT> <A HREF="../allclasses-noframe.html"><B>All Classes</B></A></NOSCRIPT></FONT></TD></TR></TABLE><A NAME="skip-navbar_bottom"></A><!-- ======== END OF BOTTOM NAVBAR ======= --><HR></BODY></HTML>
\ No newline at end of file diff --git a/ajdoc/testdata/spacewar/doc/coordination/package-tree.html b/ajdoc/testdata/spacewar/doc/coordination/package-tree.html index 2bdabe26d..3c51367e6 100644 --- a/ajdoc/testdata/spacewar/doc/coordination/package-tree.html +++ b/ajdoc/testdata/spacewar/doc/coordination/package-tree.html @@ -2,7 +2,7 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.4.2_04) on Tue Mar 30 08:51:03 PST 2004 --> +<!-- Generated by javadoc (build 1.4.2_04) on Tue Apr 06 19:57:27 PDT 2004 --> <TITLE> coordination Class Hierarchy </TITLE> |