package org.chartsy.favorites.xml;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.chartsy.main.favorites.nodes.RootAPI;
import org.chartsy.main.utils.FileUtils;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.XMLReader;
import org.xml.sax.helpers.XMLReaderFactory;
/**
*
* @author Viorel
*/
public final class FavoritesXmlParser
{
private FavoritesXmlParser()
{}
public static RootAPI getRoot()
{
RootAPI root = null;
try
{
InputSource src
= new InputSource(
new FileInputStream(FileUtils.favoritesFile()));
FavoritesXmlHandler handler = new FavoritesXmlHandler();
XMLReader reader = XMLReaderFactory.createXMLReader("com.sun.org.apache.xerces.internal.parsers.SAXParser");
if (reader != null)
{
reader.setContentHandler(handler);
reader.parse(src);
root = handler.getRootAPI();
}
}
catch (IOException ex)
{
Logger.getLogger(FavoritesXmlParser.class.getName()).log(
Level.SEVERE, "", ex);
}
catch (SAXException ex)
{
Logger.getLogger(FavoritesXmlParser.class.getName()).log(
Level.SEVERE, "", ex);
}
return root;
}
}