* @return a new {@link XmlPullParserFactory} configured for parsing Accurev
* XML files, or <code>null</code> if things go wrong.
*/
public static XmlPullParserFactory getFactory() {
synchronized (PARSER_FACTORY_CACHE) {
final XmlPullParserFactory existingFactory = PARSER_FACTORY_CACHE.get(XmlPullParserFactory.class);
if (existingFactory != null) {
return existingFactory;
}
XmlPullParserFactory newFactory;
try {
newFactory = XmlPullParserFactory.newInstance();
} catch (XmlPullParserException ex) {
AccurevLauncher.logException("Unable to create new " + XmlPullParserFactory.class.getSimpleName(), ex,
logger, null);
return null;
}
newFactory.setNamespaceAware(false);
newFactory.setValidating(false);
PARSER_FACTORY_CACHE.put(XmlPullParserFactory.class, newFactory);
return newFactory;
}
}