Interface Interface

  • All Superinterfaces:
    Classifier, Comparable<Object>, Element, org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.EObject, MDWEObject, MDWObject, NamedElement, Namespace, org.eclipse.emf.common.notify.Notifier, PackageableElement, ParameterableElement, RedefinableElement, TemplateableElement, Type

    public interface Interface
    extends Classifier
    A representation of the model object 'Interface'. An interface is a kind of classifier that represents a declaration of a set of coherent public features and obligations. An interface specifies a contract; any instance of a classifier that realizes the interface must fulfill that contract. The obligations that may be associated with an interface are in the form of various kinds of constraints (such as pre- and post-conditions) or protocol specifications, which may impose ordering restrictions on interactions through the interface. Interfaces may include receptions (in addition to operations). Since an interface specifies conformance characteristics, it does not own detailed behavior specifications. Instead, interfaces may own a protocol state machine that specifies event sequences and pre/post conditions for the operations and receptions described by the interface.

    The following features are supported:

    See Also:
    UMLPackage.getInterface()
    • Method Detail

      • getOwnedAttributes

        MDWEList<Property> getOwnedAttributes()
        Returns the value of the 'Owned Attribute' containment reference list. The list contents are of type Property. The attributes (i.e. the properties) owned by the class.
        Returns:
        the value of the 'Owned Attribute' containment reference list.
        See Also:
        UMLPackage.getInterface_OwnedAttribute()
      • createOwnedAttribute

        Property createOwnedAttribute​(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 Attribute' 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:
        getOwnedAttributes()
      • createOwnedAttribute

        Property createOwnedAttribute​(String name,
                                      Type type)
        Creates a new Property, with the specified 'Name', and 'Type', and appends it to the 'Owned Attribute' 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:
        getOwnedAttributes()
      • getOwnedAttribute

        Property getOwnedAttribute​(String name,
                                   Type type)
        Retrieves the first Property with the specified 'Name', and 'Type' from the 'Owned Attribute' 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:
        getOwnedAttributes()
      • getOwnedAttribute

        Property getOwnedAttribute​(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 Attribute' 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:
        getOwnedAttributes()
      • getNestedClassifiers

        MDWEList<Classifier> getNestedClassifiers()
        Returns the value of the 'Nested Classifier' containment reference list. The list contents are of type Classifier. References all the Classifiers that are defined (nested) within the Class.
        Returns:
        the value of the 'Nested Classifier' containment reference list.
        See Also:
        UMLPackage.getInterface_NestedClassifier()
      • createNestedClassifier

        Classifier createNestedClassifier​(String name,
                                          org.eclipse.emf.ecore.EClass eClass)
        Creates a new Classifier, with the specified 'Name', and appends it to the ' Nested Classifier' containment reference list.
        Parameters:
        name - The 'Name' for the new Classifier, or null.
        eClass - The Ecore class of the Classifier to create.
        Returns:
        The new Classifier.
        See Also:
        getNestedClassifiers()
      • getNestedClassifier

        Classifier getNestedClassifier​(String name)
        Retrieves the first Classifier with the specified 'Name' from the ' Nested Classifier' containment reference list.
        Parameters:
        name - The 'Name' of the Classifier to retrieve, or null.
        Returns:
        The first Classifier with the specified 'Name', or null.
        See Also:
        getNestedClassifiers()
      • getNestedClassifier

        Classifier getNestedClassifier​(String name,
                                       boolean ignoreCase,
                                       org.eclipse.emf.ecore.EClass eClass,
                                       boolean createOnDemand)
        Retrieves the first Classifier with the specified 'Name' from the ' Nested Classifier' containment reference list.
        Parameters:
        name - The 'Name' of the Classifier to retrieve, or null.
        ignoreCase - Whether to ignore case in String comparisons.
        eClass - The Ecore class of the Classifier to retrieve, or null.
        createOnDemand - Whether to create a Classifier on demand if not found.
        Returns:
        The first Classifier with the specified 'Name', or null.
        See Also:
        getNestedClassifiers()
      • getRedefinedInterfaces

        MDWEList<Interface> getRedefinedInterfaces()
        Returns the value of the 'Redefined Interface' reference list. The list contents are of type Interface. References all the Interfaces redefined by this Interface.
        Returns:
        the value of the 'Redefined Interface' reference list.
        See Also:
        UMLPackage.getInterface_RedefinedInterface()
      • getRedefinedInterface

        Interface getRedefinedInterface​(String name)
        Retrieves the first Interface with the specified 'Name' from the ' Redefined Interface' reference list.
        Parameters:
        name - The 'Name' of the Interface to retrieve, or null.
        Returns:
        The first Interface with the specified 'Name', or null.
        See Also:
        getRedefinedInterfaces()
      • getRedefinedInterface

        Interface getRedefinedInterface​(String name,
                                        boolean ignoreCase)
        Retrieves the first Interface with the specified 'Name' from the ' Redefined Interface' reference list.
        Parameters:
        name - The 'Name' of the Interface to retrieve, or null.
        ignoreCase - Whether to ignore case in String comparisons.
        Returns:
        The first Interface with the specified 'Name', or null.
        See Also:
        getRedefinedInterfaces()
      • getOwnedReceptions

        MDWEList<Reception> getOwnedReceptions()
        Returns the value of the 'Owned Reception' containment reference list. The list contents are of type Reception. Receptions that objects providing this interface are willing to accept.
        Returns:
        the value of the 'Owned Reception' containment reference list.
        See Also:
        UMLPackage.getInterface_OwnedReception()
      • createOwnedReception

        Reception createOwnedReception​(String name,
                                       MDWEList<String> ownedParameterNames,
                                       MDWEList<? extends Type> ownedParameterTypes)
        Creates a new Reception, with the specified 'Name', ' Owned Parameter Names', and 'Owned Parameter Types', and appends it to the 'Owned Reception' containment reference list.
        Parameters:
        name - The 'Name' for the new Reception, or null.
        ownedParameterNames - The 'Owned Parameter Names' for the new Reception, or null.
        ownedParameterTypes - The 'Owned Parameter Types' for the new Reception, or null.
        Returns:
        The new Reception.
        See Also:
        getOwnedReceptions()
      • getOwnedReception

        Reception getOwnedReception​(String name,
                                    MDWEList<String> ownedParameterNames,
                                    MDWEList<? extends Type> ownedParameterTypes)
        Retrieves the first Reception with the specified 'Name', ' Owned Parameter Names', and 'Owned Parameter Types' from the 'Owned Reception' containment reference list.
        Parameters:
        name - The 'Name' of the Reception to retrieve, or null.
        ownedParameterNames - The 'Owned Parameter Names' of the Reception to retrieve, or null.
        ownedParameterTypes - The 'Owned Parameter Types' of the Reception to retrieve, or null.
        Returns:
        The first Reception with the specified 'Name', ' Owned Parameter Names', and 'Owned Parameter Types', or null.
        See Also:
        getOwnedReceptions()
      • getOwnedReception

        Reception getOwnedReception​(String name,
                                    MDWEList<String> ownedParameterNames,
                                    MDWEList<? extends Type> ownedParameterTypes,
                                    boolean ignoreCase,
                                    boolean createOnDemand)
        Retrieves the first Reception with the specified 'Name', ' Owned Parameter Names', and 'Owned Parameter Types' from the 'Owned Reception' containment reference list.
        Parameters:
        name - The 'Name' of the Reception to retrieve, or null.
        ownedParameterNames - The 'Owned Parameter Names' of the Reception to retrieve, or null.
        ownedParameterTypes - The 'Owned Parameter Types' of the Reception to retrieve, or null.
        ignoreCase - Whether to ignore case in String comparisons.
        createOnDemand - Whether to create a Reception on demand if not found.
        Returns:
        The first Reception with the specified 'Name', ' Owned Parameter Names', and 'Owned Parameter Types', or null.
        See Also:
        getOwnedReceptions()
      • setProtocol

        void setProtocol​(ProtocolStateMachine value)
        Sets the value of the 'Protocol' containment reference.
        Parameters:
        value - the new value of the 'Protocol' containment reference.
        See Also:
        getProtocol()
      • createOwnedOperation

        Operation createOwnedOperation​(String name,
                                       MDWEList<String> ownedParameterNames,
                                       MDWEList<? extends Type> ownedParameterTypes)
        Creates a new Operation, with the specified 'Name', ' Owned Parameter Names', and 'Owned Parameter Types', and appends it to the 'Owned Operation' containment reference list.
        Parameters:
        name - The 'Name' for the new Operation, or null.
        ownedParameterNames - The 'Owned Parameter Names' for the new Operation, or null.
        ownedParameterTypes - The 'Owned Parameter Types' for the new Operation, or null.
        Returns:
        The new Operation.
        See Also:
        getOwnedOperations()
      • getOwnedOperation

        Operation getOwnedOperation​(String name,
                                    MDWEList<String> ownedParameterNames,
                                    MDWEList<? extends Type> ownedParameterTypes)
        Retrieves the first Operation with the specified 'Name', ' Owned Parameter Names', and 'Owned Parameter Types' from the 'Owned Operation' containment reference list.
        Parameters:
        name - The 'Name' of the Operation to retrieve, or null.
        ownedParameterNames - The 'Owned Parameter Names' of the Operation to retrieve, or null.
        ownedParameterTypes - The 'Owned Parameter Types' of the Operation to retrieve, or null.
        Returns:
        The first Operation with the specified 'Name', ' Owned Parameter Names', and 'Owned Parameter Types', or null.
        See Also:
        getOwnedOperations()
      • getOwnedOperation

        Operation getOwnedOperation​(String name,
                                    MDWEList<String> ownedParameterNames,
                                    MDWEList<? extends Type> ownedParameterTypes,
                                    boolean ignoreCase,
                                    boolean createOnDemand)
        Retrieves the first Operation with the specified 'Name', ' Owned Parameter Names', and 'Owned Parameter Types' from the 'Owned Operation' containment reference list.
        Parameters:
        name - The 'Name' of the Operation to retrieve, or null.
        ownedParameterNames - The 'Owned Parameter Names' of the Operation to retrieve, or null.
        ownedParameterTypes - The 'Owned Parameter Types' of the Operation to retrieve, or null.
        ignoreCase - Whether to ignore case in String comparisons.
        createOnDemand - Whether to create a Operation on demand if not found.
        Returns:
        The first Operation with the specified 'Name', ' Owned Parameter Names', and 'Owned Parameter Types', or null.
        See Also:
        getOwnedOperations()
      • validateVisibility

        boolean validateVisibility​(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                   Map context)
        The visibility of all features owned by an interface must be public. self.feature->forAll(f | f.visibility = #public)
      • createOwnedOperation

        Operation createOwnedOperation​(String name,
                                       MDWEList<String> parameterNames,
                                       MDWEList<? extends Type> parameterTypes,
                                       Type returnType)
        Creates an operation with the specified name, parameter names, parameter types, and return type (or null) as an owned operation of this interface.
      • createOwnedAttribute

        Property createOwnedAttribute​(String name,
                                      Type type,
                                      int lower,
                                      int upper)
        Creates a property with the specified name, type, lower bound, and upper bound as an owned attribute of this interface.