org.apache.fop.layout.hyphenation
Class PatternParser

org.apache.fop.layout.hyphenation.PatternParser
All Implemented Interfaces:
PatternConsumer

public class PatternParser
implements PatternConsumer

A SAX document handler to read and parse hyphenation patterns from a XML file.

Author:
Carlos Villegas

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)
          Characters.
 void endElement(java.lang.String uri, java.lang.String local, java.lang.String raw)
           
 void error(org.xml.sax.SAXParseException ex)
          Error.
 void fatalError(org.xml.sax.SAXParseException ex)
          Fatal error.
protected static org.xml.sax.InputSource fileInputSource(java.lang.String filename)
          create an InputSource from a file name
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.lang.String filename)
           
protected  java.lang.String readToken(java.lang.StringBuffer chars)
           
 void setConsumer(PatternConsumer consumer)
           
 void startElement(java.lang.String uri, java.lang.String local, java.lang.String raw, org.xml.sax.Attributes attrs)
          Start element.
 void warning(org.xml.sax.SAXParseException ex)
          Warning.
 

Constructor Detail

PatternParser

public PatternParser()
              throws HyphenationException

PatternParser

public PatternParser(PatternConsumer consumer)
              throws HyphenationException
Method Detail

setConsumer

public void setConsumer(PatternConsumer consumer)

parse

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

fileInputSource

protected static org.xml.sax.InputSource fileInputSource(java.lang.String filename)
                                                  throws HyphenationException
create an InputSource from a file name
Parameters:
filename - the name of the file
Returns:
the InputSource created

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)

startElement

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

endElement

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

characters

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

warning

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

error

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

fatalError

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

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

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 ArrayList 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
Following copied from interface: org.apache.fop.layout.hyphenation.PatternConsumer
Parameters:
pattern -  
values - interletter values expressed as a string of digit characters.

main

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


Copyright ? 1999-2003 Apache Software Foundation. All Rights Reserved.