Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [incquery-dev] QE refactor

I have added support for using UPDATED state when a comparator is used. Upon change (like the one you described), there will be a remove and add event for the match which will cause the comparator to run. The two events will be sent as separate diffs, but I guess that's acceptable.
Let me know if it messes up anything.

  Ábel Hegedüs

Fault Tolerant Systems Research Group (FTSRG)
Department of Measurement and Information Systems (MIT)
Budapest University of Technology and Economics (BME)

On 2014.03.27. 13:48:26, Ábel Hegedüs <abel.hegedus@xxxxxxxxxx>wrote:

Hi,

- OrderBy: the comparator will not recognise that the some feature changed in a parameter value of a match. If the databinding rules would use the UPDATED state in the lifecycle, this could be handled, since it could remove and readd the element into the list.

- ModelUpdateListener: it is not needed now, as the observable list handles the incremental updates.


  Ábel Hegedüs

Fault Tolerant Systems Research Group (FTSRG)
Department of Measurement and Information Systems (MIT)
Budapest University of Technology and Economics (BME)

On 2014.03.27. 10:57:53, Tamás Szabó <tamas.szabo@xxxxxxxxx>wrote:

Hi

I have finished the refactor of the Query Explorer but I have some
doubts / remarks:
- The OrderBy annotation is not working properly on the current master
HEAD, this is now fixed in the Gerrit review. However, I have observed a
behavior which is maybe not what you would expect.
Take, for example, the pattern teacherNames from the school example.
Here, I have defined an ordering on the teacher's name (doesn't matter
if it is desc or asc for now). When you add a new teacher to the model,
the name will be null initially. The comparator will not be able to
define the position of this teacher, so it will be placed at the end of
the match set (list). When you modify the name in the properties view,
then you would expect that it will move to its correct position, but no
notification will be called for that, no change will happen in the
IObservableList, thus the element will remain at the end of the list.
- In the current master HEAD if you take a look at the
PatternMatcherContent class, then you can see that we are registering an
IncQueryModelUpdateListener for the IQ engine. When the engine becomes
tainted, then we will remove these listeners. I just want to make sure
that, this reg/unreg is not required at all anymore, because the
PatternMatcherContent (Gerrit) will use IncQueryObservables (and I
guess, it takes care of this thing), right?

https://git.eclipse.org/r/#/c/23459/

Cheers,
Tomi
_______________________________________________
incquery-dev mailing list
incquery-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/incquery-dev

Back to the top