To comment on the following update, log in, then open the issue: http://www.openoffice.org/issues/show_bug.cgi?id=29152
------- Additional comments from [EMAIL PROTECTED] Tue Jan 22 11:18:57 +0000 2008 ------- kso: Thank you for looking at this! Yes, I plan to separate the patch a bit so that it's easier to understand. But at least few answers now ;-) Generally, most of what the patch does is that it adds support for XActiveDataStreamer sinks, because that is the only way [I found ;-)] to be able to have the document open for all the time the user edits it - which is needed to be able to unlock the file after closing. The rest of the changes more or less depends on it - eg. the extension of the NeonInputStream to XStream (XActiveDataStreamer needs to get a full XStream). Another thing that needs comments is the "SupportsActiveStreaming" property. I've implemented it in another patch in ooo-build (http://svn.gnome.org/viewvc/ooo-build/trunk/patches/src680/sfx2-gnome-vfs-lock.diff, http://svn.gnome.org/viewvc/ooo-build/trunk/patches/src680/sfx2-gnome-vfs-lock-fix-xls.diff - I hope I did not forget other cases), because the code in sfx2 treats local files differently from others (even though everything should be provided by UCB), and for the XActiveDataStreamer to work in all the cases, this had to be extended. To answer your questions: Yes, the locking is implicit (similarly to the locking of files), if the document is locked on the server, it is opened read-only locally. The check for being locked needs a bit of an improvement, the response of the DAV server has to be checked if it is really 'document locked' error. comphelper::getProcessServiceFactory() is a crude hack, and I'm aware of that, but unfortunately it is impossible to avoid without even more growing the size of the patch :-( The reason is that ucbhelper::IsDocument() creates no interaction environment, but DAVAuthListener_Impl::authenticate() needs that to be able to provide the authentication dialog or information. When I added the creation of the interaction environment directly to ucbhelper::IsDocument(), I started getting error dialog boxes on OOo startup (harmless, but irritating). The other occurrence is in the stream destructor - again no idea how better to pass the service factory there :-( Already in the constructor? - ideas appreciated. XStream is needed for the XActiveDataStreamer as described above, the write when/if the NeonInputStream is dirty is still a TODO (but it seems not to be a problem for now). Please correct me if my assumptions above are wrong :-) Thank you! --------------------------------------------------------------------- Please do not reply to this automatically generated notification from Issue Tracker. Please log onto the website and enter your comments. http://qa.openoffice.org/issue_handling/project_issues.html#notification --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
