001// license-header java merge-point
002//
003// Attention: generated code (by Metafacade.vsl) - do not modify!
004//
005package org.andromda.metafacades.uml;
006
007import java.util.List;
008
009/**
010 * A final state represents the end of a use-case, in a "front-end" application this means its the
011 * transition into the next front-end use case.
012 *
013 * Metafacade interface to be used by AndroMDA cartridges.
014 */
015public interface FrontEndFinalState
016    extends FinalStateFacade
017{
018    /**
019     * Indicates the metafacade type (used for metafacade mappings).
020     *
021     * @return boolean always <code>true</code>
022     */
023    public boolean isFrontEndFinalStateMetaType();
024
025    /**
026     * Parameters that are directly entering this final state, they will be able to survive a trip
027     * to the next use-case.
028     * @return List<FrontEndParameter>
029     */
030    public List<FrontEndParameter> getInterUseCaseParameters();
031
032    /**
033     * The use case the final state is "targetting".
034     * @return FrontEndUseCase
035     */
036    public FrontEndUseCase getTargetUseCase();
037
038    /**
039     * Indicates if this front end final state is contained within a FrontEndUseCase.
040     * @return boolean
041     */
042    public boolean isContainedInFrontEndUseCase();
043}