org.eclipse.uml2
Interface Association

All Superinterfaces:
Classifier, Element, EModelElement, EObject, NamedElement, Namespace, Notifier, PackageableElement, ParameterableElement, RedefinableElement, Relationship, TemplateableElement, Type
All Known Subinterfaces:
AssociationClass, CommunicationPath, Extension

public interface Association
extends Classifier, Relationship

A representation of the model object 'Association'. An association specifies a semantic relationship that can occur between typed instances. It has at least two ends represented by properties, each of which is connected to the type of the end. More than one end of the association may have the same type. When a property is owned by an association it represents a non-navigable end of the association. In this case the property does not appear in the namespace of any of the associated classifiers. When a property at an end of an association is owned by one of the associated classifiers it represents a navigable end of the association. In this case the property is also an attribute of the associated classifier. Only binary associations may have navigable ends.

The following features are supported:

See Also:
UML2Package.getAssociation()

Field Summary
static java.lang.String copyright
           
 
Fields inherited from interface org.eclipse.uml2.NamedElement
SEPARATOR
 
Method Summary
 Property createOwnedEnd()
          Creates a Property and appends it to the 'Owned End' containment reference list
 Property createOwnedEnd(EClass eClass)
          Creates a Property and appends it to the 'Owned End' containment reference list
 Type getEndType(java.lang.String name)
          Retrieves the Type with the specified 'Name' from the 'End Type' reference list
 EList getEndTypes()
          Returns the value of the 'End Type' reference list.
 Property getMemberEnd(java.lang.String name)
          Retrieves the Property with the specified 'Name' from the 'Member End' reference list
 EList getMemberEnds()
          Returns the value of the 'Member End' reference list.
 Property getOwnedEnd(java.lang.String name)
          Retrieves the Property with the specified 'Name' from the 'Owned End' containment reference list
 EList getOwnedEnds()
          Returns the value of the 'Owned End' containment reference list.
 boolean isBinary()
          Determines whether this association is a binary association, i.e. whether it has exactly two member ends.
 boolean isDerived()
          Returns the value of the 'Is Derived' attribute.
 void setIsDerived(boolean value)
          Sets the value of the 'Is Derived' attribute
 
Methods inherited from interface org.eclipse.uml2.Classifier
allFeatures, allParents, conformsTo, createGeneralization, createGeneralization, createGeneralization, createOccurrence, createOccurrence, createOwnedUseCase, createOwnedUseCase, createSubstitution, createSubstitution, general, getAttribute, getAttributes, getFeature, getFeatures, getGeneral, getGeneralizations, getGenerals, getInheritedMember, getInheritedMembers, getOccurrence, getOccurrences, getOwnedUseCase, getOwnedUseCases, getPowertypeExtent, getPowertypeExtents, getRedefinedClassifier, getRedefinedClassifiers, getRepresentation, getSubstitution, getSubstitutions, getUseCase, getUseCases, getUsedInterfaces, hasVisibilityOf, inherit, inheritableMembers, inheritedMember, isAbstract, maySpecializeType, parents, setIsAbstract, setRepresentation, validateGeneralEqualsParents, validateInheritedMember, validateNoCyclesInGeneralization, validateSpecializeType
 
Methods inherited from interface org.eclipse.uml2.Namespace
createElementImport, createElementImport, createOwnedRule, createOwnedRule, createPackageImport, createPackageImport, excludeCollisions, getElementImports, getImportedMember, getImportedMembers, getImportedPackages, getMember, getMembers, getNamesOfMember, getOwnedMember, getOwnedMembers, getOwnedRule, getOwnedRules, getPackageImports, importedMember, importElement, importMembers, importPackage, membersAreDistinguishable, validateImportedMemberDerived, validateMembersAreDistinguishable
 
Methods inherited from interface org.eclipse.uml2.NamedElement
allNamespaces, createDependency, createNameExpression, createNameExpression, getClientDependencies, getClientDependency, getLabel, getLabel, getName, getNameExpression, getNamespace, getQualifiedName, getVisibility, isDistinguishableFrom, qualifiedName, separator, setName, setNameExpression, setVisibility, validateNoName, validateQualifiedName, validateVisibilityNeedsOwnership
 
Methods inherited from interface org.eclipse.uml2.TemplateableElement
createOwnedTemplateSignature, createOwnedTemplateSignature, createTemplateBinding, createTemplateBinding, getOwnedTemplateSignature, getTemplateBindings, parameterableElements, setOwnedTemplateSignature
 
Methods inherited from interface org.eclipse.uml2.Element
addKeyword, allOwnedElements, apply, createEAnnotation, createOwnedComment, createOwnedComment, destroy, getApplicableStereotype, getApplicableStereotypes, getAppliedStereotype, getAppliedStereotypes, getAppliedVersion, getKeywords, getModel, getNearestPackage, getOwnedComments, getOwnedElements, getOwner, getValue, hasKeyword, hasValue, isApplied, isRequired, mustBeOwned, removeKeyword, setValue, unapply, validateHasOwner, validateNotOwnSelf
 
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
getEAnnotation, getEAnnotations
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 
Methods inherited from interface org.eclipse.uml2.Type
conformsTo, createAssociation, getPackage
 
Methods inherited from interface org.eclipse.uml2.PackageableElement
getPackageableElement_visibility, setPackageableElement_visibility
 
Methods inherited from interface org.eclipse.uml2.ParameterableElement
getOwningParameter, getTemplateParameter, setOwningParameter, setTemplateParameter
 
Methods inherited from interface org.eclipse.uml2.RedefinableElement
getRedefinedElement, getRedefinedElements, getRedefinitionContext, getRedefinitionContexts, isConsistentWith, isLeaf, isRedefinitionContextValid, setIsLeaf, validateRedefinitionConsistent, validateRedefinitionContextValid
 
Methods inherited from interface org.eclipse.uml2.Relationship
getRelatedElements
 

Field Detail

copyright

public static final java.lang.String copyright

See Also:
Constant Field Values
Method Detail

isDerived

public boolean isDerived()
Returns the value of the 'Is Derived' attribute. The default value is "false".

If the meaning of the 'Is Derived' attribute isn't clear, there really should be more of a description here...

Specifies whether the association is derived from other model elements such as other associations or constraints. The default value is false.

Returns:
the value of the 'Is Derived' attribute.
See Also:
setIsDerived(boolean), UML2Package.getAssociation_IsDerived()

setIsDerived

public void setIsDerived(boolean value)
Sets the value of the 'Is Derived' attribute.

Parameters:
value - the new value of the 'Is Derived' attribute.
See Also:
isDerived()

getOwnedEnds

public EList getOwnedEnds()
Returns the value of the 'Owned End' containment reference list. The list contents are of type Property. It is bidirectional and its opposite is 'Owning Association'.

If the meaning of the 'Owned End' containment reference list isn't clear, there really should be more of a description here...

The non-navigable ends that are owned by the association itself. This is an ordered association. Subsets Association::memberEnd, Classifier::feature, and Namespace::owned- Member.

Returns:
the value of the 'Owned End' containment reference list.
See Also:
UML2Package.getAssociation_OwnedEnd(), Property.getOwningAssociation()

getOwnedEnd

public Property getOwnedEnd(java.lang.String name)
Retrieves the Property with the specified 'Name' from the 'Owned End' containment reference list.

Parameters:
name - The 'Name' of the Property to retrieve.
Returns:
The Property with the specified 'Name', or null.
See Also:
getOwnedEnds()

createOwnedEnd

public Property createOwnedEnd(EClass eClass)
Creates a Property and appends it to the 'Owned End' containment reference list.

Parameters:
eClass - The Ecore class of the Property to create.
Returns:
The new Property.
See Also:
getOwnedEnds()

createOwnedEnd

public Property createOwnedEnd()
Creates a Property and appends it to the 'Owned End' containment reference list.

Returns:
The new Property.
See Also:
getOwnedEnds()

getEndTypes

public EList getEndTypes()
Returns the value of the 'End Type' reference list. The list contents are of type Type.

If the meaning of the 'End Type' reference list isn't clear, there really should be more of a description here...

References the classifiers that are used as types of the ends of the association.

Returns:
the value of the 'End Type' reference list.
See Also:
UML2Package.getAssociation_EndType()

getEndType

public Type getEndType(java.lang.String name)
Retrieves the Type with the specified 'Name' from the 'End Type' reference list.

Parameters:
name - The 'Name' of the Type to retrieve.
Returns:
The Type with the specified 'Name', or null.
See Also:
getEndTypes()

getMemberEnds

public EList getMemberEnds()
Returns the value of the 'Member End' reference list. The list contents are of type Property. It is bidirectional and its opposite is 'Association'.

If the meaning of the 'Member End' reference list isn't clear, there really should be more of a description here...

Each end represents participation of instances of the classifier connected to the end in links of the association. This is an ordered association. Subsets Namespace::member.

Returns:
the value of the 'Member End' reference list.
See Also:
UML2Package.getAssociation_MemberEnd(), Property.getAssociation()

getMemberEnd

public Property getMemberEnd(java.lang.String name)
Retrieves the Property with the specified 'Name' from the 'Member End' reference list.

Parameters:
name - The 'Name' of the Property to retrieve.
Returns:
The Property with the specified 'Name', or null.
See Also:
getMemberEnds()

isBinary

public boolean isBinary()
Determines whether this association is a binary association, i.e. whether it has exactly two member ends.

Returns:
true if this association is binary; false otherwise.

Copyright 2003, 2005 IBM Corporation and others.
All Rights Reserved.