Interface ComposedStructure

  • All Superinterfaces:
    org.eclipse.emf.cdo.CDOObject, org.eclipse.emf.cdo.common.id.CDOWithID, Entity, EObject, de.uka.ipd.sdq.identifier.Identifier, NamedElement, Notifier
    All Known Subinterfaces:
    ComposedProvidingRequiringEntity, CompositeComponent, SubSystem, System
    All Known Implementing Classes:
    ComposedProvidingRequiringEntityImpl, ComposedStructureImpl, CompositeComponentImpl, SubSystemImpl, SystemImpl

    public interface ComposedStructure
    extends Entity
    A representation of the model object 'Composed Structure'. TODO/FIXME: The distinction between ComposedStructure and ComposedProvidingRequiringStructure does not make sense at the moment, because the ComposedStructure already talks about inner provided / required delegation connectors, which only make sense if there are outer roles for interfaces -> ComposedProvidingRequiringStructure. IDEA: Move the delegation connector attributes to ComposedProvidingRequiringStructure. I'm not sure about the assembly connectors. SEE ALSO: ComposedProvidingRequiringStructure However, as AssemblyContexts of ComposedStructure always contain InterfaceProvidingRequiringEntities at the moment, the above might not help... -- Anne

    The following features are supported:

    See Also:
    CompositionPackage.getComposedStructure()
    Generated class or method.
    EMF model class or method.
    abstract="true" annotation="http://www.eclipse.org/emf/2002/Ecore constraints='multipleConnectorsConstraint multipleConnectorsConstraintForAssemblyConnectors'" annotation="http://www.eclipse.org/emf/2002/Ecore/OCL multipleConnectorsConstraint='self.connectors__ComposedStructure->select(conn | conn.oclIsTypeOf(pcm::core::composition::ProvidedDelegationConnector)).oclAsType(pcm::core::composition::ProvidedDelegationConnector)->forAll( c1, c2 | c1 <> c2 implies c1.outerProvidedRole_ProvidedDelegationConnector <> c2.outerProvidedRole_ProvidedDelegationConnector)\r\n' multipleConnectorsConstraintForAssemblyConnectors='self.connectors__ComposedStructure->select(conn | conn.oclIsTypeOf(pcm::core::composition::AssemblyConnector)).oclAsType(AssemblyConnector)->forAll( c1, c2 | ( (c1 <> c2) and ( c1.requiringAssemblyContext_AssemblyConnector = c2.requiringAssemblyContext_AssemblyConnector ) ) implies c1.requiredRole_AssemblyConnector <> c2.requiredRole_AssemblyConnector )\r\n'"