=== modified file 'elisa-core/elisa/core/application.py' --- elisa-core/elisa/core/application.py 2008-10-27 11:59:15 +0000 +++ elisa-core/elisa/core/application.py 2008-10-27 15:41:03 +0000 @@ -26,6 +26,8 @@ import gobject import platform +import dbus +import dbus.service from elisa.core import __version__, version_info from elisa.core.config import Config, ConfigError @@ -467,6 +469,8 @@ loading_providers_done) def interface_initialized(result): + # Now that db/plugins are loaded, we can safely register dbus service name + self.dbus_name = dbus.service.BusName('com.fluendo.Elisa', dbus.SessionBus()) self.bus.send_message(ComponentsLoadedMessage()) self._close_splash_screen() === modified file 'elisa-plugins/elisa/plugins/database/dbus_service.py' --- elisa-plugins/elisa/plugins/database/dbus_service.py 2008-10-06 08:37:17 +0000 +++ elisa-plugins/elisa/plugins/database/dbus_service.py 2008-10-27 15:41:57 +0000 @@ -442,16 +442,10 @@ def _start_dbus(self): bus = dbus.SessionBus() - - # get known names - self.bus_name = \ - dbus.service.BusName('com.fluendo.Elisa', bus) - + # create the objects we export - self.photo = Photo(bus, '/com/fluendo/Elisa/Plugins/Database/Photo', - self.bus_name) - self.music = Music(bus, '/com/fluendo/Elisa/Plugins/Database/Music', - self.bus_name) + self.photo = Photo(bus, '/com/fluendo/Elisa/Plugins/Database/Photo') + self.music = Music(bus, '/com/fluendo/Elisa/Plugins/Database/Music') def _stop_dbus(self): bus = dbus.SessionBus() @@ -461,9 +455,6 @@ self.music.remove_from_connection(bus, '/com/fluendo/Elisa/Plugins/Database/Music') - # BusName implements __del__, eew - del self.bus_name - def _register_player_status_changes(self): bus = common.application.bus bus.register(self._components_loaded, ComponentsLoadedMessage) === modified file 'elisa-plugins/elisa/plugins/database/media_scanner.py' --- elisa-plugins/elisa/plugins/database/media_scanner.py 2008-10-21 15:40:52 +0000 +++ elisa-plugins/elisa/plugins/database/media_scanner.py 2008-10-27 15:41:57 +0000 @@ -205,10 +205,9 @@ return self bus = dbus.SessionBus() - self.bus_name = dbus.service.BusName('com.fluendo.Elisa', bus) self.dbus_scanner = DBusInterface(self, bus, - '/com/fluendo/Elisa/Plugins/Database/MediaScanner', self.bus_name) + '/com/fluendo/Elisa/Plugins/Database/MediaScanner') return self def _clean_dbus(self): @@ -219,8 +218,6 @@ bus = dbus.SessionBus() self.dbus_scanner.remove_from_connection(bus, '/com/fluendo/Elisa/Plugins/Database/MediaScanner') - # BusName implements __del__, eew - del self.bus_name # remove the reference cycle self.dbus_scanner = None === modified file 'elisa-plugins/elisa/plugins/database/tests/test_dbus.py' --- elisa-plugins/elisa/plugins/database/tests/test_dbus.py 2008-09-17 11:16:55 +0000 +++ elisa-plugins/elisa/plugins/database/tests/test_dbus.py 2008-10-27 15:41:57 +0000 @@ -182,12 +182,8 @@ class TestDatabaseDBusServiceProvider(TestDatabaseDBusServiceProviderBase): def _start_dbus(self): bus = dbus.SessionBus() - self.bus_name = \ - dbus.service.BusName('com.fluendo.Elisa', bus) - self.photo = TestPhoto(bus, '/com/fluendo/Elisa/Plugins/Database/Photo', - self.bus_name) - self.music = TestMusic(bus, '/com/fluendo/Elisa/Plugins/Database/Music', - self.bus_name) + self.photo = TestPhoto(bus, '/com/fluendo/Elisa/Plugins/Database/Photo') + self.music = TestMusic(bus, '/com/fluendo/Elisa/Plugins/Database/Music') class TestDatabaseDBusServiceProviderNoDBus(TestDatabaseDBusServiceProviderBase): """ === modified file 'elisa-plugins/elisa/plugins/pigment/pigment_frontend.py' --- elisa-plugins/elisa/plugins/pigment/pigment_frontend.py 2008-10-27 10:41:48 +0000 +++ elisa-plugins/elisa/plugins/pigment/pigment_frontend.py 2008-10-27 15:41:57 +0000 @@ -693,10 +693,8 @@ return bus = dbus.SessionBus() - self.bus_name = \ - dbus.service.BusName('com.fluendo.Elisa', bus) self.dbus_frontend = DBusFrontend(self, bus, - '/com/fluendo/Elisa/Plugins/Pigment/Frontend', self.bus_name) + '/com/fluendo/Elisa/Plugins/Pigment/Frontend') def _clean_dbus(self): if 'dbus' not in sys.modules: @@ -706,8 +704,6 @@ bus = dbus.SessionBus() self.dbus_frontend.remove_from_connection(bus, '/com/fluendo/Elisa/Plugins/Pigment/Frontend') - # BusName implements __del__, eew - del self.bus_name # remove the reference cycle del self.dbus_frontend === modified file 'elisa-plugins/elisa/plugins/poblesec/browser_controller.py' --- elisa-plugins/elisa/plugins/poblesec/browser_controller.py 2008-10-07 17:05:43 +0000 +++ elisa-plugins/elisa/plugins/poblesec/browser_controller.py 2008-10-27 15:41:57 +0000 @@ -178,10 +178,9 @@ return bus = dbus.SessionBus() - self.bus_name = dbus.service.BusName('com.fluendo.Elisa', bus) self.dbus_browser = DBusBrowser(self, bus, - '/com/fluendo/Elisa/Plugins/Poblesec/Browser', self.bus_name) + '/com/fluendo/Elisa/Plugins/Poblesec/Browser') def _clean_dbus(self): if dbus is None: @@ -191,8 +190,6 @@ bus = dbus.SessionBus() self.dbus_browser.remove_from_connection(bus, '/com/fluendo/Elisa/Plugins/Poblesec/Browser') - # BusName implements __del__, eew - del self.bus_name # remove the reference cycle self.dbus_browser = None === modified file 'elisa-plugins/elisa/plugins/poblesec/main.py' --- elisa-plugins/elisa/plugins/poblesec/main.py 2008-10-23 10:57:49 +0000 +++ elisa-plugins/elisa/plugins/poblesec/main.py 2008-10-27 15:41:57 +0000 @@ -290,14 +290,13 @@ return bus = dbus.SessionBus() - self.bus_name = dbus.service.BusName('com.fluendo.Elisa', bus) self.dbus_player = DBusPlayer(self, bus, - '/com/fluendo/Elisa/Plugins/Poblesec/AudioPlayer', self.bus_name) + '/com/fluendo/Elisa/Plugins/Poblesec/AudioPlayer') from elisa.plugins.poblesec.dbus_player import FilePlayer self.dbus_fileplayer = FilePlayer(self, bus, - '/com/fluendo/Elisa/Plugins/Poblesec/FilePlayer', self.bus_name) + '/com/fluendo/Elisa/Plugins/Poblesec/FilePlayer') def clean(self): self._clean_dbus() @@ -313,8 +312,6 @@ '/com/fluendo/Elisa/Plugins/Poblesec/AudioPlayer') self.dbus_fileplayer.remove_from_connection(bus, '/com/fluendo/Elisa/Plugins/Poblesec/FilePlayer') - # BusName implements __del__, eew - del self.bus_name # remove the reference cycle self.dbus_player = None