Hello again, I was going through 3.0 JIRA issues, and I've came across with JSPWIKI-303 [#1], defining an API for JSPWiki under [com.ecyrd|org.apache].wiki.api, not only as a mean of providing access to JSPWiki internals, but as a mean of breaking cycles between classes and packages (red squares at [#2]). Basically this would mean better testability and modularity, and easier manteinance.
My intention is to do this gradually, trying to mantain binary compatibility whenever possible, targeting for 2.10.x scope (but hey, if it happens to be done for 2.9.x, so be it). This most probably means marking some methods with @Deprecated with the intention of deleting them in 2.10.x. As of candidates for wiki.api package, I'd look both in [#3] and WikiEngine#initialize(Properties), lines 523-587, making the appropiate changes so ClassUtils returns always interfaces. As I've had to take a look at the plugins recently, I was about to begin with PluginManager + WikiPlugin. thoughts? [#1] https://issues.apache.org/jira/browse/JSPWIKI-303 [#2] https://analysis.apache.org/plugins/resource/110730?page=org.sonar.plugins.design.ui.page.DesignPage [#3] http://www.jspwiki.org/wiki/JSPWiki3APIDesignProposal
