Hi Cyrille,
I see that you added the mmGetProperty: / mmSetProperty:to methods back in MooseEntity. They are not correct because they depend on the internals of the PropertyDescription, and they change the semantics of the method defined in Object:
mmGetProperty: aFM3PropertyDescription (self class canUnderstand: aFM3PropertyDescription implementingSelector) ifTrue: [ ^ self perform: aFM3PropertyDescription implementingSelector ] ifFalse: [ ^ self propertyNamed: aFM3PropertyDescription name ].
mmSetProperty: aFM3PropertyDescription to: value (self class canUnderstand: aFM3PropertyDescription implementingSelector asMutator) ifTrue: [ self perform: aFM3PropertyDescription implementingSelector asMutator with: value ] ifFalse: [self propertyNamed: aFM3PropertyDescription name put: value].
This breaks Metanool and it is not nice. The comment of your commit says that you are using it in Menssana. I am sure we can find another solution. So, could you describe the scenario you are using it in?
Cheers, Doru
-- www.tudorgirba.com
"Beauty is where we see it."