diff options
author | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-04-22 14:02:03 (GMT) |
---|---|---|
committer | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-04-22 14:02:03 (GMT) |
commit | 1fb6bcf30f954e426f2d3002d14887574fb941dd (patch) | |
tree | 08cff7f2b879c50efe79e3c04d255075522af862 /test/uscxml/test-postpone-element.scxml | |
parent | 71c334bf4e35559496feac3f3cf00b72ceb88812 (diff) | |
download | uscxml-1fb6bcf30f954e426f2d3002d14887574fb941dd.zip uscxml-1fb6bcf30f954e426f2d3002d14887574fb941dd.tar.gz uscxml-1fb6bcf30f954e426f2d3002d14887574fb941dd.tar.bz2 |
Major refactoring
- Moved tests
- Changes to promela datamodel
- Implemented Trie
Diffstat (limited to 'test/uscxml/test-postpone-element.scxml')
-rw-r--r-- | test/uscxml/test-postpone-element.scxml | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/test/uscxml/test-postpone-element.scxml b/test/uscxml/test-postpone-element.scxml new file mode 100644 index 0000000..185f367 --- /dev/null +++ b/test/uscxml/test-postpone-element.scxml @@ -0,0 +1,41 @@ +<scxml datamodel="ecmascript" name="postpone"> + <script src="http://uscxml.tk.informatik.tu-darmstadt.de/scripts/dump.js" /> + <script> + var blocked = true; + </script> + <state id="idle"> + + <!-- request will be postponed until someone unblocks --> + <transition event="http" target="idle" cond="_event.data.pathComponent[1] == 'block'"> + <if cond="blocked"> + <log expr="'Postponing'" /> + <postpone until="blocked == false;" /> + <else> + <response status="200" requestexpr="_event.origin"> + <content expr="blocked" /> + </response> + </else> + </if> + </transition> + + <!-- unblock - this triggers all postponed events --> + <transition event="http" target="idle" cond="_event.data.pathComponent[1] == 'unblock'"> + <log expr="'Unblocking'" /> + <script>blocked = false;</script> + <response status="200" requestexpr="_event.origin"> + <content expr="blocked" /> + </response> + </transition> + + <!-- default --> + <transition event="http" target="idle" cond=" + _event.data.pathComponent[1] != 'unblock' && + _event.data.pathComponent[1] != 'block' + "> + <script>dump(_event);</script> + <response status="200" requestexpr="_event.origin" /> + </transition> + + </state> + <state id="final" final="true" /> +</scxml>
\ No newline at end of file |