It is!
We tend to have everything described in the meta meta model (fame) in a way that using
existing tools with new models is just to add descriptions at the right place in the
model. These additions are really easy to made (one method to change and 2 to add) and it
simplify a lot the implementation in the tools.
Cheers,
Vincent
-----Message d'origine-----
De : Moose-dev [mailto:moose-dev-bounces@list.inf.unibe.ch] De la part de
Tudor Girba
Envoyé : lundi 6 février 2017 10:56
À : Moose-related development
Objet : [Moose-dev] Re: New pragmas in FAME for associations
Hi,
That looks really cool!
Cheers,
Doru
On Feb 6, 2017, at 10:40 AM, Blondeau Vincent
<vincent.blondeau(a)worldline.com> wrote:
> -----Message d'origine-----
> De : Moose-dev [mailto:moose-dev-bounces@list.inf.unibe.ch] De la
> part de Tudor Girba Envoyé : vendredi 3 février 2017 18:13 À :
> Moose-related development Objet : [Moose-dev] Re: New pragmas in
FAME
for
associations
Hi,
Interesting.
Could you detail how MooseQuery uses these now?
Of course.
Before, the code to access the TEntityMetaLevelDependency >>
incomingMSEPorperties was :
self dependencyFM3PropertyDescription select: [ :p |
(p type implementingClass msePropertiesWithMethodNameEqualsTo:
p)
ifNotNil: [ (self
withAllSuperclasses collect: [ :c | c name asString
]) includes: (p type implementingClass
msePropertiesWithMethodNameEqualsTo: p) arguments second ]
ifNil: [ false ] ]) ].
Now, it is just:
self dependencyFM3PropertyDescription select: [ :p | p opposite
isTarget ]) ].
Based at 100% on fame metadescriptions. I still
kept the caching of the
result because the first solution was computing intensive, but I think that
with this new solution, we can remove this mechanism.
It also changed MooseIncomingQueryResult >> isOppositeMultivalued:
that is now really based on Fame.
And it removed ugly code like: "self
lookupSelector: #from" in the
fromMethod and toMethod.
Cheers,
Vincent
>
> Cheers,
> Doru
>
>
>> On Feb 3, 2017, at 5:38 PM, Blondeau Vincent
> <vincent.blondeau(a)worldline.com> wrote:
>>
>> Hello,
>>
>> In our Fame meta meta model, some information about the source and
> target selector for the associations were missing. It was hard to
> extend the model with new associations.
>>
>> With the help of Anne, I added the pragma <source> representing the
> incoming link of the association and <target> representing the
> outgoing link of the association (see FAMIXAssociation >> #from , #to for
usage).
>>
>> In Fame, it is represented in FM3PropertyDescription by isTarget and
> isSource (false by default).
>>
>> All the tests related to this change are now green in Jenkins and
>> some
> additional tests should be added to cover this new functionality.
>>
>> MooseQuery is now based on these features.
>>
>> Cheers,
>> Vincent
>>
>>
>>
>
!!!********************************************************
> ***********
>> ****************** "Ce message et les pièces jointes sont
>> confidentiels et réservés à l'usage exclusif de ses destinataires.
>> Il peut
> également être protégé par le secret professionnel. Si vous recevez
> ce message par erreur, merci d'en avertir immédiatement l'expéditeur
> et de le détruire. L'intégrité du message ne pouvant être assurée sur
> Internet, la responsabilité de Worldline ne pourra être recherchée
> quant au contenu de ce message. Bien que les meilleurs efforts soient
> faits pour maintenir cette transmission exempte de tout virus,
> l'expéditeur ne donne aucune garantie à cet égard et sa
> responsabilité ne saurait être recherchée pour tout dommage résultant
d'un virus transmis.
>>
>> This e-mail and the documents attached are confidential and intended
> solely for the addressee; it may also be privileged. If you receive
> this e-mail in error, please notify the sender immediately and
> destroy it. As its integrity cannot be secured on the Internet, the
> Worldline liability cannot be triggered for the message content.
> Although the sender endeavours to maintain a computer virus-free
> network, the sender does not warrant that this transmission is
> virus-free and will not be liable for any damages resulting from any virus
transmitted.!!!"
_______________________________________________
Moose-dev mailing list
Moose-dev(a)list.inf.unibe.ch
https://www.list.inf.unibe.ch/listinfo/moose-dev
--
www.tudorgirba.com
www.feenk.com
"Problem solving should be focused on describing the problem in a way
that makes the solution obvious."
_______________________________________________
Moose-dev mailing list
Moose-dev(a)list.inf.unibe.ch
https://www.list.inf.unibe.ch/listinfo/moose-dev
!!!********************************************************
***********
****************** "Ce message et les pièces
jointes sont
confidentiels et réservés à l'usage exclusif de ses destinataires. Il peut
également être protégé par le secret professionnel. Si vous recevez ce
message par erreur, merci d'en avertir immédiatement l'expéditeur et de le
détruire. L'intégrité du message ne pouvant être assurée sur Internet, la
responsabilité de Worldline ne pourra être recherchée quant au contenu de
ce message. Bien que les meilleurs efforts soient faits pour maintenir cette
transmission exempte de tout virus, l'expéditeur ne donne aucune garantie à
cet égard et sa responsabilité ne saurait être recherchée pour tout dommage
résultant d'un virus transmis.
This e-mail and the documents attached are confidential and intended
solely for the addressee; it may also be privileged. If you receive this e-mail
in
error, please notify the sender immediately and destroy it. As its integrity
cannot be secured on the Internet, the Worldline liability cannot be triggered
for the message content. Although the sender endeavours to maintain a
computer virus-free network, the sender does not warrant that this
transmission is virus-free and will not be liable for any damages resulting
from any virus transmitted.!!!"
_______________________________________________
Moose-dev mailing list
Moose-dev(a)list.inf.unibe.ch
https://www.list.inf.unibe.ch/listinfo/moose-dev
--
www.tudorgirba.com
www.feenk.com
"Don't give to get. Just give."
_______________________________________________
Moose-dev mailing list
Moose-dev(a)list.inf.unibe.ch
https://www.list.inf.unibe.ch/listinfo/moose-dev
!!!*************************************************************************************
"Ce message et les pièces jointes sont confidentiels et réservés à l'usage
exclusif de ses destinataires. Il peut également être protégé par le secret professionnel.
Si vous recevez ce message par erreur, merci d'en avertir immédiatement
l'expéditeur et de le détruire. L'intégrité du message ne pouvant être assurée sur
Internet, la responsabilité de Worldline ne pourra être recherchée quant au contenu de ce
message. Bien que les meilleurs efforts soient faits pour maintenir cette transmission
exempte de tout virus, l'expéditeur ne donne aucune garantie à cet égard et sa
responsabilité ne saurait être recherchée pour tout dommage résultant d'un virus
transmis.
This e-mail and the documents attached are confidential and intended solely for the
addressee; it may also be privileged. If you receive this e-mail in error, please notify
the sender immediately and destroy it. As its integrity cannot be secured on the Internet,
the Worldline liability cannot be triggered for the message content. Although the sender
endeavours to maintain a computer virus-free network, the sender does not warrant that
this transmission is virus-free and will not be liable for any damages resulting from any
virus transmitted.!!!"