[kupfer] plugin.tracker: Robuster retrieval of the search object.
- From: Ulrik Sverdrup <usverdrup src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [kupfer] plugin.tracker: Robuster retrieval of the search object.
- Date: Wed, 9 Sep 2009 19:16:19 +0000 (UTC)
commit 90a4fd65912f08624aa40c580bfaef615ebe13a8
Author: Ulrik Sverdrup <ulrik sverdrup gmail com>
Date: Wed Sep 9 17:10:05 2009 +0200
plugin.tracker: Robuster retrieval of the search object.
Use dbus.Interface to get a handle of the interface. Print out the
exception messages that appear in case of lost connection &c; also
declare the tracker bus names and paths at the top of the plugin.
kupfer/plugin/tracker.py | 17 +++++++++++------
1 files changed, 11 insertions(+), 6 deletions(-)
---
diff --git a/kupfer/plugin/tracker.py b/kupfer/plugin/tracker.py
index 36bbd31..ec36781 100644
--- a/kupfer/plugin/tracker.py
+++ b/kupfer/plugin/tracker.py
@@ -19,6 +19,10 @@ __description__ = _("Tracker desktop search integration")
__version__ = ""
__author__ = "Ulrik Sverdrup <ulrik sverdrup gmail com>"
+SERVICE_NAME = "org.freedesktop.Tracker"
+SEARCH_OBJECT_PATH = "/org/freedesktop/Tracker/Search"
+SEARCH_INTERFACE = "org.freedesktop.Tracker.Search"
+
class TrackerSearch (Action):
def __init__(self):
Action.__init__(self, _("Search in Tracker"))
@@ -64,10 +68,11 @@ class TrackerQuerySource (Source):
return
bus = dbus.SessionBus()
try:
- searchobj = bus.get_object("org.freedesktop.Tracker",
- "/org/freedesktop/Tracker/Search")
- except dbus.DBusException:
- pretty.print_info(__name__, "Tracker not found on bus")
+ tobj = bus.get_object(SERVICE_NAME, SEARCH_OBJECT_PATH)
+ searchobj = dbus.Interface(tobj, SEARCH_INTERFACE)
+ except dbus.DBusException, exc:
+ pretty.print_error(__name__, exc)
+ pretty.print_error(__name__, "Could not connect to Tracker")
return
# Text interface
@@ -76,8 +81,8 @@ class TrackerQuerySource (Source):
# Returns array of strings for results
try:
file_hits = searchobj.Text(1, "Files", self.query, 0, self.max_items)
- except dbus.DBusException:
- pretty.print_info(__name__, "Tracker not found on bus")
+ except dbus.DBusException, exc:
+ pretty.print_error(__name__, exc)
return
for filestr in file_hits:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]