Cool that you did this test Markus! I am a bit troubled by the results
though...

I fear that signals are by definition always broadcasted. We may be able
to work around this by setting a match rule on each signal connection on
the client side, but I am not sure... Something like adding a named
param. destination=bus.get_unique_name() to the line where we call
object.connect_to_signal() in client.py. However it does not appear to
be possible according to http://dbus.freedesktop.org/doc/dbus-
python/api/dbus.proxies.ProxyObject-class.html#connect_to_signal.

The alternative is to do our own simple monitoring system... Maybe
adding two methods to the Log interface:

InstallMonitor(in o client_monitor_path, in E event_template)
RemoveMonitor(in o client_monitor_path)

And then defining a new interface org.gnome.zeitgeist.Monitor with a
single method

Notify(in aE new_events)

The way we'd do this in the engine is to remember the unique bus name of
the caller in InstallMonitor() and then ping back on that address and
object path client_monitor_path, on the interface
org.gnome.zeitgeist.Monitor. We'd automagically drop monitors when
clients disconnect by listening for NameOwnerChanged.

Somehow I am nore inclined to the Monitor-solution... At least we can be
sure that it will always work disregarding if the client remembers to
set up the right match rules...

-- 
Add event notification and subscription system
https://bugs.launchpad.net/bugs/488967
You received this bug notification because you are a member of
Zeitgeist-Engine, which is the registrant for Zeitgeist Framework.

Status in Zeitgeist Framework: Confirmed

Bug description:
Zeitgeist 0.2 relayed all incoming events over the bus. This might be a bit 
over the top, but apps still need a way to get notified of events elsewhere in 
the system.

This bug relates a lot to bug #447417 "Zeitgeist should have any kind of system 
to protect users privacy" where a dynamic black listing system is needed. This 
is sort of inverse to a notification system (only "sort of" mind you).

I want to use this bug as a tracker an reminder for us/me to finish this 
feature. I have it pretty cut out in my head, so if any one else starts on this 
please ping me...

_______________________________________________
Mailing list: https://launchpad.net/~zeitgeist
Post to     : zeitgeist@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zeitgeist
More help   : https://help.launchpad.net/ListHelp

Reply via email to