Re: The definitive truth about multiple inheritance [message #627764] |
Thu, 02 July 2009 21:53 |
Ed Merks Messages: 33142 Registered: July 2009 |
Senior Member |
|
|
Guillaume,
The UML project has an extended GenModel and has specialized some of the
templates for generating the code. Perhaps that's part of what's going
on...
I do have UML installed, so if you export to a zip the project with your
model, I should be able to reproduce what you're seeing and determine if
there's a bug in how EOperations are handled in a multiple inheritance
scenario...
I suspect that you need to use UML's extended GenModel if you extend the
UML model. I've added the UML2 newsgroup to the "to"list of the reply
for their comments about how one should extend UML2...
Guillaume Vauvert wrote:
> Ed,
>
> Ed Merks a écrit :
>>> So :
>>> - A inherits from Action
>>> - C inherits from Class
>> Class is a bit of a confusing name.
>>> - D inherits from both A and C
>>> So simple when it is clear !
>>>
>>> The generated code :
>>> - the class DImpl extends the class AImpl : it is OK.
>>> - the class DImpl implements the interface D ; the interface D
>>> extends the interface A and the interface C.
>>> - the class DImpl inherits methods from AImpl : so it implements
>>> the interface A;
>>> - the class DImpl contains methods that are declared in the
>>> interface C ;
>>> - BUT DImpl does not contain methods that are inherited by the
>>> interface C from the interface Class.
>> Did you declare all these methods in Ecore's version of Class? I'm
>> suspicious about that name...
> I am building a Modeling Language that extends UML.
> I am using platform:/plugin/org.eclipse.uml2.uml/model/UML.core as
> model of UML.
> The metaclass Class (using ECore) declares the EOperation
> "ownedOperation".
> In the generated class DImpl, I obtain a class that should contains
> the implementation of getOwnedReception() (from the interface C).
> Instead, I have a class DImpl that lacks this method ; so, Eclipse
> Java IDE saids :
> "The type DImpl must implement the inherited abstract method
> Class.getOwnedReception(String, EList<String>, EList<Type>)"
>
>>> And do you see a solution ... ?
>> I'd suggest you provide an example model that I can use to reproduce
>> the problem. Then I can tell you if the problem is your model or in
>> the framework.
> Even if my example is exactly what I descrived before, I can provide
> it, but how (future generations of newsgroups users must be able to
> see the model !) ?
>
> I feel the light closer ...
>
> Thanks !
>
> Guillaume Vauvert
> http://www.ixmas.org
Ed Merks
Professional Support: https://www.macromodeling.com/
|
|
|
Powered by
FUDForum. Page generated in 0.02836 seconds