wingo - in flumotion/trunk: . flumotion/admin flumotion/test

flumotion-commit at lists.fluendo.com flumotion-commit at lists.fluendo.com
Fri Jul 27 16:12:24 CEST 2007


Author: wingo
Date: Fri Jul 27 16:12:16 2007
New Revision: 5368

Modified:
   flumotion/trunk/ChangeLog
   flumotion/trunk/flumotion/admin/admin.py
   flumotion/trunk/flumotion/test/test_common_signals.py
Log:
changelog

Modified: flumotion/trunk/ChangeLog
==============================================================================
--- flumotion/trunk/ChangeLog	(original)
+++ flumotion/trunk/ChangeLog	Fri Jul 27 16:12:16 2007
@@ -1,5 +1,10 @@
 2007-07-27  Andy Wingo  <wingo at pobox.com>
 
+	* flumotion/common/signals.py (SignalMixin.emit): 
+	* flumotion/test/test_common_signals.py
+	(TestSignalMixin.testEmitSelf): Er, check to make sure that
+	emitting also passes the self object.
+
 	* bin/flumotion-admin.in: Don't import gstreamer, we don't use it.
 
 	* data/glade/admin-wizard.glade:

Modified: flumotion/trunk/flumotion/admin/admin.py
==============================================================================
--- flumotion/trunk/flumotion/admin/admin.py	(original)
+++ flumotion/trunk/flumotion/admin/admin.py	Fri Jul 27 16:12:16 2007
@@ -24,7 +24,6 @@
 """
 
 import sys
-import gobject
 
 from twisted.spread import pb
 from twisted.internet import error, defer, reactor
@@ -32,8 +31,9 @@
 from twisted.python import rebuild, reflect, failure
 from zope.interface import implements
 
-from flumotion.common import common, errors, interfaces, log, pygobject
-from flumotion.common import keycards, worker, planet, medium, package, messages
+from flumotion.common import common, errors, interfaces, log
+from flumotion.common import keycards, worker, planet, medium, package
+from flumotion.common import messages, signals
 # serializable worker and component state
 from flumotion.twisted import flavors
 from flumotion.twisted.defer import defer_generator_method
@@ -43,8 +43,6 @@
 from flumotion.twisted import credentials
 from flumotion.twisted import pb as fpb
 
-from flumotion.common.pygobject import gsignal, gproperty
-
 from flumotion.common.messages import N_
 T_ = messages.gettexter('flumotion')
 
@@ -145,7 +143,7 @@
         
 # FIXME: stop using signals, we can provide a richer interface with actual
 # objects and real interfaces for the views a model communicates with
-class AdminModel(medium.PingingMedium, gobject.GObject):
+class AdminModel(medium.PingingMedium, signals.SignalMixin):
     """
     I live in the admin client.
     I am a data model for any admin view implementing a UI to
@@ -154,14 +152,9 @@
 
     Manager calls on us through L{flumotion.manager.admin.AdminAvatar}
     """
-    gsignal('connected')
-    gsignal('disconnected')
-    gsignal('connection-refused')
-    gsignal('connection-failed', str)
-    gsignal('connection-error', object)
-    gsignal('reloading', str)
-    gsignal('message', str)
-    gsignal('update')
+    __signals__ = ('connected', 'disconnected', 'connection-refused',
+                   'connection-failed', 'connection-error', 'reloading',
+                   'message', 'update')
 
     logCategory = 'adminmodel'
 
@@ -171,8 +164,6 @@
     planet = None
 
     def __init__(self):
-        self.__gobject_init__()
-        
         # All of these instance variables are private. Cuidado cabrones!
         self.connectionInfo = None
         self.keepTrying = None
@@ -658,5 +649,3 @@
 
     def getWorkerHeavenState(self):
         return self._workerHeavenState
-
-pygobject.type_register(AdminModel)

Modified: flumotion/trunk/flumotion/test/test_common_signals.py
==============================================================================
--- flumotion/trunk/flumotion/test/test_common_signals.py	(original)
+++ flumotion/trunk/flumotion/test/test_common_signals.py	Fri Jul 27 16:12:16 2007
@@ -67,3 +67,10 @@
         self.assertEquals(emissions, [('foo', (o,), {}),
                                       ('foo', (o,1,), {}),
                                       ('bar', (o,'xyzzy',), {'baz':'qux'})])
+
+    def testDisconnect(self):
+        o = TestObject()
+
+        sid = o.connect('foo', self.fail)
+        o.disconnect(sid)
+        o.emit('foo')


More information about the flumotion-commit mailing list