Hi, I'd like to propose refactoring the Listener/Renderer classes for the following reasons: * too hard to write renderers since they're using a "streaming" API which makes it very difficult to have lookaheads * streaming api not required since we're using a XDOM object which "breaks" streaming anyway
Thus I'm proposing to: * Remove Listener interface * Modify Renderer interface to have a single method: render(XDOM, WikiPrinter) * Rewrite existing Renderers and make them components (it would now be possible) I have brainstormed on this with Thomas Mortagne and we have both agreed that we don't see any problems with this since we absolutely need the XDOM object for: * ability to have macro priorities (TOC, Include macro, etc) and powerful transformations in general * ability to cache parsed content Let me know what you think quickly since I'd like to start the refactoring ASAP since it's a prerequisite for doing another refactoring (moving the XWikiXhtmlEscapeHandler to the XWikiSyntaxRenderer) which itself is required for solving this issue: http://jira.xwiki.org/jira/browse/XWIKI-2851 Thanks -Vincent _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

