[Telepathy] TpChannelView

Danielle Madeley danielle.madeley at collabora.co.uk
Tue Aug 24 04:17:18 PDT 2010


On Tue, 2010-08-24 at 10:30 +0100, Simon McVittie wrote:
> On Tue, 24 Aug 2010 at 12:39:04 +1000, Danielle Madeley wrote:
> > Our discussion on TpChannelView seems to have fallen by the wayside. We
> > really need a consensus on this so that we can get TpStreamTube,
> > TpDBusTube and TpTextChannel finished and merged.
> 
> I think we're heading for consensus that subclasses are the right thing
> to do after all, and that TpBaseClient and TpAccountChannelRequest should
> let you plug in either a GType for a TpChannel subclass, or an object
> implementing a GInterface that turns (object path, immutable properties) into
> a TpChannel.

Perhaps TpBaseClient et al should take an optional TpBaseChannelFactory,
which if not provided, defaults to TpChannelFactory.

TpBaseChannelFactory has one method you need to implement,
create_channel, which gives you a path, and the properties, and expects
you to call whatever preparation you need, eventually calling back to
tp_base_channel_factory_channel_ready().

This would allow you to create a channel factory that could prepare
extra properties, or handle additional channel subclasses.

The default concrete implementation, TpChannelFactory, would do whatever
we expected it to do in the normal case.

-- 
Danielle Madeley
Software Developer, Collabora Ltd.                  Melbourne, Australia

www.collabora.co.uk



More information about the telepathy mailing list