Interface CollaborationUse

  • All Superinterfaces:
    Comparable<Object>, Element, org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.EObject, MDWEObject, MDWObject, 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()
    • 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

        MDWEList<Dependency> getRoleBindings()
        Returns the value of the 'Role Binding' containment reference list. The list contents are of type Dependency. 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​(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()
      • getRoleBinding

        Dependency getRoleBinding​(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​(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,
                                       Map 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
      • validateEveryRole

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

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