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 2005/10/21 19:55:43 UTC
svn commit: r327224 - in
/jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml:
SCXMLDigester.java model/Send.java semantics/SCXMLSemanticsImpl.java
Author: rahul
Date: Fri Oct 21 10:55:39 2005
New Revision: 327224
URL: http://svn.apache.org/viewcvs?rev=327224&view=rev
Log:
* Rename targetType property of Send to targettype (to match WD)
* Addressed a couple of todo's, deferred some others (which were minor enhancements with debatable value-adds)
Modified:
jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/SCXMLDigester.java
jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/model/Send.java
jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/semantics/SCXMLSemanticsImpl.java
Modified: jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/SCXMLDigester.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/SCXMLDigester.java?rev=327224&r1=327223&r2=327224&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/SCXMLDigester.java (original)
+++ jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/SCXMLDigester.java Fri Oct 21 10:55:39 2005
@@ -58,15 +58,15 @@
import org.xml.sax.ErrorHandler;
/**
- * The SCXMLDigester provides the ability to digest a SCXML document into the
- * Java object model provided in the model package.
- * <br>
- * The SCXMLDigester can be used for:
- * a) Digest a SCXML file placed in a web application context <br>
- * b) Obtain a Digester instance configured with rules for SCXML digestion <br>
- * c) Serialize an SCXML object (primarily for debugging) <br>
+ * <p>The SCXMLDigester provides the ability to digest a SCXML document into
+ * the Java object model provided in the model package.</p>
+ * <p>The SCXMLDigester can be used for:</p>
+ * <ol>
+ * <li>Digest a SCXML file into the Commons SCXML Java object model.</li>
+ * <li>Serialize an SCXML object (primarily for debugging).</li>
+ * </ol>
*/
-public class SCXMLDigester {
+public final class SCXMLDigester {
//---------------------- PUBLIC METHODS ----------------------//
/**
@@ -665,7 +665,9 @@
String initialstate = scxml.getInitialstate();
//we have to use getTargets() here since the initialState can be
//an indirect descendant
- //TODO: better type check, now ClassCastException happens for Parallel
+ // Concern marked by one of the code reviewers: better type check,
+ // now ClassCastException happens for Parallel
+ // Response: initial should be a State, for Parallel, it is implicit
State initialState = (State) scxml.getTargets().get(initialstate);
if (initialState == null) {
// Where do we, where do we go?
@@ -708,10 +710,9 @@
}
s.setContext(localCtx);
//ensure both onEntry and onExit have parent
- //TODO: add this rather as a Digester rule for OnEntry/OnExit
+ //could add next two lines as a Digester rule for OnEntry/OnExit
s.getOnEntry().setParent(s);
s.getOnExit().setParent(s);
- //ENDTODO
//initialize next / inital
Initial ini = s.getInitial();
Map c = s.getChildren();
@@ -761,10 +762,9 @@
Iterator j = ((List) t.get(i.next())).iterator();
while (j.hasNext()) {
Transition trn = (Transition) j.next();
- // TODO: add this rather as a Digester rule for Transition
+ //could add next two lines as a Digester rule for Transition
trn.setNotificationRegistry(s.getNotificationRegistry());
trn.setParent(s);
- // ENDTODO
updateTransition(trn, targets);
}
}
@@ -809,8 +809,8 @@
if (tt == null) {
tt = (TransitionTarget) targets.get(next);
if (tt == null) {
- // TODO: Move Digester warnings to errors
- System.err.println("WARNING: SCXMLDigester - Transition "
+ // Could move Digester warnings to errors
+ log.warn("WARNING: SCXMLDigester - Transition "
+ "target \"" + next + "\" not found");
}
t.setTarget(tt);
@@ -1060,7 +1060,6 @@
Iterator i = l.iterator();
while (i.hasNext()) {
Action a = (Action) i.next();
- // TODO - Serialize action attrs, bodies; Priority: Very low ;-)
if (a instanceof Var) {
Var v = (Var) a;
b.append(indent).append("<var name=\"").append(v.getName())
@@ -1069,16 +1068,22 @@
} else if (a instanceof Assign) {
Assign asn = (Assign) a;
b.append(indent).append("<assign name=\"")
- .append(asn.getName()).append("\" expr=\"").append(
- asn.getExpr()).append("\"/>\n");
+ .append(asn.getName()).append("\" expr=\"")
+ .append(asn.getExpr()).append("\"/>\n");
} else if (a instanceof Send) {
Send s = (Send) a;
- b.append(indent).append("<send sendid=\"").
- append(s.getSendid()).append("\"/>\n");
+ b.append(indent).append("<send sendid=\"")
+ .append(s.getSendid()).append("\" target=\"")
+ .append(s.getTarget()).append("\" targetType=\"")
+ .append(s.getTargettype()).append("\" namelist=\"")
+ .append(s.getNamelist()).append("\" delay=\"")
+ .append(s.getDelay()).append("\" events=\"")
+ .append(s.getEvent()).append("\" hints=\"")
+ .append(s.getHints()).append("\"/>\n");
} else if (a instanceof Cancel) {
Cancel c = (Cancel) a;
- b.append(indent).append("<cancel sendid=\"").
- append(c.getSendid()).append("\"/>\n");
+ b.append(indent).append("<cancel sendid=\"")
+ .append(c.getSendid()).append("\"/>\n");
} else if (a instanceof Log) {
Log lg = (Log) a;
b.append(indent).append("<log expr=\"").append(lg.getExpr())
Modified: jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/model/Send.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/model/Send.java?rev=327224&r1=327223&r2=327224&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/model/Send.java (original)
+++ jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/model/Send.java Fri Oct 21 10:55:39 2005
@@ -41,7 +41,7 @@
* The type of the Event I/O Processor that the event.
* should be dispatched to
*/
- private String targetType;
+ private String targettype;
/**
* The event is dispatched after the delay interval elapses.
@@ -162,17 +162,17 @@
}
/**
- * @return String Returns the targetType.
+ * @return String Returns the targettype.
*/
- public final String getTargetType() {
- return targetType;
+ public final String getTargettype() {
+ return targettype;
}
/**
- * @param targetType The targetType to set.
+ * @param targettype The targettype to set.
*/
- public final void setTargetType(final String targetType) {
- this.targetType = targetType;
+ public final void setTargettype(final String targettype) {
+ this.targettype = targettype;
}
/**
Modified: jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/semantics/SCXMLSemanticsImpl.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/semantics/SCXMLSemanticsImpl.java?rev=327224&r1=327223&r2=327224&view=diff
==============================================================================
--- jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/semantics/SCXMLSemanticsImpl.java (original)
+++ jakarta/commons/sandbox/scxml/trunk/src/main/java/org/apache/commons/scxml/semantics/SCXMLSemanticsImpl.java Fri Oct 21 10:55:39 2005
@@ -250,7 +250,7 @@
}
}
evtDispatcher.send(snd.getSendid(),
- snd.getTarget(), snd.getTargetType(), snd.getEvent(),
+ snd.getTarget(), snd.getTargettype(), snd.getEvent(),
params, hints, Long.parseLong(snd.getDelay()));
} else if (a instanceof Var) {
Var vr = (Var) a;
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org