## org.apache.lucene.analysis.compound.hyphenation
Class PatternParser

    java.lang.Object
      org.xml.sax.helpers.DefaultHandler
          org.apache.lucene.analysis.compound.hyphenation.PatternParser

All Implemented Interfaces:
  PatternConsumer, org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

    public class PatternParser

extends org.xml.sax.helpers.DefaultHandler
implements PatternConsumer

A SAX document handler to read and parse hyphenation patterns from a XML file. This class has been taken from the Apache FOP project (http://xmlgraphics.apache.org/fop/). They have been slightly modified.

Constructor Summary
`PatternParser()`
`PatternParser(PatternConsumer consumer)`

Method Summary
`void` `addClass(java.lang.String c)` Add a character class.
`void` `addException(java.lang.String w, java.util.ArrayList e)` Add a hyphenation exception.
`void` `addPattern(java.lang.String p, java.lang.String v)` Add hyphenation patterns.
`void` `characters(char[] ch, int start, int length)`
`void` `endElement(java.lang.String uri, java.lang.String local, java.lang.String raw)`
`void` `error(org.xml.sax.SAXParseException ex)`
`void` `fatalError(org.xml.sax.SAXParseException ex)`
`protected java.lang.String` `getExceptionWord(java.util.ArrayList ex)`
`protected static java.lang.String` `getInterletterValues(java.lang.String pat)`
`protected static java.lang.String` `getPattern(java.lang.String word)`
`static void` `main(java.lang.String[] args)`
`protected java.util.ArrayList` `normalizeException(java.util.ArrayList ex)`
`void` `parse(java.io.File file)` Parses a hyphenation pattern file.
`void` `parse(org.xml.sax.InputSource source)` Parses a hyphenation pattern file.
`void` `parse(java.lang.String filename)` Parses a hyphenation pattern file.
`protected java.lang.String` `readToken(java.lang.StringBuffer chars)`
`org.xml.sax.InputSource` `resolveEntity(java.lang.String publicId, java.lang.String systemId)`
`void` `setConsumer(PatternConsumer consumer)`
`void` `startElement(java.lang.String uri, java.lang.String local, java.lang.String raw, org.xml.sax.Attributes attrs)`
`void` `warning(org.xml.sax.SAXParseException ex)`

Methods inherited from class org.xml.sax.helpers.DefaultHandler
`endDocument, endPrefixMapping, ignorableWhitespace, notationDecl, processingInstruction, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl`

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

Constructor Detail

### PatternParser

    public PatternParser()
                  throws HyphenationException

Throws:
  `HyphenationException`

### PatternParser

    public PatternParser(PatternConsumer consumer)
                  throws HyphenationException

Throws:
  `HyphenationException`

Method Detail

### setConsumer

    public void setConsumer(PatternConsumer consumer)

### parse

    public void parse(java.lang.String filename)
               throws HyphenationException

  Parses a hyphenation pattern file.

  Parameters:
    `filename` - the filename
  Throws:
    `HyphenationException` - In case of an exception while parsing

### parse

    public void parse(java.io.File file)
               throws HyphenationException

  Parses a hyphenation pattern file.

  Parameters:
    `file` - the pattern file
  Throws:
    `HyphenationException` - In case of an exception while parsing

### parse

    public void parse(org.xml.sax.InputSource source)
               throws HyphenationException

  Parses a hyphenation pattern file.

  Parameters:
    `source` - the InputSource for the file
  Throws:
    `HyphenationException` - In case of an exception while parsing

### readToken

    protected java.lang.String readToken(java.lang.StringBuffer chars)

### getPattern

    protected static java.lang.String getPattern(java.lang.String word)

### normalizeException

    protected java.util.ArrayList normalizeException(java.util.ArrayList ex)

### getExceptionWord

    protected java.lang.String getExceptionWord(java.util.ArrayList ex)

### getInterletterValues

    protected static java.lang.String getInterletterValues(java.lang.String pat)

### resolveEntity

    public org.xml.sax.InputSource resolveEntity(java.lang.String publicId,
                                                 java.lang.String systemId)

  Specified by:
    `resolveEntity` in interface `org.xml.sax.EntityResolver`
  Overrides:
    `resolveEntity` in class `org.xml.sax.helpers.DefaultHandler`

### startElement

    public void startElement(java.lang.String uri,
                             java.lang.String local,
                             java.lang.String raw,
                             org.xml.sax.Attributes attrs)

  Specified by:
    `startElement` in interface `org.xml.sax.ContentHandler`
  Overrides:
    `startElement` in class `org.xml.sax.helpers.DefaultHandler`
  See Also:
    `ContentHandler.startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)`

### endElement

    public void endElement(java.lang.String uri,
                           java.lang.String local,
                           java.lang.String raw)

  Specified by:
    `endElement` in interface `org.xml.sax.ContentHandler`
  Overrides:
    `endElement` in class `org.xml.sax.helpers.DefaultHandler`
  See Also:
    `ContentHandler.endElement(java.lang.String, java.lang.String, java.lang.String)`

### characters

    public void characters(char[] ch,
                           int start,
                           int length)

  Specified by:
    `characters` in interface `org.xml.sax.ContentHandler`
  Overrides:
    `characters` in class `org.xml.sax.helpers.DefaultHandler`
  See Also:
    `ContentHandler.characters(char[], int, int)`

### warning

    public void warning(org.xml.sax.SAXParseException ex)

  Specified by:
    `warning` in interface `org.xml.sax.ErrorHandler`
  Overrides:
    `warning` in class `org.xml.sax.helpers.DefaultHandler`
  See Also:
    `ErrorHandler.warning(org.xml.sax.SAXParseException)`

### error

    public void error(org.xml.sax.SAXParseException ex)

  Specified by:
    `error` in interface `org.xml.sax.ErrorHandler`
  Overrides:
    `error` in class `org.xml.sax.helpers.DefaultHandler`
  See Also:
    `ErrorHandler.error(org.xml.sax.SAXParseException)`

### fatalError

    public void fatalError(org.xml.sax.SAXParseException ex)
                    throws org.xml.sax.SAXException

  Specified by:
    `fatalError` in interface `org.xml.sax.ErrorHandler`
  Overrides:
    `fatalError` in class `org.xml.sax.helpers.DefaultHandler`
  Throws:
    `org.xml.sax.SAXException`
  See Also:
    `ErrorHandler.fatalError(org.xml.sax.SAXParseException)`

### addClass

    public void addClass(java.lang.String c)

  Description copied from interface: `PatternConsumer`
  Add a character class. A character class defines characters that are considered equivalent for the purpose of hyphenation (e.g. "aA"). It usually means to ignore case.

  Specified by:
    `addClass` in interface `PatternConsumer`
  Parameters:
    `c` - character group

### addException

    public void addException(java.lang.String w,
                             java.util.ArrayList e)

  Description copied from interface: `PatternConsumer`
  Add a hyphenation exception. An exception replaces the result obtained by the algorithm for cases for which this fails or the user wants to provide his own hyphenation. A hyphenatedword is a vector of alternating String's and `Hyphen` instances

  Specified by:
    `addException` in interface `PatternConsumer`

### addPattern

    public void addPattern(java.lang.String p,
                           java.lang.String v)

  Description copied from interface: `PatternConsumer`
  Add hyphenation patterns.

  Specified by:
    `addPattern` in interface `PatternConsumer`
  Parameters:
    `p` - the pattern
    `v` - interletter values expressed as a string of digit characters.

### main

    public static void main(java.lang.String[] args)
                     throws java.lang.Exception

  Throws:
    `java.lang.Exception`

Copyright © 2000-2011 Apache Software Foundation. All Rights Reserved.