## com.microstar.xml
Class HandlerBase

    java.lang.Object
      com.microstar.xml.HandlerBase

All Implemented Interfaces:
  XmlHandler

Direct Known Subclasses:
  XModeHandler

public class HandlerBase
extends java.lang.Object
implements XmlHandler

Convenience base class for AElfred handlers.

This base class implements the XmlHandler interface with (mostly empty) default handlers. You are not required to use this, but if you need to handle only a few events, you might find it convenient to extend this class rather than implementing the entire interface. This example overrides only the `charData` method, using the defaults for the others:

     import com.microstar.xml.HandlerBase;

     public class MyHandler extends HandlerBase {
       public void charData (char ch[], int start, int length)
       {
         System.out.println("Data: " + new String (ch, start, length));
       }
     }

This class is optional, but if you use it, you must also include the `XmlException` class.

Do not extend this if you are using SAX; extend `org.xml.sax.HandlerBase` instead.

Version:
  1.1
Author:
  Copyright (c) 1998 by Microstar Software Ltd., written by David Megginson <dmeggins@microstar.com>
See Also:
  `XmlHandler`, `XmlException`, `org.xml.sax.HandlerBase`

Constructor Summary
`HandlerBase()`

Method Summary
`void` `attribute(java.lang.String aname, java.lang.String value, boolean isSpecified)` Handle an attribute assignment.
`void` `charData(char[] ch, int start, int length)` Handle character data.
`void` `doctypeDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId)` Handle a document type declaration.
`void` `endDocument()` Handle the end of the document.
`void` `endElement(java.lang.String elname)` Handle the end of an element.
`void` `endExternalEntity(java.lang.String systemId)` Handle the end of an external entity.
`void` `error(java.lang.String message, java.lang.String systemId, int line, int column)` Throw an exception for a fatal error.
`void` `ignorableWhitespace(char[] ch, int start, int length)` Handle ignorable whitespace.
`void` `processingInstruction(java.lang.String target, java.lang.String data)` Handle a processing instruction.
`java.lang.Object` `resolveEntity(java.lang.String publicId, java.lang.String systemId)` Resolve an external entity.
`void` `startDocument()` Handle the start of the document.
`void` `startElement(java.lang.String elname)` Handle the start of an element.
`void` `startExternalEntity(java.lang.String systemId)` Handle the start of an external entity.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### HandlerBase

    public HandlerBase()

Method Detail

### startDocument

    public void startDocument()
                       throws java.lang.Exception

  Handle the start of the document.

  The default implementation does nothing.

  Specified by:
    `startDocument` in interface `XmlHandler`
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.startDocument()`

### endDocument

    public void endDocument()
                     throws java.lang.Exception

  Handle the end of the document.

  The default implementation does nothing.

  Specified by:
    `endDocument` in interface `XmlHandler`
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.endDocument()`

### resolveEntity

    public java.lang.Object resolveEntity(java.lang.String publicId,
                                          java.lang.String systemId)
                                   throws java.lang.Exception

  Resolve an external entity.

  The default implementation simply returns the supplied system identifier.

  Specified by:
    `resolveEntity` in interface `XmlHandler`
  Parameters:
    `publicId` - The public identifier, or null if none was supplied.
    `systemId` - The system identifier.
  Returns:
    The replacement system identifier, or null to use the default.
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.resolveEntity(java.lang.String, java.lang.String)`

### startExternalEntity

    public void startExternalEntity(java.lang.String systemId)
                             throws java.lang.Exception

  Handle the start of an external entity.

  The default implementation does nothing.

  Specified by:
    `startExternalEntity` in interface `XmlHandler`
  Parameters:
    `systemId` - The URI of the external entity that is starting.
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.startExternalEntity(java.lang.String)`

### endExternalEntity

    public void endExternalEntity(java.lang.String systemId)
                           throws java.lang.Exception

  Handle the end of an external entity.

  The default implementation does nothing.

  Specified by:
    `endExternalEntity` in interface `XmlHandler`
  Parameters:
    `systemId` - The URI of the external entity that is ending.
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.endExternalEntity(java.lang.String)`

### doctypeDecl

    public void doctypeDecl(java.lang.String name,
                            java.lang.String publicId,
                            java.lang.String systemId)
                     throws java.lang.Exception

  Handle a document type declaration.

  The default implementation does nothing.

  Specified by:
    `doctypeDecl` in interface `XmlHandler`
  Parameters:
    `name` - The document type name.
    `publicId` - The public identifier, or null if unspecified.
    `systemId` - The system identifier, or null if unspecified.
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.doctypeDecl(java.lang.String, java.lang.String, java.lang.String)`

### attribute

    public void attribute(java.lang.String aname,
                          java.lang.String value,
                          boolean isSpecified)
                   throws java.lang.Exception

  Handle an attribute assignment.

  The default implementation does nothing.

  Specified by:
    `attribute` in interface `XmlHandler`
  Parameters:
    `value` - The value of the attribute, or null if the attribute is `#IMPLIED`.
    `isSpecified` - True if the value was specified, false if it was defaulted from the DTD.
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.attribute(java.lang.String, java.lang.String, boolean)`

### startElement

    public void startElement(java.lang.String elname)
                      throws java.lang.Exception

  Handle the start of an element.

  The default implementation does nothing.

  Specified by:
    `startElement` in interface `XmlHandler`
  Parameters:
    `elname` - The element type name.
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.startElement(java.lang.String)`

### endElement

    public void endElement(java.lang.String elname)
                    throws java.lang.Exception

  Handle the end of an element.

  The default implementation does nothing.

  Specified by:
    `endElement` in interface `XmlHandler`
  Parameters:
    `elname` - The element type name.
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.endElement(java.lang.String)`

### charData

    public void charData(char[] ch,
                         int start,
                         int length)
                  throws java.lang.Exception

  Handle character data.

  The default implementation does nothing.

  Specified by:
    `charData` in interface `XmlHandler`
  Parameters:
    `ch` - The character data.
    `start` - The starting position in the array.
    `length` - The number of characters available.
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.charData(char[], int, int)`

### ignorableWhitespace

    public void ignorableWhitespace(char[] ch,
                                    int start,
                                    int length)
                             throws java.lang.Exception

  Handle ignorable whitespace.

  The default implementation does nothing.

  Specified by:
    `ignorableWhitespace` in interface `XmlHandler`
  Parameters:
    `ch` - The literal whitespace characters.
    `start` - The starting position in the array.
    `length` - The number of whitespace characters available.
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.ignorableWhitespace(char[], int, int)`

### processingInstruction

    public void processingInstruction(java.lang.String target,
                                      java.lang.String data)
                               throws java.lang.Exception

  Handle a processing instruction.

  The default implementation does nothing.

  Specified by:
    `processingInstruction` in interface `XmlHandler`
  Parameters:
    `target` - The target (the name at the start of the PI).
    `data` - The data, if any (the rest of the PI).
  Throws:
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.processingInstruction(java.lang.String, java.lang.String)`

### error

    public void error(java.lang.String message,
                      java.lang.String systemId,
                      int line,
                      int column)
               throws XmlException,
                      java.lang.Exception

  Throw an exception for a fatal error.

  The default implementation throws `XmlException`.

  Specified by:
    `error` in interface `XmlHandler`
  Parameters:
    `message` - The error message.
    `systemId` - The system identifier of the entity that contains the error.
    `line` - The approximate line number of the error.
    `column` - The approximate column number of the error.
  Throws:
    `XmlException` - A specific parsing error.
    `java.lang.Exception` - Derived methods may throw exceptions.
  See Also:
    `XmlHandler.error(java.lang.String, java.lang.String, int, int)`