View Javadoc
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  }