package org.honours.greenstone; import java.io.File; import org.apache.log4j.Logger; import org.greenstone.gsdl3.util.GSXML; import org.greenstone.gsdl3.util.XMLConverter; import org.w3c.dom.*; public class ArchiveFileReader { static Logger logger = Logger.getLogger(org.honours.greenstone.ArchiveFileReader.class.getName()); private XMLConverter _xmlConverter; private Document _document; private String _archiveDocFile; public ArchiveFileReader(String docXML){ _xmlConverter = new XMLConverter(); _archiveDocFile = docXML; _document = _xmlConverter.getDOM(new File(_archiveDocFile)); } public String obtainElementText(String metadataName){ if(metadataName.equals("") || metadataName == null) return null; NodeList nl = _document.getDocumentElement().getElementsByTagName("Description"); Element description = (Element)nl.item(0); nl = description.getChildNodes(); int i = 0; while(i <= nl.getLength()){ Node node = nl.item(i); if(node != null){ if(node.getNodeType() == Node.ELEMENT_NODE){ Element e = (Element)node; if(e.getTagName().equals("Metadata") && e.getAttribute("name") .equals(metadataName)){ return GSXML.getNodeText(e); } } } i++; } return null; } }