view src/main/java/ac/jp/u_ryukyu/cr/ie/tatsuki/xmlReader/LoadXml.java @ 42:c036d36c33af

function refactor
author one
date Tue, 25 Nov 2014 11:57:17 +0900
parents b8d86bc46b51
children
line wrap: on
line source

package ac.jp.u_ryukyu.cr.ie.tatsuki.xmlReader;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;

import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungle;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser;

import org.xml.sax.SAXException;

public class LoadXml {

  Jungle jungle;
  SAXParserFactory saxParserFactory;

  public LoadXml() {
    saxParserFactory = SAXParserFactory.newInstance();
    jungle = new DefaultJungle(null, "jungle", new DefaultTreeEditor(new DefaultTraverser()));
  }

  
  public JungleTree loadTestData(String xmlName) throws FileNotFoundException, SAXException, IOException,
      ParserConfigurationException {
    SAXParser saxParser = saxParserFactory.newSAXParser();
    JungleTree tree = jungle.createNewTree(xmlName);
    ReadXmlHandler readXmlHandler = new ReadXmlHandler(tree);
    saxParser.parse(new FileInputStream("xml/" + xmlName), readXmlHandler);
    JungleTree newTree = readXmlHandler.getTree();

    return newTree;

  }

}