MSE interchange of custom properties

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

MSE interchange of custom properties

Peter Uhnak
Hi,

is it possible to interchange custom properties via MSE?

e.g.

I have added myProp to the method:

~~~~
(
(FAMIX.Class
(id: 1)
(name 'MyClass'))
(FAMIX.Method
(id: 2)
(name 'myMethod')
(myProp 'someValue')
(parentType (ref: 1))))
~~~

This is imported fine

~~~
s := Clipboard clipboardText asString.

model := MooseModel importFromMSEStream: s readStream.

model allMethods first propertyNamed: 'myProp'. "'someValue'"
~~~

However
1) I cannot see it in the Properties tab of the Moose Inspector,
2) when I export it, it is lost
(instead some other properties are exported that I didn't ask for)

~~~
model asMSEString. "'(
(FAMIX.Class (id: 1)
(name ''MyClass''))
(FAMIX.Method (id: 2)
(name ''myMethod'')
(cyclomaticComplexity -1)
(numberOfConditionals -1)
(numberOfLinesOfCode -1)
(numberOfStatements -1)
(parentType (ref: 1))
(timeStamp '''')))'"
~~~

The same thing applies when I add custom Metanool annotation in the Meta edit tab... e.g. I add `an AnonymousClass[String]` with name `anotherProp` and some value, I can actually see it in the `Properties` tab (unlike the one imported),
but when exported, it is also missing.

Do I need to do some extra steps in order to interchange this information?

Thanks,
Peter



_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.list.inf.unibe.ch/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: MSE interchange of custom properties

Stéphane Ducasse
Yes it was made on purpose to support this scenario. 
All the properties that are not described are put in the property dict of the entity.
If this is not like that then we got a bug and we should fix it. 

About metanool I think that we should remove it. 


Stef

On 17 Jan 2019, at 10:14, Peter Uhnak <[hidden email]> wrote:

Hi,

is it possible to interchange custom properties via MSE?

e.g.

I have added myProp to the method:

~~~~
(
(FAMIX.Class
(id: 1)
(name 'MyClass'))
(FAMIX.Method
(id: 2)
(name 'myMethod')
(myProp 'someValue')
(parentType (ref: 1))))
~~~

This is imported fine

~~~
s := Clipboard clipboardText asString.

model := MooseModel importFromMSEStream: s readStream.

model allMethods first propertyNamed: 'myProp'. "'someValue'"
~~~

However
1) I cannot see it in the Properties tab of the Moose Inspector,
2) when I export it, it is lost
(instead some other properties are exported that I didn't ask for)

~~~
model asMSEString. "'(
(FAMIX.Class (id: 1)
(name ''MyClass''))
(FAMIX.Method (id: 2)
(name ''myMethod'')
(cyclomaticComplexity -1)
(numberOfConditionals -1)
(numberOfLinesOfCode -1)
(numberOfStatements -1)
(parentType (ref: 1))
(timeStamp '''')))'"
~~~

The same thing applies when I add custom Metanool annotation in the Meta edit tab... e.g. I add `an AnonymousClass[String]` with name `anotherProp` and some value, I can actually see it in the `Properties` tab (unlike the one imported),
but when exported, it is also missing.

Do I need to do some extra steps in order to interchange this information?

Thanks,
Peter


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.list.inf.unibe.ch/listinfo/moose-dev

--------------------------------------------
Stéphane Ducasse
03 59 35 87 52
Assistant: Julie Jonas 
FAX 03 59 57 78 50
TEL 03 59 35 86 16
S. Ducasse - Inria
40, avenue Halley, 
Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
Villeneuve d'Ascq 59650
France


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.list.inf.unibe.ch/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: MSE interchange of custom properties

Tudor Girba-2
Hi Peter,

To export a property, you need to meta-describe it. For example:

FAMIXType>>#weightOfAClass
        <MSEProperty: #weightOfAClass type: #Number>
        <derived>
        <MSEComment: 'Weight of a class'>
                       
        ^self
                lookUpPropertyNamed: #weightOfAClass
                computedAs: [self notExistentMetricValue]

Cheers,
Doru


> On Jan 17, 2019, at 10:27 AM, Stéphane Ducasse <[hidden email]> wrote:
>
> Yes it was made on purpose to support this scenario.
> All the properties that are not described are put in the property dict of the entity.
> If this is not like that then we got a bug and we should fix it.
>
> About metanool I think that we should remove it.
>
>
> Stef
>
>> On 17 Jan 2019, at 10:14, Peter Uhnak <[hidden email]> wrote:
>>
>> Hi,
>>
>> is it possible to interchange custom properties via MSE?
>>
>> e.g.
>>
>> I have added myProp to the method:
>>
>> ~~~~
>> (
>> (FAMIX.Class
>> (id: 1)
>> (name 'MyClass'))
>> (FAMIX.Method
>> (id: 2)
>> (name 'myMethod')
>> (myProp 'someValue')
>> (parentType (ref: 1))))
>> ~~~
>>
>> This is imported fine
>>
>> ~~~
>> s := Clipboard clipboardText asString.
>>
>> model := MooseModel importFromMSEStream: s readStream.
>>
>> model allMethods first propertyNamed: 'myProp'. "'someValue'"
>> ~~~
>>
>> However
>> 1) I cannot see it in the Properties tab of the Moose Inspector,
>> 2) when I export it, it is lost
>> (instead some other properties are exported that I didn't ask for)
>>
>> ~~~
>> model asMSEString. "'(
>> (FAMIX.Class (id: 1)
>> (name ''MyClass''))
>> (FAMIX.Method (id: 2)
>> (name ''myMethod'')
>> (cyclomaticComplexity -1)
>> (numberOfConditionals -1)
>> (numberOfLinesOfCode -1)
>> (numberOfStatements -1)
>> (parentType (ref: 1))
>> (timeStamp '''')))'"
>> ~~~
>>
>> The same thing applies when I add custom Metanool annotation in the Meta edit tab... e.g. I add `an AnonymousClass[String]` with name `anotherProp` and some value, I can actually see it in the `Properties` tab (unlike the one imported),
>> but when exported, it is also missing.
>>
>> Do I need to do some extra steps in order to interchange this information?
>>
>> Thanks,
>> Peter
>>
>>
>> _______________________________________________
>> Moose-dev mailing list
>> [hidden email]
>> https://www.list.inf.unibe.ch/listinfo/moose-dev
>
> --------------------------------------------
> Stéphane Ducasse
> http://stephane.ducasse.free.fr
> http://www.synectique.eu / http://www.pharo.org 
> 03 59 35 87 52
> Assistant: Julie Jonas
> FAX 03 59 57 78 50
> TEL 03 59 35 86 16
> S. Ducasse - Inria
> 40, avenue Halley,
> Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
> Villeneuve d'Ascq 59650
> France
>
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.list.inf.unibe.ch/listinfo/moose-dev

--
www.feenk.com

“Live like you mean it."

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.list.inf.unibe.ch/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: MSE interchange of custom properties

Peter Uhnak
Excellent, adding the method (without <derived>) addressed the problem.

Thanks!
Peter

On Thu, Jan 17, 2019 at 10:35 AM Tudor Girba <[hidden email]> wrote:
Hi Peter,

To export a property, you need to meta-describe it. For example:

FAMIXType>>#weightOfAClass
        <MSEProperty: #weightOfAClass type: #Number>
        <derived>
        <MSEComment: 'Weight of a class'>       

        ^self
                lookUpPropertyNamed: #weightOfAClass
                computedAs: [self notExistentMetricValue]

Cheers,
Doru


> On Jan 17, 2019, at 10:27 AM, Stéphane Ducasse <[hidden email]> wrote:
>
> Yes it was made on purpose to support this scenario.
> All the properties that are not described are put in the property dict of the entity.
> If this is not like that then we got a bug and we should fix it.
>
> About metanool I think that we should remove it.
>
>
> Stef
>
>> On 17 Jan 2019, at 10:14, Peter Uhnak <[hidden email]> wrote:
>>
>> Hi,
>>
>> is it possible to interchange custom properties via MSE?
>>
>> e.g.
>>
>> I have added myProp to the method:
>>
>> ~~~~
>> (
>>      (FAMIX.Class
>>              (id: 1)
>>              (name 'MyClass'))
>>      (FAMIX.Method
>>              (id: 2)
>>              (name 'myMethod')
>>              (myProp 'someValue')
>>              (parentType (ref: 1))))
>> ~~~
>>
>> This is imported fine
>>
>> ~~~
>> s := Clipboard clipboardText asString.
>>
>> model := MooseModel importFromMSEStream: s readStream.
>>
>> model allMethods first propertyNamed: 'myProp'. "'someValue'"
>> ~~~
>>
>> However
>> 1) I cannot see it in the Properties tab of the Moose Inspector,
>> 2) when I export it, it is lost
>> (instead some other properties are exported that I didn't ask for)
>>
>> ~~~
>> model asMSEString. "'(
>>      (FAMIX.Class (id: 1)
>>              (name ''MyClass''))
>>      (FAMIX.Method (id: 2)
>>              (name ''myMethod'')
>>              (cyclomaticComplexity -1)
>>              (numberOfConditionals -1)
>>              (numberOfLinesOfCode -1)
>>              (numberOfStatements -1)
>>              (parentType (ref: 1))
>>              (timeStamp '''')))'"
>> ~~~
>>
>> The same thing applies when I add custom Metanool annotation in the Meta edit tab... e.g. I add `an AnonymousClass[String]` with name `anotherProp` and some value, I can actually see it in the `Properties` tab (unlike the one imported),
>> but when exported, it is also missing.
>>
>> Do I need to do some extra steps in order to interchange this information?
>>
>> Thanks,
>> Peter
>>
>>
>> _______________________________________________
>> Moose-dev mailing list
>> [hidden email]
>> https://www.list.inf.unibe.ch/listinfo/moose-dev
>
> --------------------------------------------
> Stéphane Ducasse
> http://stephane.ducasse.free.fr
> http://www.synectique.eu / http://www.pharo.org
> 03 59 35 87 52
> Assistant: Julie Jonas
> FAX 03 59 57 78 50
> TEL 03 59 35 86 16
> S. Ducasse - Inria
> 40, avenue Halley,
> Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
> Villeneuve d'Ascq 59650
> France
>
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.list.inf.unibe.ch/listinfo/moose-dev

--
www.feenk.com

“Live like you mean it."

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.list.inf.unibe.ch/listinfo/moose-dev

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.list.inf.unibe.ch/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: MSE interchange of custom properties

Tudor Girba-2
Ah indeed :) Great.

Doru



> On Jan 17, 2019, at 10:50 AM, Peter Uhnak <[hidden email]> wrote:
>
> Excellent, adding the method (without <derived>) addressed the problem.
>
> Thanks!
> Peter
>
> On Thu, Jan 17, 2019 at 10:35 AM Tudor Girba <[hidden email]> wrote:
> Hi Peter,
>
> To export a property, you need to meta-describe it. For example:
>
> FAMIXType>>#weightOfAClass
>         <MSEProperty: #weightOfAClass type: #Number>
>         <derived>
>         <MSEComment: 'Weight of a class'>      
>
>         ^self
>                 lookUpPropertyNamed: #weightOfAClass
>                 computedAs: [self notExistentMetricValue]
>
> Cheers,
> Doru
>
>
> > On Jan 17, 2019, at 10:27 AM, Stéphane Ducasse <[hidden email]> wrote:
> >
> > Yes it was made on purpose to support this scenario.
> > All the properties that are not described are put in the property dict of the entity.
> > If this is not like that then we got a bug and we should fix it.
> >
> > About metanool I think that we should remove it.
> >
> >
> > Stef
> >
> >> On 17 Jan 2019, at 10:14, Peter Uhnak <[hidden email]> wrote:
> >>
> >> Hi,
> >>
> >> is it possible to interchange custom properties via MSE?
> >>
> >> e.g.
> >>
> >> I have added myProp to the method:
> >>
> >> ~~~~
> >> (
> >>      (FAMIX.Class
> >>              (id: 1)
> >>              (name 'MyClass'))
> >>      (FAMIX.Method
> >>              (id: 2)
> >>              (name 'myMethod')
> >>              (myProp 'someValue')
> >>              (parentType (ref: 1))))
> >> ~~~
> >>
> >> This is imported fine
> >>
> >> ~~~
> >> s := Clipboard clipboardText asString.
> >>
> >> model := MooseModel importFromMSEStream: s readStream.
> >>
> >> model allMethods first propertyNamed: 'myProp'. "'someValue'"
> >> ~~~
> >>
> >> However
> >> 1) I cannot see it in the Properties tab of the Moose Inspector,
> >> 2) when I export it, it is lost
> >> (instead some other properties are exported that I didn't ask for)
> >>
> >> ~~~
> >> model asMSEString. "'(
> >>      (FAMIX.Class (id: 1)
> >>              (name ''MyClass''))
> >>      (FAMIX.Method (id: 2)
> >>              (name ''myMethod'')
> >>              (cyclomaticComplexity -1)
> >>              (numberOfConditionals -1)
> >>              (numberOfLinesOfCode -1)
> >>              (numberOfStatements -1)
> >>              (parentType (ref: 1))
> >>              (timeStamp '''')))'"
> >> ~~~
> >>
> >> The same thing applies when I add custom Metanool annotation in the Meta edit tab... e.g. I add `an AnonymousClass[String]` with name `anotherProp` and some value, I can actually see it in the `Properties` tab (unlike the one imported),
> >> but when exported, it is also missing.
> >>
> >> Do I need to do some extra steps in order to interchange this information?
> >>
> >> Thanks,
> >> Peter
> >>
> >>
> >> _______________________________________________
> >> Moose-dev mailing list
> >> [hidden email]
> >> https://www.list.inf.unibe.ch/listinfo/moose-dev
> >
> > --------------------------------------------
> > Stéphane Ducasse
> > http://stephane.ducasse.free.fr
> > http://www.synectique.eu / http://www.pharo.org 
> > 03 59 35 87 52
> > Assistant: Julie Jonas
> > FAX 03 59 57 78 50
> > TEL 03 59 35 86 16
> > S. Ducasse - Inria
> > 40, avenue Halley,
> > Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
> > Villeneuve d'Ascq 59650
> > France
> >
> > _______________________________________________
> > Moose-dev mailing list
> > [hidden email]
> > https://www.list.inf.unibe.ch/listinfo/moose-dev
>
> --
> www.feenk.com
>
> “Live like you mean it."
>
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.list.inf.unibe.ch/listinfo/moose-dev
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.list.inf.unibe.ch/listinfo/moose-dev

--
www.feenk.com

“The smaller and more pervasive the hardware becomes, the more physical the software gets."

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.list.inf.unibe.ch/listinfo/moose-dev