org.apache.avalon.excalibur.xml
Class ContentHandlerWrapper

java.lang.Object
  |
  +--org.apache.avalon.framework.logger.AbstractLogEnabled
        |
        +--org.apache.avalon.excalibur.xml.AbstractXMLConsumer
              |
              +--org.apache.avalon.excalibur.xml.ContentHandlerWrapper
All Implemented Interfaces:
org.xml.sax.ContentHandler, org.xml.sax.ext.LexicalHandler, org.apache.avalon.framework.logger.LogEnabled, Poolable, Recyclable, XMLConsumer

public class ContentHandlerWrapper
extends AbstractXMLConsumer
implements Recyclable

This class is an utility class "wrapping" around a SAX version 2.0 ContentHandler and forwarding it those events received throug its XMLConsumers interface.

Version:
CVS $Revision: 1.3 $ $Date: 2001/12/11 09:53:38 $
Author:
Davanum Srinivas (Apache Software Foundation, Computer Associates)

Field Summary
protected  org.xml.sax.ContentHandler contentHandler
          The current ContentHandler.
protected  org.xml.sax.ext.LexicalHandler lexicalHandler
          The optional LexicalHandler
 
Constructor Summary
ContentHandlerWrapper()
          Create a new ContentHandlerWrapper instance.
ContentHandlerWrapper(org.xml.sax.ContentHandler contentHandler)
          Create a new ContentHandlerWrapper instance.
ContentHandlerWrapper(org.xml.sax.ContentHandler contentHandler, org.xml.sax.ext.LexicalHandler lexicalHandler)
          Create a new ContentHandlerWrapper instance.
 
Method Summary
 void characters(char[] ch, int start, int len)
          Receive notification of character data.
 void comment(char[] ch, int start, int len)
          Report an XML comment anywhere in the document.
 void endCDATA()
          Report the end of a CDATA section.
 void endDocument()
          Receive notification of the end of a document.
 void endDTD()
          Report the end of DTD declarations.
 void endElement(java.lang.String uri, java.lang.String loc, java.lang.String raw)
          Receive notification of the end of an element.
 void endEntity(java.lang.String name)
          Report the end of an entity.
 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()
           
 void setContentHandler(org.xml.sax.ContentHandler contentHandler)
          Set the ContentHandler that will receive XML data.
 void setDocumentLocator(org.xml.sax.Locator locator)
          Receive an object for locating the origin of SAX document events.
 void setLexicalHandler(org.xml.sax.ext.LexicalHandler lexicalHandler)
          Set the LexicalHandler that will receive XML data.
 void skippedEntity(java.lang.String name)
          Receive notification of a skipped entity.
 void startCDATA()
          Report the start of a CDATA section.
 void startDocument()
          Receive notification of the beginning of a document.
 void startDTD(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
          Report the start of DTD declarations, if any.
 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 startEntity(java.lang.String name)
          Report the beginning of an entity.
 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.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

contentHandler

protected org.xml.sax.ContentHandler contentHandler
The current ContentHandler.

lexicalHandler

protected org.xml.sax.ext.LexicalHandler lexicalHandler
The optional LexicalHandler
Constructor Detail

ContentHandlerWrapper

public ContentHandlerWrapper()
Create a new ContentHandlerWrapper instance.

ContentHandlerWrapper

public ContentHandlerWrapper(org.xml.sax.ContentHandler contentHandler)
Create a new ContentHandlerWrapper instance.

ContentHandlerWrapper

public ContentHandlerWrapper(org.xml.sax.ContentHandler contentHandler,
                             org.xml.sax.ext.LexicalHandler lexicalHandler)
Create a new ContentHandlerWrapper instance.
Method Detail

setContentHandler

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

setLexicalHandler

public void setLexicalHandler(org.xml.sax.ext.LexicalHandler lexicalHandler)
                       throws java.lang.IllegalStateException
Set the LexicalHandler that will receive XML data.
Throws:
java.lang.IllegalStateException - If the LexicalHandler was already set.

recycle

public void recycle()
Specified by:
recycle in interface Recyclable

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.avalon.excalibur.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.avalon.excalibur.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.avalon.excalibur.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.avalon.excalibur.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.avalon.excalibur.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.avalon.excalibur.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.avalon.excalibur.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.avalon.excalibur.xml.AbstractXMLConsumer
Parameters:
target - The processing instruction target.
data - The processing instruction data, or null if none was supplied.

skippedEntity

public void skippedEntity(java.lang.String name)
                   throws org.xml.sax.SAXException
Receive notification of a skipped entity.
Overrides:
skippedEntity in class AbstractXMLConsumer
Parameters:
name - The name of the skipped entity. If it is a parameter entity, the name will begin with '%'.

startDTD

public void startDTD(java.lang.String name,
                     java.lang.String publicId,
                     java.lang.String systemId)
              throws org.xml.sax.SAXException
Report the start of DTD declarations, if any.
Overrides:
startDTD in class AbstractXMLConsumer
Parameters:
name - The document type name.
publicId - The declared public identifier for the external DTD subset, or null if none was declared.
systemId - The declared system identifier for the external DTD subset, or null if none was declared.

endDTD

public void endDTD()
            throws org.xml.sax.SAXException
Report the end of DTD declarations.
Overrides:
endDTD in class AbstractXMLConsumer

startEntity

public void startEntity(java.lang.String name)
                 throws org.xml.sax.SAXException
Report the beginning of an entity.
Overrides:
startEntity in class AbstractXMLConsumer
Parameters:
name - The name of the entity. If it is a parameter entity, the name will begin with '%'.

endEntity

public void endEntity(java.lang.String name)
               throws org.xml.sax.SAXException
Report the end of an entity.
Overrides:
endEntity in class AbstractXMLConsumer
Parameters:
name - The name of the entity that is ending.

startCDATA

public void startCDATA()
                throws org.xml.sax.SAXException
Report the start of a CDATA section.
Overrides:
startCDATA in class AbstractXMLConsumer

endCDATA

public void endCDATA()
              throws org.xml.sax.SAXException
Report the end of a CDATA section.
Overrides:
endCDATA in class AbstractXMLConsumer

comment

public void comment(char[] ch,
                    int start,
                    int len)
             throws org.xml.sax.SAXException
Report an XML comment anywhere in the document.
Overrides:
comment in class AbstractXMLConsumer
Parameters:
ch - An array holding the characters in the comment.
start - The starting position in the array.
len - The number of characters to use from the array.


Copyright 2001 Apache Jakarta Project. All Rights Reserved.