On 8/7/07, Vincent Massol <vincent(a)massol.net> wrote:
On Aug 7, 2007, at 8:59 AM, Asiri Rathnayake wrote:
Hi Vincent,
[snip]
Also, we need some help regarding XEclipse off-line. We are struggling bit
to find a place to start development. And one
more question, do we need to
complete the off-line operation mode within GSoC time period ? we're having
trouble with academic work load.
I think you need to provide a simple offline feature which is the
ability to:
- save pages locally (I recall there's an easy eclipse api for this)
- ability to choose what to download from the server: a page, a full
space or a full wiki
- ability to check if the page isn't more recent on the server on save
and if so warn the user and let him decide what to do: overwrite the server
version or cancel
- ability to refresh one's own copy of saved pages with the server's
versions
I've been thinking about XEclipse off-line for a while and I can't see an
easy way out. May be I'm not on the right track, but i believe there is a
plenty of work that need to be done in order to implement off-line operation
of XEclipse.
This is the scheme I propose,
1. When the user creates a connection for the first time, we create a
local cached file hierarchy that resembles the corresponding wiki site.
Are you suggesting that the full site is cached?
I'd suggest to cache only what the user wants when he clicks on some
offline button (site, space, page) + cache whatever page he navigates to.
Since we give the user a chance to select which spaces he wish to work on,
we can cache only those spaces. Also, as you said, we expand the cache only
when user navigates through spaces and views documents.
When the user expands a space, we retrieve summaries for corresponding pages
within that space (this is implemented), then we can create files for each
page in the local cache with those summary details (so that we can build the
navigation tree even on off-line mode).
If the user opens a particular document for editing, that document (complete
version, not the summary) is retrieved from the server (implemented), and
now we can update the cache with the full document.
If the user edits a document in on-line mode, changes will be made to cache
as well as the server. Other than this, we must give a functionality so that
the user can selectively force some documents be downloaded to cache (for
off-line editing).
We'll have to use different icons to indicate the different states of
documents (in cache) like,
* documents in summary form.
* documents in complete form.
* documents which are not in sync with server (dirty pages).
* documents which conflicts with server copy (?)
and more will come as we add other features (like permission issues)
This is what we have in mind, WDYT ?
2. When user make changes to pages, we update the
local cache as well as
the server.
This way, we can let the user operate in a "disconnected" mode without
committing changes to the server copy, and once he wishes to do so, he can
flush the local cache to the server (with some validity checks).
As it is obvious by now, the current implementation need to be changed a
bit to accommodate for these requirements.
Yes I agree but you forgot some of the points I made, like first check if
there's a change on the server before saving the document and if so asking
the user what he wants to do, etc. + the ability to refresh one's cache with
server versions and again warn if there's some more recent unsaved local
changes.
Agreed, these issues have to addressed.
Thanks.
- Asiri & Tharindu
I don't know whether this is the only solution,
but this is the way i saw
it. Please let me know if you believe there is an easy way.
We're looking forward to start on XEclipse off-line asap, but need to
finalize the approach upfront.
Yep, agreed.
Btw, are there any work left for M1 ?
I've just checked and there 4 issues opened in JIRA. Could you close the
ones that have been done?
The biggest one now I think is the m2 build one.
Another one is to decide how we want to make the plugin available:
- through a JAR download in our maven remote repo - We need that I think
- through an Eclipse update site. I guess we could create such an update
site in our m2 build and attach is as a zip file on the download page of
xwiki.org. Anyway we could leave that as a task for later and start only
with a released JAR file
One other issue that I've just added for 1.1M1 is the documentation. We
need a minimal documentation on XEclipse for:
- installing
- using
See
http://jira.xwiki.org/jira/browse/XECLIPSE-20
I'm currently focusing on the 1.1M4 release for the coming 1-2 days but
after that I'll work on the m2 build.
I know we're late and mostly because of me... Sorry about that. I propose
the following new release dates:
- 1.0M1: 14th of August
- 1.0M2: 10th of September (we have the 1.1 final release planned for the
3rd of September which is why I skipped that week)
I think this date of 10th of Sep should leave you enough time to implement
the remaining features for 1.1M2, including the offline feature, WDYT?
Note: I'm also on holiday the week of the 20th.
Thanks
-Vincent
Basically this means everything except the hard part which is the
synchronization.
Let me know if this is possible but I don't think this is too hard to do
and it's important for such a tool I think.
Now I haven't reviewed what's left you have to do for 1.1M2 but that
needs to be finished as a priority.
Let me know if you have any schedule issues with this and we'll try to
find a solution. I'll work on the m2 build this coming week to help you.
Thanks
-Vincent
On 8/4/07, Vincent Massol < vincent(a)massol.net> wrote:
>
> Hi Tharindu,
> I've tried adding both of you but your ids don't exist on
>
forge.objectweb.org...
> I've committed xeclipse into xwiki-sandbox but you don't have write
> access yet as I couldn't add you...
>
> Thanks
> -Vincent
>
> On Aug 3, 2007, at 5:56 PM, tharindu jayasuriya wrote:
>
> Hi Vincent,
>
> On 8/3/07, Vincent Massol <vincent(a)massol.net > wrote:
> >
> > Hi Tharindu/Asiri,
> > I have reviewed the patch and it looks good. Only potential issue is
> > the package name you've used: org.xwiki.plugins. So far we've used
> > com.xpn.xwiki.*. However you're correct that we want to move to
> > org.xwiki. That said we need to decide if we want to do the move
> > right now for the Eclipse extension. I think it's a good idea to do so and
> > the strategy would be that any new extension/plugin or any component in the
> > new architecture should be located in the org.xwiki package. What do
> > others think?
> >
> > I'm going to commit it to xwiki-sandbox for now (till we have a
> > maven2 build for it, then I'll move it to xwiki-extensions/eclipse) and we
> > have already voted to give you access to it.
> >
>
> Thanks a lot. We were thinking about moving into implementing the
> off-line operations asap, i think we need to take few design decisions
> upfront regarding off-line operations (mainly issues regarding
> synchronization). I'll make a post once we have thought about an initial
> idea so that we can optimize it on the dev list.
>
> I'll just need your ObjectWeb user id to give you write access.
> >
>
> Tharindu - tharindujayasuriya
>
> Asiri - asiri
>
> Thanks.
>
> - Tharindu & Asiri
>
> Thanks
> > -Vincent
> >
> > On Jul 31, 2007, at 2:45 PM, Vincent Massol wrote:
> >
> > Hi Tharindu,
> > I'll review this latest patch later today or tomorrow.
> >
> > Thanks
> > -Vincent
> >
> > On Jul 28, 2007, at 7:32 PM, tharindu jayasuriya wrote:
> >
> > Hi All,
> >
> > Attached are the latest sources and binaries of XEclipse m1.
> >
> > Issues Fixed,
> >
> > 1. All Jigloo dependencies removed.
> >
> > 2. Code documentation improved according to instructions from
> > Vincent.
> >
> > 3. Back-End XML RPC's patched to suite XEclipse (Asiri)
> >
> >
http://jira.xwiki.org/jira/browse/XWIKI-1520
> >
> >
http://jira.xwiki.org/jira/browse/XWIKI-1521
> >
> >
http://jira.xwiki.org/jira/browse/XWIKI-1524
> >
> > Let's hope this would finalize XEclipse m1 ... :)
> >
> > Hoping to hear from you soon...
> >
> > Thanks.
> >
> > - Tharindu & Asiri
> >
> > On 7/16/07, Vincent Massol < vincent(a)massol.net > wrote:
> > >
> > > Hi Tharindu,
> > > I have done a first pass on the code review and I have a few
> > > comments:
> > >
> > > 1) You seem to have use Cloudgarden's Jigloo and unfortunately the
> > > license isn't good enough for us so we cannot use it... Here's
what it says
> > > in the generated file:
> > >
> > > /**
> > > * This code was edited or generated using CloudGarden's Jigloo
> > > SWT/Swing GUI Builder, which is free
> > > * for non-commercial use. If Jigloo is being used commercially
> > > (ie, by a corporation, company or
> > > * business for any purpose whatever) then you should purchase a
> > > license for each developer using
> > > * Jigloo. Please visit
www.cloudgarden.com for details. Use of
> > > Jigloo implies acceptance of these
> > > * licensing terms. A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
> > > THIS MACHINE, SO JIGLOO OR THIS
> > > * CODE CANNOT BE USED LEGALLY FOR ANY CORPORATE OR COMMERCIAL
> > > PURPOSE.
> > > */
> > >
> > > We cannot use Jigloo because we want commercial companies using
> > > XWiki under the LGPL license. Thus we cannot commit this code.
> > >
> > > Could you find some alternative? The UI doesn't seem too complex
> > > so I should be easy to do it by hand I think.
> > >
> > > 2) Thanks for your javadoc. It's nice and helps a lot. However it
> > > can be improved, especially for Classes. This is the most important
Javadoc
> > > and should answer the question "what is the class for?".
> > >
> > > Also please see:
> > >
> > >
http://www.xwiki.org/xwiki/bin/view/Community/CodeStyle#HDonotuse27public27…
> > >
> > >
http://www.xwiki.org/xwiki/bin/view/Community/CodeStyle#HDonotduplicatemeth…
> > >
> > > Parameters and return value shouldn't start with "-" in
javadoc.
> > > See the Sun's Javadoc coding conventions.
> > >
> > > 3) Please add copyright to all classes and don't use the @author
> > > tag. Instead we'll add Asiri and yourself to the Hall of Fame + in the
SVN
> > > commits.
> > >
> > > The rest sounds good. We need to add maven build of course. I'll
> > > start looking into that after we fix the points above.
> > >
> > > Also, I haven't coded plugins in Eclipse for a very very long time
> > > so I have no idea if what you've done is the right way of doing it so
I'll
> > > assume it is :-)
> > >
> > > Thanks again and keep up the good work!
> > > -Vincent
> > >
> > > On Jul 15, 2007, at 10:04 AM, tharindu jayasuriya wrote:
> > >
> > > Hi all,
> > >
> > > This is about r.1.0.m1 version of xeclipse (XWiki-Eclipse-Plugin).
> > >
> > > We have completed following tasks in this release,
> > >
> > > 1. Cleaned up source code ( need to be confirmed by Vincent )
> > >
> > > 2. Implemented adding/deleting pages.
> > >
> > > - Adding pages does not seem to work correctly due to some
> > > errors in XML-RPC implementation of XWiki, need to look into this.
> > > - Removing pages does not work at all because the
> > > corresponding XML-RPC is not implemented in XWiki.
> > >
> > > 3. Implemented adding/deleting spaces.
> > >
> > > - Adding spaces work fine.
> > > - Deleting spaces does not work (RPC not implemented in XWiki)
> > >
> > > As it's obvious by now, we need to peek into XWiki internals to
> > > get these issues fixed. But since we have a scheduled release today (and
> > > these issues showed up all of a sudden), we thought of finishing the work
> > > from the plugin's end and uploading the relevant work. Anyway, those
issues
> > > need to be fixed asap.
> > >
> > > We have tested the work on a stand alone (HSQLDB) Xwiki
> > > installation, it would be really nice if someone can test the plugin on a
> > > real server and confirm the results :)
> > >
> > > Vincent, I couldn't find an appropriate place to upload the files
> > > in XWIKI JIRA, so i thought of attaching relevant files into this email.
I'm
> > > really sorry for any inconveniences.
> > >
> > > Hope to hear from you very soon.
> > >
> > > Thanks a lot!
> > >
> > > - Tharindu & Asiri
> > >
> > >
--
You receive this message as a subscriber of the xwiki-dev(a)objectweb.orgmailing list.
To unsubscribe: mailto:xwiki-dev-unsubscribe@objectweb.org
For general help: mailto:sympa@objectweb.org?subject=help
ObjectWeb mailing lists service home page:
http://www.objectweb.org/wws