Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ecf-dev] AbstractShare and IChannel clean-up...

Remy Chi Jian Suen wrote:
Hi Scott,

On Wed, Apr 22, 2009 at 4:46 PM, Scott Lewis <slewis@xxxxxxxxxxxxxxxxx> wrote:
I think the channel container should call IChannel.dispose() upon
removeChannel...but you are correct that the implementation based upon the
shared object API (org.eclipse.ecf.provider.datashare) does not.  I would
consider this a bug...and I'll assign to myself and fix it for that
implementation.

Thanks for the clarification. I've opened two bugs, one for the
javadoc update and the other for the SO bug.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=273342
https://bugs.eclipse.org/bugs/show_bug.cgi?id=273343


Thanks...and I'm fixing/addressing them as we speak :).


The current approach (i.e. limited to one IChannel per
'Share'...which represents a two-way active docshare 'session') should
probably be replace with something that has e.g. an IChannel for
'control'...i.e. starting/stopping individual resource sharing...or editor
sharing, etc...with the use/creation of other IChannel specific protocols
(e.g. shared editing of a single resource with cola/sync API-based
synchronization).

Could you rephrase this? Did you mean one channel per "type" of
'Share'? "Type" here being "docshare" wherein all DocShare instances
of provider N would use the same IChannel from provider N?

Yes, I think this would be one way to do it. I'm frankly haven't thought through the use cases under consideration here (e.g. having multiple shared editing sessions/channels going simultaneously...maybe a channel ...or more than one...to manage resource/file changes, etc). So I think the main thing is to decouple the IChannel lifecycle from the share types (as well as share instances). Note that channels could conceivably be used/reused etc...for things like shared editing sessions...but there needs to be something that 'manages' such channels other than DocShare itself (which is/was written only to manage one two-way shared editing session).

Scott




Back to the top