Public Types | |
enum | ParserTypes { DOM, VTD } |
Static Public Member Functions | |
static ACSLogParser | getParser () throws Exception |
static ACSLogParser | getParser (ParserTypes parserType) throws Exception |
static ParserTypes | getParserType (ACSLogParser parserToCheck) throws Exception |
static ParserTypes | getParserType () throws Exception |
A factory to build parsers.
The purpose of this object is to hide the type of parser really used at run time.
The object could instantiate a new parser or use only one instance, a singleton.
There are 2 parsers available: DOM and VTD. VTD is ACS/LGPL/Tools and installed by ACS. It is licensed under GPL and available at http://vtd-xml.sourceforge.net/ VTD claims to be very fast (and effectively it performs better then DOM) so the factory tries to instantiate a VTD parser if it is present.
Having this factory allows to transparently use a different implementation at run-time depending on the real availability of the parsers.
static ACSLogParser alma.acs.logging.engine.parser.ACSLogParserFactory.getParser | ( | ) | throws Exception [static] |
Get a parser.
The ACSLogParser
returned by this method can be a new instance or not, depending on the implementation.
<code>Exception</code> | in case of error building the parser |
static ACSLogParser alma.acs.logging.engine.parser.ACSLogParserFactory.getParser | ( | ParserTypes | parserType | ) | throws Exception [static] |
Get a parser of the given type.
This method allows to get a parser of a specific type and is thought for testing purposes.
If the type of the requested parser is not the type of the parser in use then a new parser is instantiated and returned but the parser in use remains untouched.
parserType | The type of the parser to instantiate. It can't be null . |
<{@link | Exception} in case of error instantiating the parser. |
static ParserTypes alma.acs.logging.engine.parser.ACSLogParserFactory.getParserType | ( | ACSLogParser | parserToCheck | ) | throws Exception [static] |
Return the type of the passed parser.
parser | The parser whose type has to be checked. It can't be null . |
<code>Exception</code> | if the type of the parser is not recognized/supported. |
static ParserTypes alma.acs.logging.engine.parser.ACSLogParserFactory.getParserType | ( | ) | throws Exception [static] |
Return the type of the parser in use.
null
if no parser is still in use i.e. getParser()
has not been executed yet. <code>Exception</code> | if the type of the parser is not recognized/supported. |