Class XMLAbstractTranscoder

  • All Implemented Interfaces:
    Transcoder
    Direct Known Subclasses:
    SVGAbstractTranscoder

    public abstract class XMLAbstractTranscoder
    extends AbstractTranscoder
    This class may be the base class of all transcoders which take an XML document as input and which need to build a DOM tree. In order to take advantage of this class, you have to specify the following transcoding hints:
    • KEY_DOM_IMPLEMENTATION: the DOM Implementation to use
    • KEY_DOCUMENT_ELEMENT_NAMESPACE_URI: the namespace URI of the document to create
    • KEY_DOCUMENT_ELEMENT: the qualified name of the document type to create
    • Field Detail

      • KEY_XML_PARSER_CLASSNAME

        public static final TranscodingHints.Key KEY_XML_PARSER_CLASSNAME
        XML parser classname key.
        Key: KEY_XML_PARSER_CLASSNAME
        Value: String
        Default: null
        Required: Yes
        Description: Specify the XML parser classname to use.
      • KEY_XML_PARSER_VALIDATING

        public static final TranscodingHints.Key KEY_XML_PARSER_VALIDATING
        The validation mode of the XML parser.
        Key: KEY_XML_PARSER_VALIDATING
        Value: Boolean
        Default: false
        Required: No
        Description: Specify the validation mode of the XML parser.
      • KEY_DOCUMENT_ELEMENT

        public static final TranscodingHints.Key KEY_DOCUMENT_ELEMENT
        Document element key.
        Key: KEY_DOCUMENT_ELEMENT
        Value: String
        Default: null
        Required: Yes
        Description: Specify the qualified name of the document type to be created.
      • KEY_DOCUMENT_ELEMENT_NAMESPACE_URI

        public static final TranscodingHints.Key KEY_DOCUMENT_ELEMENT_NAMESPACE_URI
        Document element namespace URI key.
        Key: KEY_DOCUMENT_ELEMENT_NAMESPACE_URI
        Value: String
        Default: null
        Required: Yes
        Description: Specify the namespace URI of the document element.
      • KEY_DOM_IMPLEMENTATION

        public static final TranscodingHints.Key KEY_DOM_IMPLEMENTATION
        DOM Implementation key.
        Key: KEY_DOM_IMPLEMENTATION
        Value: String
        Default: null
        Required: Yes
        Description: Specify the DOM Implementation to use.
    • Constructor Detail

      • XMLAbstractTranscoder

        protected XMLAbstractTranscoder()
        Constructs a new XMLAbstractTranscoder.
    • Method Detail

      • transcode

        public void transcode​(TranscoderInput input,
                              TranscoderOutput output)
                       throws TranscoderException
        Transcodes the specified XML input in the specified output. All TranscoderException exceptions not catched previously are tagged as fatal errors (ie. call the fatalError method of the ErrorHandler).
        Parameters:
        input - the XML input to transcode
        output - the ouput where to transcode
        Throws:
        TranscoderException - if an error occured while transcoding
      • createDocumentFactory

        protected DocumentFactory createDocumentFactory​(org.w3c.dom.DOMImplementation domImpl,
                                                        java.lang.String parserClassname)
        Creates the DocumentFactory used to create the DOM tree. Override this method if you have to use another implementation of the DocumentFactory (ie. for SVG, you have to use the SAXSVGDocumentFactory).
        Parameters:
        domImpl - the DOM Implementation to use
        parserClassname - the XML parser classname
      • transcode

        protected abstract void transcode​(org.w3c.dom.Document document,
                                          java.lang.String uri,
                                          TranscoderOutput output)
                                   throws TranscoderException
        Transcodes the specified Document in the specified output.
        Parameters:
        document - the document to transcode
        uri - the uri of the document or null if any
        output - the ouput where to transcode
        Throws:
        TranscoderException - if an error occured while transcoding