[hamster-applet] stopping service on .py file update to simplify	updates
- From: Toms Baugis <tbaugis src gnome org>
 
- To: commits-list gnome org
 
- Cc: 
 
- Subject: [hamster-applet] stopping service on .py file update to simplify	updates
 
- Date: Sun,  1 Aug 2010 20:06:09 +0000 (UTC)
 
commit 0b600c70ff76e134a7782916f82ad75f48f1c4f1
Author: Toms Bauģis <toms baugis gmail com>
Date:   Sun Aug 1 21:02:06 2010 +0100
    stopping service on .py file update to simplify updates
 src/hamster/storage.py |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)
---
diff --git a/src/hamster/storage.py b/src/hamster/storage.py
index 469f74f..26b4399 100644
--- a/src/hamster/storage.py
+++ b/src/hamster/storage.py
@@ -21,6 +21,7 @@
 import dbus, dbus.service
 import datetime as dt
 from calendar import timegm
+import gio
 
 def to_dbus_fact(fact):
     """Perform the conversion between fact database query and
@@ -47,6 +48,16 @@ class Storage(dbus.service.Object):
         dbus.service.Object.__init__(self, bus_name, self.__dbus_object_path__)
         self.mainloop = loop
 
+        self.__file = gio.File(__file__)
+        self.__monitor = self.__file.monitor_file()
+        self.__monitor.connect("changed", self._on_us_change)
+
+    # stop service when we have been updated (will be brought back in next call)
+    # anyway. should make updating simpler
+    def _on_us_change(self, monitor, gio_file, event_uri, event):
+        if event == gio.FILE_MONITOR_EVENT_CHANGES_DONE_HINT:
+            print "`%s` has changed. Quitting!" % __file__
+            self.Quit()
 
     def run_fixtures(self):
         pass
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]