[Bug 59024] Think about a more introspectable way of doing mixins

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Tue Oct 22 17:05:25 CEST 2013


https://bugs.freedesktop.org/show_bug.cgi?id=59024

--- Comment #5 from Simon McVittie <simon.mcvittie at collabora.co.uk> ---
Created attachment 87991
  --> https://bugs.freedesktop.org/attachment.cgi?id=87991&action=edit
[WiP] Add TpExportable, an introspectable way for mixins to  implement methods

The main problems with our current mixins, from an introspection point
of view, are:

* needing to be able to call functions during class initialization;
* needing to be able to implement a parent object's D-Bus methods,
  currently done with G_IMPLEMENT_INTERFACE, which is not introspectable

The first can be avoided by calling similar functions during instance
initialization, if necessary.

The second is somewhat harder, but we can use a signal as our hook.

---

We could add get-property and set-property signals which work similarly, if
desired.

Open questions include:

* Should the signal be call-method::inter.face.method or just
call-method::inter.face? (Currently call-method::inter.face.method.)

* If a parent class and its subclass both connect to call-method for the same
method, I think the parent class' implementation will get the first chance to
respond to the method call, which is clearly wrong. Can we arrange for the most
recently-connected signal connection to be called first, instead?

This needs more regression tests, probably.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the telepathy-bugs mailing list