# Class HTMLEditorKit.ParserCallback

java.lang.Object
javax.swing.text.html.HTMLEditorKit.ParserCallback

Direct Known Subclasses:
  `HTMLDocument.HTMLReader`

Enclosing class:
  `HTMLEditorKit`

public static class HTMLEditorKit.ParserCallback extends Object
The result of parsing drives these callback methods. The open and close actions should be balanced. The `flush` method will be the last method called, to give the receiver a chance to flush any pending data into the document.

Refer to DocumentParser, the default parser used, for further information on the contents of the AttributeSets, the positions, and other info.

See Also:
  - `DocumentParser`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final Object`
  `IMPLIED`
  This is passed as an attribute in the attributeset to indicate the element is implied eg, the string '<>foo<\t>' contains an implied html element and an implied body element.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ParserCallback()`
  Constructs a `ParserCallback`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `flush()`
  The last method called on the reader.
  `void`
  `handleComment(char[] data, int pos)`
  Called by the parser to indicate a block of comment was encountered.
  `void`
  `handleEndOfLineString(String eol)`
  This is invoked after the stream has been parsed, but before `flush`.
  `void`
  `handleEndTag(HTML.Tag t, int pos)`
  Callback from the parser.
  `void`
  `handleError(String errorMsg, int pos)`
  Callback from the parser.
  `void`
  `handleSimpleTag(HTML.Tag t, MutableAttributeSet a, int pos)`
  Callback from the parser.
  `void`
  `handleStartTag(HTML.Tag t, MutableAttributeSet a, int pos)`
  Callback from the parser.
  `void`
  `handleText(char[] data, int pos)`
  Called by the parser to indicate a block of text was encountered.

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `String`
  `toString()`
  Returns a string representation of the object.
  `final void`
  `wait()`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

- ## Field Details

  - ### IMPLIED

    public static final Object IMPLIED
    This is passed as an attribute in the attributeset to indicate the element is implied eg, the string '<>foo<\t>' contains an implied html element and an implied body element.
    Since:
      1.3

- ## Constructor Details

  - ### ParserCallback

    public ParserCallback()
    Constructs a `ParserCallback`.

- ## Method Details

  - ### flush

    public void flush() throws BadLocationException
    The last method called on the reader. It allows any pending changes to be flushed into the document. Since this is currently loading synchronously, the entire set of changes are pushed in at this point.
    Throws:
      `BadLocationException` - if the given position does not represent a valid location in the associated document.

  - ### handleText

    public void handleText(char[] data, int pos)
    Called by the parser to indicate a block of text was encountered.
    Parameters:
      `data` - a data
      `pos` - a position

  - ### handleComment

    public void handleComment(char[] data, int pos)
    Called by the parser to indicate a block of comment was encountered.
    Parameters:
      `data` - a data
      `pos` - a position

  - ### handleStartTag

    public void handleStartTag(HTML.Tag t, MutableAttributeSet a, int pos)
    Callback from the parser. Route to the appropriate handler for the tag.
    Parameters:
      `t` - an HTML tag
      `a` - a set of attributes
      `pos` - a position

  - ### handleEndTag

    public void handleEndTag(HTML.Tag t, int pos)
    Callback from the parser. Route to the appropriate handler for the tag.
    Parameters:
      `t` - an HTML tag
      `pos` - a position

  - ### handleSimpleTag

    public void handleSimpleTag(HTML.Tag t, MutableAttributeSet a, int pos)
    Callback from the parser. Route to the appropriate handler for the tag.
    Parameters:
      `t` - an HTML tag
      `a` - a set of attributes
      `pos` - a position

  - ### handleError

    public void handleError(String errorMsg, int pos)
    Callback from the parser. Route to the appropriate handler for the error.
    Parameters:
      `errorMsg` - a error message
      `pos` - a position

  - ### handleEndOfLineString

    public void handleEndOfLineString(String eol)
    This is invoked after the stream has been parsed, but before `flush`. `eol` will be one of \n, \r or \r\n, which ever is encountered the most in parsing the stream.
    Parameters:
      `eol` - value of eol
    Since:
      1.3