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.
WDYT? may be there is a third approach?
Thanks.
- Asiri