Mercurial > hg > eSciDocImport
view src/de/mpiwg/itgroup/eSciDoc/Tools/DRI/CreateDRIList.java @ 15:e0efd3a9d2f0
changes for escidoc1.4
author | dwinter |
---|---|
date | Mon, 17 Sep 2012 10:21:04 +0200 |
parents | 94ea06e32003 |
children |
line wrap: on
line source
package de.mpiwg.itgroup.eSciDoc.Tools.DRI; import java.io.IOException; import org.apache.log4j.Level; import org.apache.log4j.Logger; import org.jdom.JDOMException; import de.mpiwg.itgroup.eSciDoc.Tools.EScidocBasicHandler; import de.mpiwg.itgroup.eSciDoc.exceptions.ESciDocXmlObjectException; import de.mpiwg.itgroup.eSciDoc.utils.eSciDocXmlObject; public class CreateDRIList { private EScidocBasicHandler connector; int MAX_REC=500; protected Logger logger = Logger.getRootLogger(); public CreateDRIList() { logger.setLevel(Level.DEBUG); connector = new EScidocBasicHandler("escidoc.mpiwg-berlin.mpg.de",8080,"dwinter","XXX"); } public void convert( String command, String objectXPath) throws IllegalStateException, IOException, JDOMException, ESciDocXmlObjectException{ Integer numberOfHits = connector.getNumberOfHitsFromFilterResult( command, objectXPath,1); logger.info(String.format("%s objects found.", numberOfHits)); int tausend = ((numberOfHits-1) / MAX_REC); String queryRestrict=""; int counter=0; for (int t = 0; t <= tausend; t++) { int start = t * MAX_REC+1; // int max=Math.min((t+1)*1000, numberOfHits); logger.info(String.format("start: %s ", t)); String query = "?maximumRecords="+String.valueOf(MAX_REC)+"&startRecord=" + String.valueOf(start)+"&"+queryRestrict; for (eSciDocXmlObject obj : connector .getObjectsFromFilterResult(command+query, objectXPath)) { System.out.println(obj.getESciDocId()); } } } public static void main(String[] args) throws IOException, JDOMException, IllegalStateException, ESciDocXmlObjectException { CreateDRIList cv = new CreateDRIList(); String context = "/ir/context/escidoc:398284"; cv.convert(context+"/resources/members","//escidocItem:item"); } }