Hi Asiri,

This is great work! Ludovic and I have tried the new version of XEclipse with the offline feature and it works great :)

I think we would just need to add a warning if the content has changed on the server while syncing from XEclipse and then we're ready to release (unless it's hard to do and then we could release it now as is for 1.0M2). I guess this could be done by storing the version locally. WDYT?

Again, well done, this is turning into an awesome product! I'm really thrilled by what Tharindu and you have achieved.

Thanks
-Vincent

On Oct 7, 2007, at 10:09 AM, Asiri Rathnayake wrote:

Hi Vincent and all,

A bare-bones version of xeclipse-offline is now available. I would be glad if someone can test it a bit :)

Several issues that might be of interest,

1. Custom serialization of java objects is used to implement connection persistence, all connections are persisted in the plugin state location. I'm not sure how this approach compares to eclipse's native
    persistence mechanism.

2. Object hierarchy is persisted in the local file-system as a file hierarchy. That is, under the main cache location (plugin state location) each connection has a ".cache" file and a directory for caching it's spaces. Under this directory spaces are cached with a ".cache" file for each space and another directory for each space to store it's pages. Pages again has a ".cache" file for each. I have followed this method to avoid caching the whole object hierarchy into a one big file (which would have to be re- written each time a page is changed).

3. This scheme can be extended so that the user can specify where to cache his data.

4. Different icons are used to represent state of pages (cached, uncommitted etc.).

5.    Whole spaces can be grabbed into local store for editing.

6. No warnings are given for conflicts, A blind mechanism is used. This need to be improved.


Please let me know if there are any concerns / ideas.

Thanks a lot.

- Asiri
On 9/11/07, Asiri Rathnayake <[EMAIL PROTECTED]> wrote:
Hi All,

I've undertaken the task of implementing XEclipse off-line and thought I would start a thread with status updates (as told by Vincent).

As of today I have implemented caching of documents into local repository. When the user navigates through the document hierarchy, each visited node is stored into the local repository. Also, all edits to documents are saved into local repository as well. To complete XEclipse off-line, following tasks need to be done,

* Add an "off-line" flag to XWikiConnection and divert user actions into local repository when user is working off-line.

* Add necessary routines to re-construct the document hierarchy using local repository.

* Add a sync function to sync the above created hierarchy with remote server.

* Make necessary changes to UI components.

As you can see there is lot to be done.

Due to my exams I won't be able to work on XEclipse for about 2-3 weeks (till 28th), but I will definitely get on with it after that. A big sorry about the missed dead-line (XEclipse Off-line was promised to deliver on 10th).

Thanks.

- Asiri


_______________________________________________
devs mailing list
devs@xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to