001// license-header java merge-point
002//
003// Attention: generated code (by Metafacade.vsl) - do not modify!
004//
005package org.andromda.metafacades.uml;
006
007/**
008 * State machines can be used to express the behavior of part of a system. Behavior is modeled as a
009 * traversal of a graph of state nodes interconnected by one or more joined transition arcs that are
010 * triggered by the dispatching of series of (event) occurrences. During this traversal, the state
011 * machine executes a series of activities associated with various elements of the state machine.
012 * Not implmented for UML2.
013 *
014 * Metafacade interface to be used by AndroMDA cartridges.
015 */
016public interface SubactivityStateFacade
017    extends StateFacade
018{
019    /**
020     * Indicates the metafacade type (used for metafacade mappings).
021     *
022     * @return boolean always <code>true</code>
023     */
024    public boolean isSubactivityStateFacadeMetaType();
025
026    /**
027     * State machines can be used to express the behavior of part of a system. Behavior is modeled
028     * as a
029     * traversal of a graph of state nodes interconnected by one or more joined transition arcs that
030     * are
031     * triggered by the dispatching of series of (event) occurrences. During this traversal, the
032     * state
033     * machine executes a series of activities associated with various elements of the state
034     * machine.
035     * @return StateMachineFacade
036     */
037    public StateMachineFacade getSubmachine();
038
039    /**
040     * TODO: Model Documentation for org.andromda.metafacades.uml.SubactivityStateFacade.dynamic
041     * @return boolean
042     */
043    public boolean isDynamic();
044}