org.eclipse.uml2.uml
Interface CollaborationUse

All Superinterfaces:
Element, org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.EObject, NamedElement, org.eclipse.emf.common.notify.Notifier

public interface CollaborationUse
extends NamedElement

A representation of the model object 'Collaboration Use'. A collaboration use represents one particular use of a collaboration to explain the relationships between the properties of a classifier. A collaboration use shows how the pattern described by a collaboration is applied in a given context, by binding specific entities from that context to the roles of the collaboration. Depending on the context, these entities could be structural features of a classifier, instance specifications, or even roles in some containing collaboration. There may be multiple occurrences of a given collaboration within a classifier, each involving a different set of roles and connectors. A given role or connector may be involved in multiple occurrences of the same or different collaborations. Associated dependencies map features of the collaboration type to features in the classifier. These dependencies indicate which role in the classifier plays which role in the collaboration.

The following features are supported:

See Also:
UMLPackage.getCollaborationUse()

Field Summary
 
Fields inherited from interface org.eclipse.uml2.uml.NamedElement
SEPARATOR
 
Method Summary
 Dependency createRoleBinding(java.lang.String name)
          Creates a new Dependency, with the specified 'Name', and appends it to the 'Role Binding' containment reference list
 Dependency createRoleBinding(java.lang.String name, org.eclipse.emf.ecore.EClass eClass)
          Creates a new Dependency, with the specified 'Name', and appends it to the 'Role Binding' containment reference list
 Dependency getRoleBinding(java.lang.String name)
          Retrieves the first Dependency with the specified 'Name' from the 'Role Binding' containment reference list
 Dependency getRoleBinding(java.lang.String name, boolean ignoreCase, org.eclipse.emf.ecore.EClass eClass, boolean createOnDemand)
          Retrieves the first Dependency with the specified 'Name' from the 'Role Binding' containment reference list
 org.eclipse.emf.common.util.EList<Dependency> getRoleBindings()
          Returns the value of the 'Role Binding' containment reference list.
 Collaboration getType()
          Returns the value of the 'Type' reference
 void setType(Collaboration value)
          Sets the value of the 'Type' reference
 boolean validateClientElements(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          All the client elements of a roleBinding are in one classifier and all supplier elements of a roleBinding are in one collaboration and they are compatible.
 boolean validateConnectors(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          The connectors in the classifier connect according to the connectors in the collaboration true
 boolean validateEveryRole(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          Every role in the collaboration is bound within the collaboration use to a connectable element within the classifier or operation.
 
Methods inherited from interface org.eclipse.uml2.uml.NamedElement
allNamespaces, allOwningPackages, createDependency, createNameExpression, createUsage, getClientDependencies, getClientDependency, getClientDependency, getLabel, getLabel, getName, getNameExpression, getNamespace, getQualifiedName, getVisibility, isDistinguishableFrom, isSetName, isSetVisibility, separator, setName, setNameExpression, setVisibility, unsetName, unsetVisibility, validateHasNoQualifiedName, validateHasQualifiedName, validateVisibilityNeedsOwnership
 
Methods inherited from interface org.eclipse.uml2.uml.Element
addKeyword, allOwnedElements, applyStereotype, createEAnnotation, createOwnedComment, destroy, getApplicableStereotype, getApplicableStereotypes, getAppliedStereotype, getAppliedStereotypes, getAppliedSubstereotype, getAppliedSubstereotypes, getKeywords, getModel, getNearestPackage, getOwnedComments, getOwnedElements, getOwner, getRelationships, getRelationships, getRequiredStereotype, getRequiredStereotypes, getSourceDirectedRelationships, getSourceDirectedRelationships, getStereotypeApplication, getStereotypeApplications, getTargetDirectedRelationships, getTargetDirectedRelationships, getValue, hasKeyword, hasValue, isStereotypeApplicable, isStereotypeApplied, isStereotypeRequired, mustBeOwned, removeKeyword, setValue, unapplyStereotype, 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
 

Method Detail

getType

Collaboration getType()
Returns the value of the 'Type' reference. The collaboration which is used in this occurrence. The collaboration defines the cooperation between its roles which are mapped to properties of the classifier owning the collaboration use.

Returns:
the value of the 'Type' reference.
See Also:
setType(Collaboration), UMLPackage.getCollaborationUse_Type()

setType

void setType(Collaboration value)
Sets the value of the 'Type' reference.

Parameters:
value - the new value of the 'Type' reference.
See Also:
getType()

getRoleBindings

org.eclipse.emf.common.util.EList<Dependency> getRoleBindings()
Returns the value of the 'Role Binding' containment reference list. The list contents are of type Dependency.

This feature subsets the following features:

A mapping between features of the collaboration type and features of the classifier or operation. This mapping indicates which connectable element of the classifier or operation plays which role(s) in the collaboration. A connectable element may be bound to multiple roles in the same collaboration use (that is, it may play multiple roles).

Returns:
the value of the 'Role Binding' containment reference list.
See Also:
UMLPackage.getCollaborationUse_RoleBinding()

createRoleBinding

Dependency createRoleBinding(java.lang.String name,
                             org.eclipse.emf.ecore.EClass eClass)
Creates a new Dependency, with the specified 'Name', and appends it to the 'Role Binding' containment reference list.

Parameters:
name - The 'Name' for the new Dependency, or null.
eClass - The Ecore class of the Dependency to create.
Returns:
The new Dependency.
See Also:
getRoleBindings()

createRoleBinding

Dependency createRoleBinding(java.lang.String name)
Creates a new Dependency, with the specified 'Name', and appends it to the 'Role Binding' containment reference list.

Parameters:
name - The 'Name' for the new Dependency, or null.
Returns:
The new Dependency.
See Also:
getRoleBindings()

getRoleBinding

Dependency getRoleBinding(java.lang.String name)
Retrieves the first Dependency with the specified 'Name' from the 'Role Binding' containment reference list.

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

getRoleBinding

Dependency getRoleBinding(java.lang.String name,
                          boolean ignoreCase,
                          org.eclipse.emf.ecore.EClass eClass,
                          boolean createOnDemand)
Retrieves the first Dependency with the specified 'Name' from the 'Role Binding' containment reference list.

Parameters:
name - The 'Name' of the Dependency to retrieve, or null.
ignoreCase - Whether to ignore case in String comparisons.
eClass - The Ecore class of the Dependency to retrieve, or null.
createOnDemand - Whether to create a Dependency on demand if not found.
Returns:
The first Dependency with the specified 'Name', or null.
See Also:
getRoleBindings()

validateClientElements

boolean validateClientElements(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                               java.util.Map<java.lang.Object,java.lang.Object> context)
All the client elements of a roleBinding are in one classifier and all supplier elements of a roleBinding are in one collaboration and they are compatible. true

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

validateEveryRole

boolean validateEveryRole(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                          java.util.Map<java.lang.Object,java.lang.Object> context)
Every role in the collaboration is bound within the collaboration use to a connectable element within the classifier or operation. true

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

validateConnectors

boolean validateConnectors(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                           java.util.Map<java.lang.Object,java.lang.Object> context)
The connectors in the classifier connect according to the connectors in the collaboration true

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

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