JSPWiki
  1. JSPWiki
  2. JSPWIKI-570

Cannot use another MarkupParser - hardcoded references to RenderingManager and JSPWikiMarkupParser

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Trivial Trivial
    • Resolution: Unresolved
    • Affects Version/s: 2.8.2
    • Fix Version/s: FutureVersion
    • Component/s: Core & storage
    • Labels:
      None

      Description

      I'm playing a little with JSPWiki and decided to try different markup syntax to learn a bit more. To do so I have to inherit from RenderingManager and implement another MarkupParser. WikiEngine does good job instantiating RenderingManager:

      m_renderingManager  = (RenderingManager)   ClassUtil.getMappedObject(RenderingManager.class.getName());

      but src/webdocs/templates/default/editors/FCK.jsp does it directly:

      RenderingManager renderingManager = new RenderingManager();

      while it should get help from WikiEngine:

      RenderingManager renderingManager = engine.getRenderingManager();

      or (it new instance is required) call getMappetObject itself.

      There are also some problems with JSPWikiMarkupParser:

      • direct calls or references to static members getImagePatterns, isExternalLink, makeError - (not a big problem for me)
      • private members - some of them would be useful for inherited parser (for example no access to build DOM: m_plainTextBuf, pushElement and related, fillBuffer (of course I can copy-and-paste JSPWikiMarkupParser rather than inherit from it)
      • direct instantiation in src/com/ecyrd/jspwiki/plugin/TableOfContents.java
        JSPWikiMarkupParser parser = new JSPWikiMarkupParser( context, ...
                    parser.addHeadingListener( this );
                    parser.parse();
        

        this looks like a bigger problem, because TableOfContents:

        • does its own parsing (so parsing is done two times) and also (ok this is just performance),
        • does this with directly instantiated JSPWikiMarkupParser (so mine is not called what means I can't change header indicators)

      Of course for my purpose I will do required corrections. The question is are you gays going to work on it?, is it also a problem in 3.0 ? Should I prepare and publish a patch?

        Activity

        Harry Metske made changes -
        Field Original Value New Value
        Fix Version/s FutureVersion [ 12315003 ]
        Piotr Tarnowski created issue -

          People

          • Assignee:
            Unassigned
            Reporter:
            Piotr Tarnowski
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:

              Development