org.apache.cocoon.xml
Class DocumentHandlerWrapper

java.lang.Object
  |
  +--org.apache.avalon.framework.logger.AbstractLoggable
        |
        +--org.apache.cocoon.xml.AbstractXMLConsumer
              |
              +--org.apache.cocoon.xml.DocumentHandlerWrapper
All Implemented Interfaces:
org.xml.sax.ContentHandler, org.xml.sax.ext.LexicalHandler, org.apache.avalon.framework.logger.Loggable, XMLConsumer
Direct Known Subclasses:
XTTransformer

public class DocumentHandlerWrapper
extends AbstractXMLConsumer
implements org.apache.avalon.framework.logger.Loggable

This class is an utility class "wrapping" around a SAX version 1.0 DocumentHandler and forwarding it those events received throug its XMLConsumers interface.
This class fully supports XML namespaces, converting startPrefixMapping(...) and endPrefixMapping(...) calls into appropriate xmlns and xmlns:... element attributes.

Version:
CVS $Id: DocumentHandlerWrapper.java,v 1.4 2002/02/22 07:03:58 cziegeler Exp $
Author:
Pierpaolo Fumagalli (Apache Software Foundation, Exoffice Technologies)

Field Summary
protected  org.xml.sax.DocumentHandler documentHandler
          The current DocumentHandler.
protected  org.apache.log.Logger log
           
 
Constructor Summary
DocumentHandlerWrapper()
          Create a new DocumentHandlerWrapper instance.
DocumentHandlerWrapper(org.xml.sax.DocumentHandler document)
          Create a new DocumentHandlerWrapper instance.
 
Method Summary
 void characters(char[] ch, int start, int len)
          Receive notification of character data.
 void endDocument()
          Receive notification of the end of a document.
 void endElement(java.lang.String uri, java.lang.String loc, java.lang.String raw)
          Receive notification of the end of an element.
 void endPrefixMapping(java.lang.String prefix)
          End the scope of a prefix-URI mapping.
 void ignorableWhitespace(char[] ch, int start, int len)
          Receive notification of ignorable whitespace in element content.
 void processingInstruction(java.lang.String target, java.lang.String data)
          Receive notification of a processing instruction.
 void recycle()
          Implementation of the recycle method
 void setDocumentHandler(org.xml.sax.DocumentHandler document)
          Set the DocumentHandler that will receive XML data.
 void setDocumentLocator(org.xml.sax.Locator locator)
          Receive an object for locating the origin of SAX document events.
 void setLogger(org.apache.log.Logger logger)
           
 void startDocument()
          Receive notification of the beginning of a document.
 void startElement(java.lang.String uri, java.lang.String loc, java.lang.String raw, org.xml.sax.Attributes a)
          Receive notification of the beginning of an element.
 void startPrefixMapping(java.lang.String prefix, java.lang.String uri)
          Begin the scope of a prefix-URI Namespace mapping.
 
Methods inherited from class org.apache.cocoon.xml.AbstractXMLConsumer
comment, endCDATA, endDTD, endEntity, skippedEntity, startCDATA, startDTD, startEntity
 
Methods inherited from class org.apache.avalon.framework.logger.AbstractLoggable
getLogger, setupLogger, setupLogger, setupLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

protected org.apache.log.Logger log

documentHandler

protected org.xml.sax.DocumentHandler documentHandler
The current DocumentHandler.
Constructor Detail

DocumentHandlerWrapper

public DocumentHandlerWrapper()
Create a new DocumentHandlerWrapper instance.

DocumentHandlerWrapper

public DocumentHandlerWrapper(org.xml.sax.DocumentHandler document)
Create a new DocumentHandlerWrapper instance.
Method Detail

setLogger

public void setLogger(org.apache.log.Logger logger)
Specified by:
setLogger in interface org.apache.avalon.framework.logger.Loggable
Overrides:
setLogger in class org.apache.avalon.framework.logger.AbstractLoggable

recycle

public void recycle()
Implementation of the recycle method

setDocumentHandler

public void setDocumentHandler(org.xml.sax.DocumentHandler document)
                        throws java.lang.IllegalStateException
Set the DocumentHandler that will receive XML data.
Throws:
java.lang.IllegalStateException - If the DocumentHandler was already set.

setDocumentLocator

public void setDocumentLocator(org.xml.sax.Locator locator)
Receive an object for locating the origin of SAX document events.
Overrides:
setDocumentLocator in class AbstractXMLConsumer
Following copied from class: org.apache.cocoon.xml.AbstractXMLConsumer
Parameters:
locator - An object that can return the location of any SAX document event.

startDocument

public void startDocument()
                   throws org.xml.sax.SAXException
Receive notification of the beginning of a document.
Overrides:
startDocument in class AbstractXMLConsumer

endDocument

public void endDocument()
                 throws org.xml.sax.SAXException
Receive notification of the end of a document.
Overrides:
endDocument in class AbstractXMLConsumer

startPrefixMapping

public void startPrefixMapping(java.lang.String prefix,
                               java.lang.String uri)
                        throws org.xml.sax.SAXException
Begin the scope of a prefix-URI Namespace mapping.
Overrides:
startPrefixMapping in class AbstractXMLConsumer
Following copied from class: org.apache.cocoon.xml.AbstractXMLConsumer
Parameters:
prefix - The Namespace prefix being declared.
uri - The Namespace URI the prefix is mapped to.

endPrefixMapping

public void endPrefixMapping(java.lang.String prefix)
                      throws org.xml.sax.SAXException
End the scope of a prefix-URI mapping.
Overrides:
endPrefixMapping in class AbstractXMLConsumer
Following copied from class: org.apache.cocoon.xml.AbstractXMLConsumer
Parameters:
prefix - The prefix that was being mapping.

startElement

public void startElement(java.lang.String uri,
                         java.lang.String loc,
                         java.lang.String raw,
                         org.xml.sax.Attributes a)
                  throws org.xml.sax.SAXException
Receive notification of the beginning of an element.
Overrides:
startElement in class AbstractXMLConsumer
Following copied from class: org.apache.cocoon.xml.AbstractXMLConsumer
Parameters:
uri - The Namespace URI, or the empty string if the element has no Namespace URI or if Namespace processing is not being performed.
loc - The local name (without prefix), or the empty string if Namespace processing is not being performed.
raw - The raw XML 1.0 name (with prefix), or the empty string if raw names are not available.
a - The attributes attached to the element. If there are no attributes, it shall be an empty Attributes object.

endElement

public void endElement(java.lang.String uri,
                       java.lang.String loc,
                       java.lang.String raw)
                throws org.xml.sax.SAXException
Receive notification of the end of an element.
Overrides:
endElement in class AbstractXMLConsumer
Following copied from class: org.apache.cocoon.xml.AbstractXMLConsumer
Parameters:
uri - The Namespace URI, or the empty string if the element has no Namespace URI or if Namespace processing is not being performed.
loc - The local name (without prefix), or the empty string if Namespace processing is not being performed.
raw - The raw XML 1.0 name (with prefix), or the empty string if raw names are not available.

characters

public void characters(char[] ch,
                       int start,
                       int len)
                throws org.xml.sax.SAXException
Receive notification of character data.
Overrides:
characters in class AbstractXMLConsumer
Following copied from class: org.apache.cocoon.xml.AbstractXMLConsumer
Parameters:
ch - The characters from the XML document.
start - The start position in the array.
len - The number of characters to read from the array.

ignorableWhitespace

public void ignorableWhitespace(char[] ch,
                                int start,
                                int len)
                         throws org.xml.sax.SAXException
Receive notification of ignorable whitespace in element content.
Overrides:
ignorableWhitespace in class AbstractXMLConsumer
Following copied from class: org.apache.cocoon.xml.AbstractXMLConsumer
Parameters:
ch - The characters from the XML document.
start - The start position in the array.
len - The number of characters to read from the array.

processingInstruction

public void processingInstruction(java.lang.String target,
                                  java.lang.String data)
                           throws org.xml.sax.SAXException
Receive notification of a processing instruction.
Overrides:
processingInstruction in class AbstractXMLConsumer
Following copied from class: org.apache.cocoon.xml.AbstractXMLConsumer
Parameters:
target - The processing instruction target.
data - The processing instruction data, or null if none was supplied.


Copyright © 1999-2002 Apache Software Foundation. All Rights Reserved.