Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF » JFace Databinding + EMF + Performance
JFace Databinding + EMF + Performance [message #422231] Tue, 26 August 2008 16:53 Go to next message
Mario Winterer is currently offline Mario WintererFriend
Messages: 136
Registered: July 2009
Senior Member
Hi!

We've written some kind of data binding framework for our (emf) model
objects long ago and now I'm wondering if it is possible to replace it
by the jface databinding framework step by step.

But I'm very concerned about the performance. Our framework makes use of
the Forms API's concept to refresh stale ui components only if they are
visible (that is if their form part is visible). Apart from that we are
able to delay the refreshing of certain form parts (using
Display.asnchExec) to collect all refresh requests in the meantime and
do one single refresh at the end. Without these concepts, our complex
model manipulations would result in an ui update stakkato with horrible
performance (especially because some operations might change features
more than once in one single model transaction)...

Are there any similar concepts in the JFace databinding framework,
especially in conjunction with emf?

I hope this is the correct newsgroup for this question...


Thanks,
Mario
Re: JFace Databinding + EMF + Performance [message #422232 is a reply to message #422231] Tue, 26 August 2008 17:07 Go to previous messageGo to next message
Thomas Schindl is currently offline Thomas SchindlFriend
Messages: 6651
Registered: July 2009
Senior Member
Hi Mario,

This a general Databinding question which is better asked on the
platform newsgroup but here's what I know:

1. Asynch-Updates:
------------------
JFace Databinding has the concept of Realm which allows to do things out
of the UI-Thread and sync back to the UI using Display#asyncExec().
It also has the idea of a delaying and pooling changes (e.g. in
SWTObservables#observeDelayedValue)

2. Not updateing invisible components:
---------------------------------------
I think that when a control is hidden one could set its model to target
startegy to UpdateValueStrategy.POLICY_NEVER (though it looks like this
could not be changed after the binding is created) and calling
binding.updateModelToTarget() once the element is shown at a later point
in time.

Tom

Mario Winterer schrieb:
> Hi!
>
> We've written some kind of data binding framework for our (emf) model
> objects long ago and now I'm wondering if it is possible to replace it
> by the jface databinding framework step by step.
>
> But I'm very concerned about the performance. Our framework makes use of
> the Forms API's concept to refresh stale ui components only if they are
> visible (that is if their form part is visible). Apart from that we are
> able to delay the refreshing of certain form parts (using
> Display.asnchExec) to collect all refresh requests in the meantime and
> do one single refresh at the end. Without these concepts, our complex
> model manipulations would result in an ui update stakkato with horrible
> performance (especially because some operations might change features
> more than once in one single model transaction)...
>
> Are there any similar concepts in the JFace databinding framework,
> especially in conjunction with emf?
>
> I hope this is the correct newsgroup for this question...
>
>
> Thanks,
> Mario


--
B e s t S o l u t i o n . at
------------------------------------------------------------ --------
Tom Schindl JFace-Committer
------------------------------------------------------------ --------
Re: JFace Databinding + EMF + Performance [message #422233 is a reply to message #422232] Tue, 26 August 2008 17:16 Go to previous messageGo to next message
Mario Winterer is currently offline Mario WintererFriend
Messages: 136
Registered: July 2009
Senior Member
Wow. Thanks for your quick response! You've just brought me to have a
closer look at jface databinding.
Sorry for the wrong newsgroup!

Tom Schindl schrieb:
> Hi Mario,
>
> This a general Databinding question which is better asked on the
> platform newsgroup but here's what I know:
>
> 1. Asynch-Updates:
> ------------------
> JFace Databinding has the concept of Realm which allows to do things out
> of the UI-Thread and sync back to the UI using Display#asyncExec().
> It also has the idea of a delaying and pooling changes (e.g. in
> SWTObservables#observeDelayedValue)
>
> 2. Not updateing invisible components:
> ---------------------------------------
> I think that when a control is hidden one could set its model to target
> startegy to UpdateValueStrategy.POLICY_NEVER (though it looks like this
> could not be changed after the binding is created) and calling
> binding.updateModelToTarget() once the element is shown at a later point
> in time.
>
> Tom
>
> Mario Winterer schrieb:
>> Hi!
>>
>> We've written some kind of data binding framework for our (emf) model
>> objects long ago and now I'm wondering if it is possible to replace it
>> by the jface databinding framework step by step.
>>
>> But I'm very concerned about the performance. Our framework makes use
>> of the Forms API's concept to refresh stale ui components only if they
>> are visible (that is if their form part is visible). Apart from that
>> we are able to delay the refreshing of certain form parts (using
>> Display.asnchExec) to collect all refresh requests in the meantime and
>> do one single refresh at the end. Without these concepts, our complex
>> model manipulations would result in an ui update stakkato with
>> horrible performance (especially because some operations might change
>> features more than once in one single model transaction)...
>>
>> Are there any similar concepts in the JFace databinding framework,
>> especially in conjunction with emf?
>>
>> I hope this is the correct newsgroup for this question...
>>
>>
>> Thanks,
>> Mario
>
>
Re: JFace Databinding + EMF + Performance [message #422234 is a reply to message #422233] Tue, 26 August 2008 17:28 Go to previous message
Thomas Schindl is currently offline Thomas SchindlFriend
Messages: 6651
Registered: July 2009
Senior Member
Hi Mario,

If you are interested in different Databinding-Concepts in conjunction
with EMF. I'm just writing an medium complex RCP/EMF/Teneo/CDO/...
enabled example application [1, 2]. I plan on accompanying the whole
with a "book" describing the concepts behind these technologies.

I'm quite sure that you can use Eclipse-Databinding and if something is
not already provided as I have learned in the past the library is
designed in a way that you could add it yourself when digging in.

Tom

[1] http://tom-eclipse-dev.blogspot.com/2008/08/writing-ctreecom bo-widget.html
[2] http://publicsvn.bestsolution.at/repos/java/examples/EMF-Dat abinding/

Mario Winterer schrieb:
> Wow. Thanks for your quick response! You've just brought me to have a
> closer look at jface databinding.
> Sorry for the wrong newsgroup!
>
> Tom Schindl schrieb:
>> Hi Mario,
>>
>> This a general Databinding question which is better asked on the
>> platform newsgroup but here's what I know:
>>
>> 1. Asynch-Updates:
>> ------------------
>> JFace Databinding has the concept of Realm which allows to do things
>> out of the UI-Thread and sync back to the UI using Display#asyncExec().
>> It also has the idea of a delaying and pooling changes (e.g. in
>> SWTObservables#observeDelayedValue)
>>
>> 2. Not updateing invisible components:
>> ---------------------------------------
>> I think that when a control is hidden one could set its model to
>> target startegy to UpdateValueStrategy.POLICY_NEVER (though it looks
>> like this could not be changed after the binding is created) and
>> calling binding.updateModelToTarget() once the element is shown at a
>> later point in time.
>>
>> Tom
>>
>> Mario Winterer schrieb:
>>> Hi!
>>>
>>> We've written some kind of data binding framework for our (emf) model
>>> objects long ago and now I'm wondering if it is possible to replace
>>> it by the jface databinding framework step by step.
>>>
>>> But I'm very concerned about the performance. Our framework makes use
>>> of the Forms API's concept to refresh stale ui components only if
>>> they are visible (that is if their form part is visible). Apart from
>>> that we are able to delay the refreshing of certain form parts (using
>>> Display.asnchExec) to collect all refresh requests in the meantime
>>> and do one single refresh at the end. Without these concepts, our
>>> complex model manipulations would result in an ui update stakkato
>>> with horrible performance (especially because some operations might
>>> change features more than once in one single model transaction)...
>>>
>>> Are there any similar concepts in the JFace databinding framework,
>>> especially in conjunction with emf?
>>>
>>> I hope this is the correct newsgroup for this question...
>>>
>>>
>>> Thanks,
>>> Mario
>>
>>


--
B e s t S o l u t i o n . at
------------------------------------------------------------ --------
Tom Schindl JFace-Committer
------------------------------------------------------------ --------
Previous Topic:EList implementation to use according to feature contents
Next Topic:Changing the names of the generated files using Dynamic Templates
Goto Forum:
  


Current Time: Thu Mar 28 15:25:32 GMT 2024

Powered by FUDForum. Page generated in 0.02339 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top