Class XMLHandlerRegistry

java.lang.Object
org.apache.fop.render.XMLHandlerRegistry

public class XMLHandlerRegistry extends Object
This class holds references to various XML handlers used by FOP. It also supports automatic discovery of additional XML handlers available through the class path.
  • Field Details

    • log

      private static org.apache.commons.logging.Log log
      the logger
    • handlers

      private Map<String,List<XMLHandler>> handlers
      Map containing XML handlers for various document types
  • Constructor Details

    • XMLHandlerRegistry

      public XMLHandlerRegistry()
      Default constructor.
  • Method Details

    • setDefaultXMLHandler

      private void setDefaultXMLHandler(XMLHandler handler)
      Add a default XML handler which is able to handle any namespace.
      Parameters:
      handler - XMLHandler to use
    • addXMLHandler

      public void addXMLHandler(String classname)
      Add an XML handler. The handler itself is inspected to find out what it supports.
      Parameters:
      classname - the fully qualified class name
    • addXMLHandler

      public void addXMLHandler(XMLHandler handler)
      Add an XML handler. The handler itself is inspected to find out what it supports.
      Parameters:
      handler - the XMLHandler instance
    • addXMLHandler

      private void addXMLHandler(String ns, XMLHandler handler)
      Add an XML handler for the given MIME type and XML namespace.
      Parameters:
      ns - Namespace URI
      handler - XMLHandler to use
    • getXMLHandler

      public XMLHandler getXMLHandler(Renderer renderer, String ns)
      Returns an XMLHandler which handles an XML dialect of the given namespace and for a specified output format defined by its MIME type.
      Parameters:
      renderer - the Renderer for which to retrieve a Renderer
      ns - the XML namespace associated with the XML to be rendered
      Returns:
      the XMLHandler responsible for handling the XML or null if none is available
    • getXMLHandler

      private XMLHandler getXMLHandler(Renderer renderer, List<XMLHandler> lst)
    • discoverXMLHandlers

      private void discoverXMLHandlers()
      Discovers XMLHandler implementations through the classpath and dynamically registers them.