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

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Apr 11 03:27:56 PDT 2014


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

--- Comment #15 from Simon McVittie <simon.mcvittie at collabora.co.uk> ---
(In reply to comment #14)
> TpBaseConnection implements the
> dbus interface using gdbus-codegen's skeleton if (TP_IS_PRESENCE_MIXIN
> (self)).

I didn't like this design in the past, and I still don't. I would like to keep
non-core interfaces out of TpBaseConnection.

With the GDBusObjectSkeleton branch I'm trying to finish, I think we can do
this, though:

* TpPresenceMixin is a GInterface
* TpPresenceSkeleton is a GDBusInterfaceSkeleton subclass
* HazeConnection has-a TpPresenceSkeleton, and implements TpPresenceMixin
* TpPresenceSkeleton calls methods on TpPresenceMixin
* haze_connection_constructed() adds its TpPresenceSkeleton to its
  GDBusObjectSkeleton list of interfaces

which isn't that much boilerplate and keeps the loose coupling.

-- 
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