/*----------------------------------------------------------------------------
Copyright © 1998 Object International Software GmbH
----------------------------------------------------------------------------*/
package oisoft.togetherx.scriptapi.UML;
//------------------------------------------------------------------------------
/**
* Presents Association link.
* Here an association is a connection between two classifiers
* in class diagram. An association represents
* that objects of two classes have a link between
* them, meaning for example, that they
* "know about each other", "are connected to",
* etc.
* There are three kind of association - simple
* association, aggregation and composition.
* Use <i>getLinkKind()</i> inherited from <i>UMLLink</i>
* to check link kind.
* An association consists of at least two
* association end, each of them represents a
* connection of the association to the corresponding
* classifier.
* Some information about association
* you can get from base interface.
* Use <i>UMLElement.getName()</i> for getting association
* label.
* @version 2.1.01 12.03.1998
* @author Andrei Ivanov
* @see UMLAssociationEnd
* @see UMLClassifier
* @see UMLElement
*/
public interface UMLAssociation extends UMLLink {
/**
@clientCardinality 1
@supplierCardinality 2
*/
/*# UMLAssociationEnd lnkUnnamed*/
public static final String ASSOCIATION_STEREOTYPE = "<<association>>";
public static final String PARAMETER_STEREOTYPE = "<<parameter>>";
public static final String LOCAL_STEREOTYPE = "<<local>>";
public static final String GLOBAL_STEREOTYPE = "<<global>>";
public static final String SELF_STEREOTYPE = "<<self>>";
/**
* Returns association stereotype of the
* association. Indicate kind of implementation.
* @return One of the string constants.
* @see UMLAssociation#ASSOCIATION_STEREOTYPE
* @see UMLAssociation#PARAMETER_STEREOTYPE
* @see UMLAssociation#LOCAL_STEREOTYPE
* @see UMLAssociation#GLOBAL_STEREOTYPE
* @see UMLAssociation#SELF_STEREOTYPE
*/
String getImplementationStereotype();
/**
* Returns attribute which implements
* this association.
*/
UMLAttribute getAttribute();
/**
* Returns source of association as
* classifier.
*/
UMLClassifier getSource();
/**
* Returns destination of association
* as classifier.
*/
UMLClassifier getDest();
/**
* Returns association end representing
* connection of the association to the source
* classifier.
* @see UMLClassifier
*/
UMLAssociationEnd getSourceAssociationEnd();
/**
* Returns association end representing
* connection of the association to the destination
* classifier.
* @see UMLClassifier
*/
UMLAssociationEnd getDestAssociationEnd();
/**
* Returns Association class that represents this
* association.
* Association class is an association
* that is also a class. In the UML
* metamodel association class is a
* declaration of a semantic relationship
* between classifier which has a set of
* features of its own.
*/
UMLClass getAssociationClass();
}
//------------------------------------------------------------------------------
|