[Tracker] Translating raw GIO events into compiled TrackerMonitor events



So, following the work to remove inotify and just use GIO, find attached
the list of steps we may need when getting GIO events in order to
translate them into TrackerMonitor events.

As background, GIO raw events are listed here:
http://library.gnome.org/devel/gio/stable/GFileMonitor.html#GFileMonitorEvent

And the TrackerMonitor events are just:
  - "item-created"
  - "item-updated"
  - "item-deleted"
  - "item-moved"

Note that for event translations, I considered files and directory
events in a different way internally, because different steps should be
considered in each case.

These steps should cover all cases, including the issues of getting
DELETE events for directory A when moving it from A to B (in addition to
the MOVE(A->B) event). Using a new HT for those, which is actually the
thing fully complicating the issue...

Anyway, my impression is that even if all these steps are done, the
miner-fs should process them "in the same order" as notified by
TrackerMonitor, not based on 4 different queues where delete events have
precedence (IIRC)... although then that's another issue...

Comments more than welcome, specially from Carlos and Martyn :-)

-- 
Aleksander

Attachment: gio-event-translation.txt
Description: Text document



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]