Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <mpg@redhat.com>2006-05-15 19:36:17 (GMT)
committer Marco Pesenti Gritti <mpg@redhat.com>2006-05-15 19:36:17 (GMT)
commitd2a0bd4d65f5cc9b757735a29d18d54d345e9269 (patch)
tree8187c31b41eebb3d71d9540f8ca8d143bdc7b5ab
parent7300b8e429993ed05a6a01c6fed9b54a249ebd5d (diff)
More fixes...
-rw-r--r--sugar/p2p/NotificationListener.py4
-rw-r--r--sugar/p2p/Notifier.py1
-rw-r--r--sugar/p2p/Service.py3
-rw-r--r--sugar/p2p/model/RemoteModel.py3
-rw-r--r--sugar/p2p/model/Store.py2
-rw-r--r--sugar/p2p/presence.py2
6 files changed, 10 insertions, 5 deletions
diff --git a/sugar/p2p/NotificationListener.py b/sugar/p2p/NotificationListener.py
index 4fe742d..13ee473 100644
--- a/sugar/p2p/NotificationListener.py
+++ b/sugar/p2p/NotificationListener.py
@@ -1,9 +1,12 @@
from Service import Service
+from sugar.p2p.Notifier import Notifier
import network
class NotificationListener:
def __init__(self, group, name):
service = group.get_service(name, Notifier.TYPE)
+ print service.get_address()
+ print service.get_port()
server = network.GroupServer(service.get_address(),
service.get_port(),
self._recv_multicast)
@@ -15,5 +18,6 @@ class NotificationListener:
self._listeners.add(listener)
def _recv_multicast(self, msg):
+ print 'Got message ' + msg
for listener in self._listeners:
listener(msg)
diff --git a/sugar/p2p/Notifier.py b/sugar/p2p/Notifier.py
index ae366e9..e4d3847 100644
--- a/sugar/p2p/Notifier.py
+++ b/sugar/p2p/Notifier.py
@@ -1,4 +1,3 @@
-from sugar.p2p.NotificationListener import NotificationListener
from sugar.p2p import network
from sugar.p2p.Service import Service
diff --git a/sugar/p2p/Service.py b/sugar/p2p/Service.py
index 50bbf86..9371b05 100644
--- a/sugar/p2p/Service.py
+++ b/sugar/p2p/Service.py
@@ -28,4 +28,5 @@ class Service(object):
def register(self, group):
pannounce = presence.PresenceAnnounce()
- pannounce.register_service(self._name, self._port, self._stype)
+ pannounce.register_service(self._address, self._name,
+ self._port, self._stype)
diff --git a/sugar/p2p/model/RemoteModel.py b/sugar/p2p/model/RemoteModel.py
index b966b43..a95c8c0 100644
--- a/sugar/p2p/model/RemoteModel.py
+++ b/sugar/p2p/model/RemoteModel.py
@@ -4,10 +4,11 @@ from sugar.p2p.NotificationListener import NotificationListener
from sugar.p2p.model.AbstractModel import AbstractModel
class RemoteModel(AbstractModel):
- def __init__(self, service):
+ def __init__(self, group, service):
AbstractModel.__init__(self)
self._service = service
+ self._group = group
addr = "http://%s:%d" % (service.get_address(), service.get_port())
self._client = xmlrpclib.ServerProxy(addr)
diff --git a/sugar/p2p/model/Store.py b/sugar/p2p/model/Store.py
index d39783f..8a69444 100644
--- a/sugar/p2p/model/Store.py
+++ b/sugar/p2p/model/Store.py
@@ -17,6 +17,6 @@ class Store:
else:
service = self._group.get_service(model_id, LocalModel.SERVICE_TYPE)
if service:
- return RemoteModel(service)
+ return RemoteModel(self._group, service)
else:
return None
diff --git a/sugar/p2p/presence.py b/sugar/p2p/presence.py
index 4c5c086..4edfc38 100644
--- a/sugar/p2p/presence.py
+++ b/sugar/p2p/presence.py
@@ -77,7 +77,7 @@ class PresenceAnnounce(object):
self.server = dbus.Interface(self.bus.get_object(avahi.DBUS_NAME, avahi.DBUS_PATH_SERVER), avahi.DBUS_INTERFACE_SERVER)
self._hostname = None
- def register_service(self, rs_name, rs_port, rs_service, **kwargs):
+ def register_service(self, rs_address, rs_name, rs_port, rs_service, **kwargs):
g = dbus.Interface(self.bus.get_object(avahi.DBUS_NAME, self.server.EntryGroupNew()), avahi.DBUS_INTERFACE_ENTRY_GROUP)
if rs_name is None:
if self._hostname is None: