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 * State machines can be used to express the behavior of part of a system. Behavior is modeled as a
11 * traversal of a graph of state nodes interconnected by one or more joined transition arcs that are
12 * triggered by the dispatching of series of (event) occurrences. During this traversal, the state
13 * machine executes a series of activities associated with various elements of the state machine.
14 *
15 * Metafacade interface to be used by AndroMDA cartridges.
16 */
17 public interface ActivityGraphFacade
18 extends StateMachineFacade
19 {
20 /**
21 * Indicates the metafacade type (used for metafacade mappings).
22 *
23 * @return boolean always <code>true</code>
24 */
25 public boolean isActivityGraphFacadeMetaType();
26
27 /**
28 * The set of action states contained in this activity graph.
29 * @return Collection<ActionStateFacade>
30 */
31 public Collection<ActionStateFacade> getActionStates();
32
33 /**
34 * The set of object flow states contained in this activity graph.
35 * @return Collection<ObjectFlowStateFacade>
36 */
37 public Collection<ObjectFlowStateFacade> getObjectFlowStates();
38
39 /**
40 * The set of partitions contained in this activity graph. Partitions are also known as
41 * swimlanes in UML.
42 * @return Collection<PartitionFacade>
43 */
44 public Collection<PartitionFacade> getPartitions();
45
46 /**
47 * The use-case owning this activity graph.
48 * @return UseCaseFacade
49 */
50 public UseCaseFacade getUseCase();
51 }