This repository was archived by the owner on May 22, 2021. It is now read-only.
File tree Expand file tree Collapse file tree 3 files changed +22
-8
lines changed
Expand file tree Collapse file tree 3 files changed +22
-8
lines changed Original file line number Diff line number Diff line change @@ -23,7 +23,7 @@ public class SCXMLToJava {
2323 private final String messageHeader ="/**\n Generated By SCXMLToJava class\n **/\n " ;
2424 private final String classNameHeader ="public class GStateMachine extends AbstractStateMachine" + openInst + "\n " ;
2525 private final String constructorHeader ="public GStateMachine()" + openInst + "\n " ;
26- private final String fileName = "exemple/ GStateMachine.java" ;
26+ private final String fileName = "GStateMachine.java" ;
2727 private String javaCode ;
2828 private File outputFile ;
2929
Original file line number Diff line number Diff line change @@ -21,11 +21,16 @@ public EventHandler(AbstractStateMachine stateMachine){
2121 public void run () {
2222 start ();
2323 while (run ){
24- Event e = getNextEvent ();
25- if (e != null ){
26- System .out .println ("Sending event " + e .getName ());
27- stateMachine .triggerEvent (e .getName ());
24+ try {
25+ Event e = getNextEvent ();
26+ if (e != null ){
27+ System .out .println ("Sending event " + e .getName ());
28+ stateMachine .triggerEvent (e .getName ());
29+ }
30+ }catch (Exception e ){
31+ System .err .println (e .getMessage ());
2832 }
33+
2934 }
3035 }
3136
@@ -38,15 +43,23 @@ public void start(){
3843 }
3944
4045 private Event getNextEvent (){
46+ try {
4147 for (int i = 0 ; i <eventsStack .size (); i ++){
4248 if (eventsStack .get (i ).getType ().equals (Event .Type .SEND )){
4349 return eventsStack .remove (i );
4450 }
4551 }
46- for (int i = 0 ; i <eventsStack .size (); i ++){
47- if (eventsStack .get (i ).getType ().equals (Event .Type .RAISE )){
48- return eventsStack .remove (i );
52+ }catch (java .lang .NullPointerException e ){
53+ System .err .println (e .getMessage ());
54+ }
55+ try {
56+ for (int i = 0 ; i < eventsStack .size (); i ++) {
57+ if (eventsStack .get (i ).getType ().equals (Event .Type .RAISE )) {
58+ return eventsStack .remove (i );
59+ }
4960 }
61+ }catch (java .lang .NullPointerException e ){
62+ System .err .println (e .getMessage ());
5063 }
5164 return null ;
5265 }
Original file line number Diff line number Diff line change @@ -58,6 +58,7 @@ public State notifyEvent(String event) {
5858 */
5959 private void enter () {
6060 for (Event e : onEntry ){
61+ System .out .println ("ONENTRY: " + e .getName ());
6162 e .trigger ();
6263 }
6364 System .out .println ("enter state " + this .id );
You can’t perform that action at this time.
0 commit comments