Uploaded image for project: 'XWiki Platform'
  1. XWiki Platform
  2. XWIKI-3269

Make Rendering classes usable from a non-component environment

    XMLWordPrintable

Details

    • Improvement
    • Resolution: Won't Fix
    • Minor
    • None
    • 1.8 RC1
    • {Unused} Rendering 2.0
    • None

    Description

      If we want to separate the Rendering from XWiki Core so that it becomes a top level project and is usable standalone without requiring to have XWiki installed then we need to make it usable without requiring Plexus and without requiring private member field injection. For this we need to do 2 things:

      • Add setters to set the private fields
      • Make the implementation classes user public, ie move them out of the internal package

      As an example we'd need to be able to register a transformation against the transformation manager, and to be able to register macros against the macro transformation. Something like this:

      MacroTransformation macroTransformation = new DefaultMacroTransformation();
      macroTransformation.registerMacro(new GroovyMacro());
      TransformationManager manager = new DefaultTransformationManager();
      manager.registerTransformation(macroTransformation);
      

      Note that we might need to add some non default constructors too and to move things around a bit.

      Attachments

        Issue Links

          Activity

            People

              vmassol Vincent Massol
              vmassol Vincent Massol
              Votes:
              1 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: