blob: e44039d7a888bed566f5f1df350a029dc365304f [file] [log] [blame]
package org.apache.openoffice.ooxml.framework.part.parser;
import java.io.File;
import java.io.InputStream;
import java.util.Vector;
import org.apache.openoffice.ooxml.framework.part.ContentType;
import org.apache.openoffice.ooxml.parser.Parser;
import org.apache.openoffice.ooxml.parser.StateMachine;
public class ParserFactory
{
public static Parser getParser (
final ContentType eType,
final InputStream aStream,
final Vector<String> aErrorsAndWarnings)
{
switch(eType)
{
case Relationships:
return new RelationshipParser(aStream, msParserTableFilename, aErrorsAndWarnings);
case ContentTypes:
return new ContentTypesParser(aStream, msParserTableFilename, aErrorsAndWarnings);
default:
return new Parser(
new StateMachine(new File(msParserTableFilename), aErrorsAndWarnings),
aStream);
}
}
public static void SetParserTableFilename (final String sFilename)
{
assert(new File(sFilename).exists());
msParserTableFilename = sFilename;
}
private static String msParserTableFilename = null;
}