You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shale.apache.org by ra...@apache.org on 2006/09/13 01:15:31 UTC
svn commit: r442753 -
/shale/sandbox/shale-dialog2-scxml/src/main/java/org/apache/shale/dialog2/scxml/SCXMLDialogContext.java
Author: rahul
Date: Tue Sep 12 16:15:30 2006
New Revision: 442753
URL: http://svn.apache.org/viewvc?view=rev&rev=442753
Log:
Proper cleanup, the logical equivalent of reaching an "end" state in the legacy API.
Modified:
shale/sandbox/shale-dialog2-scxml/src/main/java/org/apache/shale/dialog2/scxml/SCXMLDialogContext.java
Modified: shale/sandbox/shale-dialog2-scxml/src/main/java/org/apache/shale/dialog2/scxml/SCXMLDialogContext.java
URL: http://svn.apache.org/viewvc/shale/sandbox/shale-dialog2-scxml/src/main/java/org/apache/shale/dialog2/scxml/SCXMLDialogContext.java?view=diff&rev=442753&r1=442752&r2=442753
==============================================================================
--- shale/sandbox/shale-dialog2-scxml/src/main/java/org/apache/shale/dialog2/scxml/SCXMLDialogContext.java (original)
+++ shale/sandbox/shale-dialog2-scxml/src/main/java/org/apache/shale/dialog2/scxml/SCXMLDialogContext.java Tue Sep 12 16:15:30 2006
@@ -208,7 +208,14 @@
// Using C/C, "View" state ID is JSF viewId, which is an acceptable
// approach with Commons SCXML v0.5
Iterator iterator = this.executor.getCurrentStatus().getStates().iterator();
- navigateTo(((State) iterator.next()).getId(), context);
+ String viewId = ((State) iterator.next()).getId();
+
+ // If done, stop context
+ if (this.executor.getCurrentStatus().isFinal()) {
+ stop(context);
+ }
+
+ navigateTo(viewId, context);
}
@@ -252,7 +259,14 @@
// Using C/C, "View" state ID is JSF viewId, which is an acceptable
// approach with Commons SCXML v0.5 since it accepts spaces etc.
Iterator iterator = this.executor.getCurrentStatus().getStates().iterator();
- navigateTo(((State) iterator.next()).getId(), context);
+ String viewId = ((State) iterator.next()).getId();
+
+ // Might be done at the beginning itself, if so, stop context
+ if (this.executor.getCurrentStatus().isFinal()) {
+ stop(context);
+ }
+
+ navigateTo(viewId, context);
}