I just took a quick look. Beside a FIXME there seems to be no usage of 
the ownership at all, so it should not matter what argument (JID) you 
use for the ownership at all.

On 28.04.2015 13:28, Denis Washington wrote:
> Hi,
>
> As you might know, I am currently working on implementing project sharing by 
> non-hosts. It currently works like this:
>
> - Bob (a non-host) initiates a project negotiation with Alice (the host). If 
> Alice accepts it, the negotiation proceeds as normal.
>
> - After having received the project, Alice distributes it to Carl and Dave 
> (the other session members) by starting a project negotiation with each of 
> them, just as if she shared the project in the first place (with the 
> exception that she omits sending it to Bob, who obviously has the project 
> already).
>
> When I initially tested this, something strange happened: while code changes 
> were properly synchronized between Alice, Carl and Dave afterwards, the 
> changes of Bob  were completely ignored. After some analysis, I figured out 
> that the reason for this lied in the way Saros projects were identified: not 
> only by their name, but also by the JID of its "owner" - that is, the user 
> from which the project was received.
>
>      // IncomingProjectNegotiation.java:206
>      session.addProjectMapping(projectID, project, peer);
>
> The problem here is that Bob thinks he "owns" the project (because he shared 
> it), while the other members of the session assume the owner to be Alice (as 
> she distributed the project to them). I guess this results in both sides 
> thinking they are doing changes to different projects, which prevents 
> synchronization.
>
> In my (admittedly hacky) draft patch, I addressed this problem by just always 
> giving "ownership" to the host as far as project identification is concerned:
>
>      session.addProjectMapping(projectID, project, 
> session.getHost().getJID());
>
> This makes everything work as expected. Which makes me wonder: why does the 
> code have the notion of "project ownership" anyway, given that the host was 
> the only user that could share (and thus "own") a project? Is this a leftover 
> of the time where every user could share a project with everyone else 
> directly? If so, shouldn't this concept be removed from the codebase?
>
> Regards,
> Denis
>
> ------------------------------------------------------------------------------
> One dashboard for servers and applications across Physical-Virtual-Cloud
> Widest out-of-the-box monitoring support with 50+ applications
> Performance metrics, stats and reports that give you Actionable Insights
> Deep dive visibility with transaction tracing using APM Insight.
> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
> _______________________________________________
> DPP-Devel mailing list
> DPP-Devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/dpp-devel


------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
DPP-Devel mailing list
DPP-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dpp-devel

Reply via email to