1 // license-header java merge-point 2 // 3 // Attention: generated code (by Metafacade.vsl) - do not modify! 4 // 5 package org.andromda.metafacades.uml; 6 7 import java.util.Collection; 8 9 /** 10 * A representation of the model object 'Vertex'. An abstraction of a node in a state machine graph. 11 * In general, it can be the source or destination of any number of transitions. 12 * 13 * Metafacade interface to be used by AndroMDA cartridges. 14 */ 15 public interface StateVertexFacade 16 extends ModelElementFacade 17 { 18 /** 19 * Indicates the metafacade type (used for metafacade mappings). 20 * 21 * @return boolean always <code>true</code> 22 */ 23 public boolean isStateVertexFacadeMetaType(); 24 25 /** 26 * Models a situation during which some (usually implicit) invariant condition holds. The states 27 * of 28 * protocol state machines are exposed to the users of their context classifiers. A protocol 29 * state 30 * represents an exposed stable situation of its context classifier: when an instance of the 31 * classifier 32 * is not processing any operation, users of this instance can always know its state 33 * configuration. 34 * @return StateFacade 35 */ 36 public StateFacade getContainer(); 37 38 /** 39 * A directed relationship between a source vertex and a target vertex. It may be part of a 40 * compound 41 * transition, which takes the state machine from one state configuration to another, 42 * representing the 43 * complete response of the state machine to an occurrence of an event of a particular type. 44 * @return Collection<TransitionFacade> 45 */ 46 public Collection<TransitionFacade> getIncomings(); 47 48 /** 49 * A directed relationship between a source vertex and a target vertex. It may be part of a 50 * compound 51 * transition, which takes the state machine from one state configuration to another, 52 * representing the 53 * complete response of the state machine to an occurrence of an event of a particular type. 54 * @return Collection<TransitionFacade> 55 */ 56 public Collection<TransitionFacade> getOutgoings(); 57 58 /** 59 * The partition (if any) to which this vertex belongs. 60 * @return PartitionFacade 61 */ 62 public PartitionFacade getPartition(); 63 64 /** 65 * State machines can be used to express the behavior of part of a system. Behavior is modeled 66 * as a 67 * traversal of a graph of state nodes interconnected by one or more joined transition arcs that 68 * are 69 * triggered by the dispatching of series of (event) occurrences. During this traversal, the 70 * state 71 * machine executes a series of activities associated with various elements of the state 72 * machine. 73 * @return StateMachineFacade 74 */ 75 public StateMachineFacade getStateMachine(); 76 }