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.Collection;
008
009/**
010 * A model element that has both association and class properties. An AssociationClass can be seen
011 * as an association that also has class properties, or as a class that also has association
012 * properties. It not only connects a set of classifiers but also defines a set of features that
013 * belong to the relationship itself and not to any of the classifiers.
014 *
015 * Metafacade interface to be used by AndroMDA cartridges.
016 */
017public interface AssociationClassFacade
018    extends AssociationFacade, ClassifierFacade
019{
020    /**
021     * Indicates the metafacade type (used for metafacade mappings).
022     *
023     * @return boolean always <code>true</code>
024     */
025    public boolean isAssociationClassFacadeMetaType();
026
027    /**
028     * The association ends visible to this association class.
029     * @return Collection<AssociationEndFacade>
030     */
031    public Collection<AssociationEndFacade> getConnectionAssociationEnds();
032}