org.apache.fop.render

Interface XMLHandler

Known Implementing Classes:
AbstractGenericSVGHandler, AFPSVGHandler, Java2DSVGHandler, PCLSVGHandler, PDFSVGHandler, PSSVGHandler, SVGSVGHandler, XMLXMLHandler

public interface XMLHandler

This interface is implemented by classes that can handle a certain type of foreign objects.

Field Summary

static String
HANDLE_ALL
Used to indicate that all MIME types or XML namespaces are handled.

Method Summary

String
getNamespace()
void
handleXML(RendererContext context, Document doc, String ns)
Handle an external xml document inside a Foreign Object Area.
boolean
supportsRenderer(Renderer renderer)
Checks if this XMLHandler supports handling an XML namespace for a particular renderer.

Field Details

HANDLE_ALL

public static final String HANDLE_ALL
Used to indicate that all MIME types or XML namespaces are handled.

Method Details

getNamespace

public String getNamespace()
Returns:
the XML namespace for the XML dialect this XMLHandler supports, null if all XML content is handled by this instance.

handleXML

public void handleXML(RendererContext context,
                      Document doc,
                      String ns)
            throws Exception
Handle an external xml document inside a Foreign Object Area.

This may throw an exception if for some reason it cannot be handled. The caller is expected to deal with this exception.

The implementation may convert the XML document internally to another XML dialect (SVG, for example) and call renderXML() on the AbstractRenderer again (which can be retrieved through the RendererContext).

Parameters:
context - The RendererContext (contains the user agent)
doc - A DOM containing the foreign object to be processed
ns - The Namespace of the foreign object

supportsRenderer

public boolean supportsRenderer(Renderer renderer)
Checks if this XMLHandler supports handling an XML namespace for a particular renderer.
Parameters:
renderer - the renderer for which to check.
Returns:
true if this XML handler supports a particular renderer

Copyright 1999-2007 The Apache Software Foundation. All Rights Reserved.