On 5 mars 08, at 16:38, Sergiu Dumitriu wrote:
Currently the logic is spread around all the platform.
There is code
in
the Struts actions, in the XWiki giant, in the data model, in
templates,
in documents, in plugins (FileUpload, for example), so writing
restlets
that reuse this spread logic will be very inefficient:
- search all around the code to see how to do something
- duplicate code
- copy the bugs along with the code
- increase even more the mess
And we can't just completely replace the servlets (and their URLs)
with
the new REST approach, as all the bookmarks and knowledge about the
URLs
would be broken, so people will not upgrade. So we either reimplement
them using the new app logic layer, or write an URL rewrite engine
that
forwards to the new IRIs.
After your message things are a more clear.
I was just assuming that the "XWiki API" was already the layer you
were talking about. But it is clearly not the case.
And, of course, I totally agree on having a layer that factors things
for maximum reuse in different contexts.
So maybe we could rule out the RESTful XWiki, leave the WebDAV one
(that on the user side is actually a super-set) and replace it with
what Sergiu was proposing?
WDYT?
Cheers,
Fabio