On Apr 7, 2009, at 2:06 PM, Asiri Rathnayake wrote:
Hi Devs,
I have committed the initial xwiki-refactoring module which has
support for
splitting a document into multiple documents.
The design of the DocumentSplitter component is somewhat like
http://i39.tinypic.com/28k24w4.png (there are few minor changes).
Anyway, we need to think of a proper desgin for the Refactoring
module that
will allow us to extend this module in future. I can see two
approaches for
this desgin:
1. We implement each refactoring operation as a single component -
like
currently it is done with DocumentSplitter. But this might not be a
good
idea because the refactoring module itself will not provide a well-
defined
API to users (it will be scattered into multiple component
interfaces).
2. We define a single Refactoring plexus component interface that will
include all the currently suppported refactoring operations (like a
facade)
- this way we have a high-level refactoring interface that can be
easliy
understood and used by users.
I think the 2 approach is more usable than the first one.
I don't like 2 either for the reasons mentioned.
Thanks
-Vincent
WDYT? may be there is a third approach?
Thanks.
- Asiri