Public bug reported:

Currently Tracker plugin is based on CLI search tool (tracker-search).
It launches the tool with necessary parameters, and parses the output.
This approach strictly depends on the output format of tracker-search.
If the format of tracker-search output changes, the plugin stops working
properly. This has been the root cause for several bugs, and there's no
guarantee this won't happen in future.

Tracker service provides a D-Bus interface, which can be used to perform
searches. D-Bus API of tracker is documented, so the Tracker plugin can
be easily implemented using it.

Bugs that were caused by incorrect parsing of tracker-search output:
https://bugs.launchpad.net/do-plugins/+bug/371207
https://bugs.launchpad.net/do-plugins/+bug/376836

Tracker D-Bus API:
http://svn.gnome.org/viewvc/tracker/trunk/data/dbus/tracker-search.xml?view=markup

I'm attaching a proof-of-concept implementation. It surely needs some
code polishing / refactoring, and I'm not sure I've used the best
practices for NDesk.DBus (I've got no experience in this field at all),
but at least it works for me :)

** Affects: do-plugins
     Importance: Undecided
         Status: New


** Tags: dbus tracker-plugin wishlist

-- 
[Wishlist] Implement Tracker plugin using DBus interface
https://bugs.launchpad.net/bugs/376837
You received this bug notification because you are a member of GNOME Do
Plugins Team, which is subscribed to GNOME Do Plugins.

_______________________________________________
Mailing list: https://launchpad.net/~do-plugins
Post to     : do-plugins@lists.launchpad.net
Unsubscribe : https://launchpad.net/~do-plugins
More help   : https://help.launchpad.net/ListHelp

Reply via email to