org.foray.graphic.factory
Class MathFactory

java.lang.Object
  extended by org.foray.graphic.factory.GraphicFactory
      extended by org.foray.graphic.factory.MathFactory

public class MathFactory
extends GraphicFactory

Factory that tests the graphic to see if it is a MathML document, and creates an appropriate Graphic instance if it is.


Field Summary
protected static int SIG_LENGTH
          The number of bytes to read when testing whether a file is a MathML document.
 
Constructor Summary
MathFactory(GraphicServer4a server)
          Constructor.
 
Method Summary
 SVGGraphic attemptCreate(URL url, BufferedInputStream bis)
          Subclasses implement this method to try to create an appropriate Graphic instance.
static InputStream getMathMLDtdAsInputStream(String fileName)
          Returns a MathML DTD component as an InputStream.
static LSInput getMathMLDtdAsLsInputStream(String fileName)
          Returns the MathML DTD as an LSInput instance.
static LSResourceResolver getMathMLDtdResourceResolver()
          Returns an LSResourceResolver that knows how to find the local copy of the MathML DTD.
 
Methods inherited from class org.foray.graphic.factory.GraphicFactory
getLogger, getServer, makeGraphic, maxBytesToVerify
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SIG_LENGTH

protected static final int SIG_LENGTH
The number of bytes to read when testing whether a file is a MathML document.

See Also:
Constant Field Values
Constructor Detail

MathFactory

public MathFactory(GraphicServer4a server)
Constructor.

Parameters:
server - The parent graphic server.
Method Detail

attemptCreate

public SVGGraphic attemptCreate(URL url,
                                BufferedInputStream bis)
                         throws IOException
Description copied from class: GraphicFactory
Subclasses implement this method to try to create an appropriate Graphic instance. Note that this superclass handles the task of marking and resetting the input stream, so all the subclass needs to do is read the stream.

Specified by:
attemptCreate in class GraphicFactory
Parameters:
url - The URL which contains the graphic content.
bis - The reusable input stream containing the bytes from url.
Returns:
The newly-created Graphic instance, or null if this factory was unable to create such an instance.
Throws:
IOException - For IO errors.

getMathMLDtdAsInputStream

public static InputStream getMathMLDtdAsInputStream(String fileName)
Returns a MathML DTD component as an InputStream.

Parameters:
fileName - The name of the file to be retrieved.
Returns:
A MathML DTD component as an InputStream.

getMathMLDtdAsLsInputStream

public static LSInput getMathMLDtdAsLsInputStream(String fileName)
Returns the MathML DTD as an LSInput instance.

Parameters:
fileName - The name of the file to be retrieved.
Returns:
The MathML DTD as an LSInput instance.

getMathMLDtdResourceResolver

public static LSResourceResolver getMathMLDtdResourceResolver()
Returns an LSResourceResolver that knows how to find the local copy of the MathML DTD.

Returns:
An LSResourceResolver that knows how to find the local copy of the MathML DTD.


Copyright © 2017. All rights reserved.