Interface Association

    • Method Detail

      • isDerived

        boolean isDerived()
        Returns the value of the 'Is Derived' attribute. The default value is "false". Specifies whether the association is derived from other model elements such as other associations or constraints.
        Returns:
        the value of the 'Is Derived' attribute.
        See Also:
        setIsDerived(boolean), UMLPackage.getAssociation_IsDerived()
      • setIsDerived

        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()
      • getEndTypes

        MDWEList<Type> getEndTypes()
        Returns the value of the 'End Type' reference list. The list contents are of type Type. 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:
        UMLPackage.getAssociation_EndType()
      • getEndType

        Type getEndType​(String name)
        Retrieves the first Type with the specified 'Name' from the 'End Type' reference list.
        Parameters:
        name - The 'Name' of the Type to retrieve, or null.
        Returns:
        The first Type with the specified 'Name', or null.
        See Also:
        getEndTypes()
      • getEndType

        Type getEndType​(String name,
                        boolean ignoreCase,
                        org.eclipse.emf.ecore.EClass eClass)
        Retrieves the first Type with the specified 'Name' from the 'End Type' reference list.
        Parameters:
        name - The 'Name' of the Type to retrieve, or null.
        ignoreCase - Whether to ignore case in String comparisons.
        eClass - The Ecore class of the Type to retrieve, or null.
        Returns:
        The first Type with the specified 'Name', or null.
        See Also:
        getEndTypes()
      • getMemberEnd

        Property getMemberEnd​(String name,
                              Type type)
        Retrieves the first Property with the specified 'Name', and 'Type' from the 'Member End' reference list.
        Parameters:
        name - The 'Name' of the Property to retrieve, or null.
        type - The 'Type' of the Property to retrieve, or null.
        Returns:
        The first Property with the specified 'Name', and 'Type', or null.
        See Also:
        getMemberEnds()
      • getMemberEnd

        Property getMemberEnd​(String name,
                              Type type,
                              boolean ignoreCase,
                              org.eclipse.emf.ecore.EClass eClass)
        Retrieves the first Property with the specified 'Name', and 'Type' from the 'Member End' reference list.
        Parameters:
        name - The 'Name' of the Property to retrieve, or null.
        type - The 'Type' of the Property to retrieve, or null.
        ignoreCase - Whether to ignore case in String comparisons.
        eClass - The Ecore class of the Property to retrieve, or null.
        Returns:
        The first Property with the specified 'Name', and 'Type', or null.
        See Also:
        getMemberEnds()
      • getNavigableOwnedEnds

        MDWEList<Property> getNavigableOwnedEnds()
        Returns the value of the 'Navigable Owned End' reference list. The list contents are of type Property. The navigable ends that are owned by the association itself.
        Returns:
        the value of the 'Navigable Owned End' reference list.
        See Also:
        UMLPackage.getAssociation_NavigableOwnedEnd()
      • createNavigableOwnedEnd

        Property createNavigableOwnedEnd​(String name,
                                         Type type,
                                         org.eclipse.emf.ecore.EClass eClass)
        Creates a new Property, with the specified 'Name', and 'Type', and appends it to the 'Navigable Owned End' reference list.
        Parameters:
        name - The 'Name' for the new Property, or null.
        type - The 'Type' for the new Property, or null.
        eClass - The Ecore class of the Property to create.
        Returns:
        The new Property.
        See Also:
        getNavigableOwnedEnds()
      • createNavigableOwnedEnd

        Property createNavigableOwnedEnd​(String name,
                                         Type type)
        Creates a new Property, with the specified 'Name', and 'Type', and appends it to the 'Navigable Owned End' reference list.
        Parameters:
        name - The 'Name' for the new Property, or null.
        type - The 'Type' for the new Property, or null.
        Returns:
        The new Property.
        See Also:
        getNavigableOwnedEnds()
      • getNavigableOwnedEnd

        Property getNavigableOwnedEnd​(String name,
                                      Type type)
        Retrieves the first Property with the specified 'Name', and 'Type' from the 'Navigable Owned End' reference list.
        Parameters:
        name - The 'Name' of the Property to retrieve, or null.
        type - The 'Type' of the Property to retrieve, or null.
        Returns:
        The first Property with the specified 'Name', and 'Type', or null.
        See Also:
        getNavigableOwnedEnds()
      • getNavigableOwnedEnd

        Property getNavigableOwnedEnd​(String name,
                                      Type type,
                                      boolean ignoreCase,
                                      org.eclipse.emf.ecore.EClass eClass,
                                      boolean createOnDemand)
        Retrieves the first Property with the specified 'Name', and 'Type' from the 'Navigable Owned End' reference list.
        Parameters:
        name - The 'Name' of the Property to retrieve, or null.
        type - The 'Type' of the Property to retrieve, or null.
        ignoreCase - Whether to ignore case in String comparisons.
        eClass - The Ecore class of the Property to retrieve, or null.
        createOnDemand - Whether to create a Property on demand if not found.
        Returns:
        The first Property with the specified 'Name', and 'Type', or null.
        See Also:
        getNavigableOwnedEnds()
      • createOwnedEnd

        Property createOwnedEnd​(String name,
                                Type type,
                                org.eclipse.emf.ecore.EClass eClass)
        Creates a new Property, with the specified 'Name', and 'Type', and appends it to the 'Owned End' containment reference list.
        Parameters:
        name - The 'Name' for the new Property, or null.
        type - The 'Type' for the new Property, or null.
        eClass - The Ecore class of the Property to create.
        Returns:
        The new Property.
        See Also:
        getOwnedEnds()
      • createOwnedEnd

        Property createOwnedEnd​(String name,
                                Type type)
        Creates a new Property, with the specified 'Name', and 'Type', and appends it to the 'Owned End' containment reference list.
        Parameters:
        name - The 'Name' for the new Property, or null.
        type - The 'Type' for the new Property, or null.
        Returns:
        The new Property.
        See Also:
        getOwnedEnds()
      • getOwnedEnd

        Property getOwnedEnd​(String name,
                             Type type)
        Retrieves the first Property with the specified 'Name', and 'Type' from the 'Owned End' containment reference list.
        Parameters:
        name - The 'Name' of the Property to retrieve, or null.
        type - The 'Type' of the Property to retrieve, or null.
        Returns:
        The first Property with the specified 'Name', and 'Type', or null.
        See Also:
        getOwnedEnds()
      • getOwnedEnd

        Property getOwnedEnd​(String name,
                             Type type,
                             boolean ignoreCase,
                             org.eclipse.emf.ecore.EClass eClass,
                             boolean createOnDemand)
        Retrieves the first Property with the specified 'Name', and 'Type' from the 'Owned End' containment reference list.
        Parameters:
        name - The 'Name' of the Property to retrieve, or null.
        type - The 'Type' of the Property to retrieve, or null.
        ignoreCase - Whether to ignore case in String comparisons.
        eClass - The Ecore class of the Property to retrieve, or null.
        createOnDemand - Whether to create a Property on demand if not found.
        Returns:
        The first Property with the specified 'Name', and 'Type', or null.
        See Also:
        getOwnedEnds()
      • validateSpecializedEndNumber

        boolean validateSpecializedEndNumber​(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                             Map context)
        An association specializing another association has the same number of ends as the other association. self.parents()->forAll(p | p.memberEnd.size() = self.memberEnd.size())
      • validateSpecializedEndTypes

        boolean validateSpecializedEndTypes​(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                            Map context)
        When an association specializes another association, every end of the specific association corresponds to an end of the general association, and the specific end reaches the same type or a subtype of the more general end. true
      • validateBinaryAssociations

        boolean validateBinaryAssociations​(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                           Map context)
        Only binary associations can be aggregations. self.memberEnd->exists(aggregation <> Aggregation::none) implies self.memberEnd->size() = 2
      • validateAssociationEnds

        boolean validateAssociationEnds​(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                        Map context)
        Association ends of associations with more than two ends must be owned by the association. if memberEnd->size() > 2 then ownedEnd->includesAll(memberEnd)
      • isBinary

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