You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by ra...@apache.org on 2006/05/04 20:43:08 UTC
svn commit: r399813 -
/jakarta/commons/proper/scxml/trunk/xdocs/guide/core-engine.xml
Author: rahul
Date: Thu May 4 11:43:07 2006
New Revision: 399813
URL: http://svn.apache.org/viewcvs?rev=399813&view=rev
Log:
BZ 38276 [scxml] More Explicit Instructions on core-engine.html
Modified:
jakarta/commons/proper/scxml/trunk/xdocs/guide/core-engine.xml
Modified: jakarta/commons/proper/scxml/trunk/xdocs/guide/core-engine.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/scxml/trunk/xdocs/guide/core-engine.xml?rev=399813&r1=399812&r2=399813&view=diff
==============================================================================
--- jakarta/commons/proper/scxml/trunk/xdocs/guide/core-engine.xml (original)
+++ jakarta/commons/proper/scxml/trunk/xdocs/guide/core-engine.xml Thu May 4 11:43:07 2006
@@ -26,12 +26,7 @@
<section name="Commons SCXML - Creating and configuring the SCXML engine">
- <p>The Commons SCXML executor is the engine that runs the state machine.
- Commons SCXML also allows listeners to be added to the
- <code>SCXMLExecutor</code>, which are informed about the progress of
- the state machine via <code>onEntry</code> and <code>onExit</code>
- notifications for <code>TransitionTarget</code>s, as well as
- <code>onTransition</code> notificatins when transitions are followed.</p>
+ <p>The Commons SCXML executor is the engine that runs the state machine.</p>
<subsection name="Usage">
<p>The <code>SCXMLExecutor</code> is usually initialized as follows:</p>
@@ -52,25 +47,60 @@
exec.setStateMachine(<SCXML>);
exec.addListener(<SCXML>, <SCXMLListener>);
exec.setRootContext(<Context>);
- exec.setSuperStep(true);
exec.go();
} catch (ModelException me) {
// Executor initialization failed, because the
// state machine specified has inconsistencies
}
</pre>
+ </subsection>
- <p>Commons SCXML provides basic implementations of the
- <code>EventDispatcher</code>, <code>ErrorReporter</code>, and
- <code>SCXMLListener</code> interfaces, which simply log
- all the events received. Commons SCXML uses Commons Logging.</p>
-
+ <subsection name="Explanation">
<p>The SCXML specification allows implementations to support multiple
expression languages so SCXML documents can be used in varying
- environments. The <code>Context</code> and <code>Evaluator</code>
+ environments. The <code>Context</code> and <code>Evaluator</code>
interfaces serve as adapters to the particular expression language
APIs. Commons SCXML currently supports JEXL and JSP 2.0 EL
- expressions.</p>
+ expressions. See the section on
+ <a href="contexts-evaluators.html">contexts and evaluators</a>
+ for further details about contexts, evaluators and root contexts.</p>
+
+ <p>Commons SCXML provides an
+ <a href="../apidocs/org/apache/commons/scxml/EventDispatcher.html">EventDispatcher</a>
+ interface for wiring the behavior of SCXML <send> and
+ <cancel> actions. This allows users to define custom "targettypes"
+ as long as they handle the callbacks on the <code>EventDispatcher</code>
+ implementation provided to the executor. The introductory section on
+ using Commons SCXML has a brief discussion on
+ <a href="using-commons-scxml.html">interaction patterns</a>, including
+ <send> usage.</p>
+
+ <p>The
+ <a href="../apidocs/org/apache/commons/scxml/ErrorReporter.html">ErrorReporter</a>
+ interface is used by Commons SCXML for reporting SCXML errors to the host
+ environment, and contains the definition of commonly occuring errors
+ while executing SCXML documents. It is primarily used for passive usages
+ such as logging.</p>
+
+ <p>Commons SCXML also allows listeners
+ (<a href="../apidocs/org/apache/commons/scxml/SCXMLListener.html">SCXMLListener</a>)
+ to be registered with the <code>SCXMLExecutor</code>, which are informed
+ about the progress of the state machine via <code>onEntry</code> and
+ <code>onExit</code> notifications for <code>State</code>s, as
+ well as <code>onTransition</code> notifications when transitions are
+ followed.</p>
+
+ <p>Commons SCXML provides basic implementations of the
+ <code>EventDispatcher</code>, <code>ErrorReporter</code>, and
+ <code>SCXMLListener</code> interfaces in the
+ <a href="../apidocs/org/apache/commons/scxml/env/package-summary.html">env package</a>,
+ which simply log all the events received. Commons SCXML uses
+ Commons Logging.</p>
+
+ <p>The executor is "set into motion" using the marker method
+ <code>SCXMLExecutor#go()</code>. The <code>SCXMLExecutor</code> instances
+ are <b>not</b> thread-safe, and need external synchronization if the
+ usecase demands.</p>
<p>The <code>SCXMLExecutor</code> Javadoc is available
<a href="../apidocs/org/apache/commons/scxml/SCXMLExecutor.html">
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org