[Bug 37971] New: TpClientChannelFactory should cache and re-use existing TpChannel

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Jun 6 10:32:39 CEST 2011


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

           Summary: TpClientChannelFactory should cache and re-use
                    existing TpChannel
           Product: Telepathy
           Version: unspecified
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: medium
         Component: tp-glib
        AssignedTo: telepathy-bugs at lists.freedesktop.org
        ReportedBy: guillaume.desmottes at collabora.co.uk
         QAContact: telepathy-bugs at lists.freedesktop.org


Let's start with a real life issue:
- Start a chat in Empathy
- Using the Shell, click on the message tray bubble
- HandleChannels() is re-called on Empathy, asking it to present the channel

All good. But when doing so, TpBaseClient's HandleChannels() implementation
creates a NEW TpChannel subclass (which is actually a EmpathyTpChat as Empathy
provides its own factory) doing a bunch of preparation and so involving useless
D-Bus traffic.

Re-using the existing TpChannel would avoid this extra useless work.

We could do the caching in TpClientChannelFactoryInterface so the each
implementation wouldn't have to re-implement it. I guess it would probably be
best to add a _ensure_channel() method rather than modifying _create_channel()
to make things clearer.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- 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