View Javadoc

1   package org.state4j.sm;
2   
3   import java.util.List;
4   import java.util.Map;
5   
6   public interface SmState {
7       String getName();
8       void setName(String name);
9       boolean hasName();
10  
11      SmCompositeState getParent();
12      void setParent(SmCompositeState name);
13      boolean hasParent();
14  
15      String getSubtype();
16      void setSubtype(String subtype);
17  	boolean hasSubtype();
18  
19      SmAction getEntryAction();
20      void setEntryAction(SmAction action);
21      boolean hasEntryAction();
22  
23      SmAction getExitAction();
24      void setExitAction(SmAction action);
25      boolean hasExitAction();
26  
27  	void exit(SmContext cntx);
28  	void entry(SmContext cntx);
29  
30  	boolean isInitial();
31  	boolean isFinal();
32  	SmTransition getOutTransition(String name);
33  	Map getOutTransitions();
34  	
35  	void addOutTransition(SmTransition transition);
36  
37  	boolean hasOutTransition(String name);
38  	boolean hasOutTransitions();
39  	void setOutTransitions(Map<String, SmTransition>  transitions);
40  	void fire(SmContext cntx);
41  	List<SmTransition> getFireableTransitions(SmContext cntx, boolean withTrigger);
42  
43  	boolean isActive(SmContext cntx);
44  	SmState closeDownState();
45  	boolean containsState(SmState state);
46  	boolean deepContainsState(SmState state);
47  	void init();
48  	void exitUp(SmContext cntx, SmCompositeState lca);
49  	void entryUp(SmContext cntx, SmCompositeState lca);
50  
51  }