package models.bus;
import java.util.ArrayList;
import java.util.List;
import org.w3c.dom.Document;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.NodeList;
public class AgencyListHandler {
private AgencyListHandler() {}
public static List<Agency> parseAgencyListXml(Document xml) {
NodeList nl = xml.getElementsByTagName("body").item(0).getChildNodes();
List<Agency> list = new ArrayList<Agency>();
for (int i = 0; i < nl.getLength(); i++) {
if (nl.item(i).getNodeName().equals("agency")) {
list.add(new Agency(nl.item(i).getAttributes().getNamedItem("tag").getNodeValue(), nl.item(i).getAttributes().getNamedItem("regionTitle").getNodeValue()));
}
}
return list;
}
public static List<Route> parseRouteListXml(Document xml, Agency agency) {
NodeList nl = xml.getElementsByTagName("body").item(0).getChildNodes();
List<Route> routes = new ArrayList<Route>();
for (int i = 0; i < nl.getLength(); i++) {
if (nl.item(i).getNodeName().equals("route")) {
NamedNodeMap attributes = nl.item(i).getAttributes();
Route r = new Route();
r.setTag(attributes.getNamedItem("tag").getNodeValue());
r.setTitle(attributes.getNamedItem("title").getNodeValue());
r.setAgency(agency.tag);
routes.add(r);
}
}
return routes;
}
public static List parseRouteConfigXml(Document xml) {
return null;
//TODO
}
}