# HG changeset patch # User dwinter # Date 1295102861 -3600 # Node ID 4b1ae52418c1d6b9ca490575ac8b6818eb2a35aa # Parent a42dabfcffdfb8a07ea2a64c73c8c04a5f350776 minor diff -r a42dabfcffdf -r 4b1ae52418c1 src/de/mpiwg/itgroup/eSciDoc/Tools/EScidocBasicHandler.java --- a/src/de/mpiwg/itgroup/eSciDoc/Tools/EScidocBasicHandler.java Sat Jan 15 13:57:56 2011 +0100 +++ b/src/de/mpiwg/itgroup/eSciDoc/Tools/EScidocBasicHandler.java Sat Jan 15 15:47:41 2011 +0100 @@ -848,6 +848,41 @@ + public List getObjectsFromSearch(String field, + String value, String context) throws ESciDocXmlObjectException { + String query = "/srw/search/escidoc_all?operation=searchRetrieve&version=1.1&query="; + query+=field+"%3d"; + try { + String[] contextSplitted = context.split("/"); + if(contextSplitted.length>0){ + query+=URLEncoder.encode(value, "utf-8")+"%20and%20escidoc.context.objid%3d"+contextSplitted[contextSplitted.length-1]; + } + } catch (UnsupportedEncodingException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + throw new ESciDocXmlObjectException(); + } + + try { + return getObjectsFromFilterResult(query, "//escidocItem:item"); + } catch (IllegalStateException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (JDOMException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + throw new ESciDocXmlObjectException(); // fehler wenn kein return + + + } + + + diff -r a42dabfcffdf -r 4b1ae52418c1 src/de/mpiwg/itgroup/eSciDoc/config/echo.properties --- a/src/de/mpiwg/itgroup/eSciDoc/config/echo.properties Sat Jan 15 13:57:56 2011 +0100 +++ b/src/de/mpiwg/itgroup/eSciDoc/config/echo.properties Sat Jan 15 15:47:41 2011 +0100 @@ -1,3 +1,3 @@ textServletUrl=http://nausikaa2.mpiwg-berlin.mpg.de/digitallibrary/servlet/Texter?fn= dirInfoUrl=http://nausikaa2.mpiwg-berlin.mpg.de/digitallibrary/dirInfo-xml.jsp?fn= -metaDataManager=http://localhost:48080/MetaDataManagerRestlet \ No newline at end of file +metaDataManager=http://localhost:8180/MetaDataManagerRestlet \ No newline at end of file diff -r a42dabfcffdf -r 4b1ae52418c1 src/de/mpiwg/itgroup/eSciDoc/harvesting/ESciDocDataHarvester.java --- a/src/de/mpiwg/itgroup/eSciDoc/harvesting/ESciDocDataHarvester.java Sat Jan 15 13:57:56 2011 +0100 +++ b/src/de/mpiwg/itgroup/eSciDoc/harvesting/ESciDocDataHarvester.java Sat Jan 15 15:47:41 2011 +0100 @@ -41,7 +41,7 @@ protected EScidocBasicHandler connector; protected Transformer transformer; - private String echoContext; + private String context; private Logger addedFile = Logger.getLogger("addedFilesLogger"); private Logger notAddedFile = Logger.getLogger("notAddedFilesLogger"); @@ -57,7 +57,7 @@ this.transformer = transformer; this.connector = connector; //this.tools = new EScidocTools(connector); - this.echoContext = context; + this.context = context; } @@ -81,7 +81,7 @@ try { old = connector.alreadyExists( "/md-records/md-record/admin/archivePath", - ((ECHORessource) obj).archivePath, echoContext); + ((ECHORessource) obj).archivePath, context); } catch (ObjectNotUniqueError e) { // TODO Auto-generated catch block e.printStackTrace(); @@ -100,9 +100,9 @@ } } - obj.context = echoContext; + obj.context = context; - String contid = connector.getIDfromPID(obj.pid, echoContext); + String contid = connector.getIDfromPID(obj.pid, context); if (contid != null) { System.out.println("------- belongsTo:" + contid); } else { @@ -164,7 +164,8 @@ // checke zuerst, ob die MD5 schon im publiziert Teil der Metadaten ist, dann tue nichts String md5 = ((ECHORessource) obj).getIndexMetaMD5onServer(); - List results = connector.getObjectsFromSearch("escidoc.component.checksum",md5); + //List results = connector.getObjectsFromSearch("escidoc.component.checksum",md5); + List results = connector.getObjectsFromSearch("escidoc.component.checksum",md5,context); if (results.size()>0){ //index.meta schon abgespeichert notAddedFile.debug("alredy exist:"+obj.echoUrl); continue; @@ -177,7 +178,7 @@ old = connector.alreadyExists( "/md-records/md-record/admin/archivePath", - ((ECHORessource) obj).archivePath, echoContext); + ((ECHORessource) obj).archivePath, context); } catch (ObjectNotUniqueError e) { // TODO Auto-generated catch block e.printStackTrace(); @@ -196,9 +197,9 @@ } } - obj.context = echoContext; + obj.context = context; - String contid = connector.getIDfromPID(obj.pid, echoContext); + String contid = connector.getIDfromPID(obj.pid, context); if (contid != null) { System.out.println("------- belongsTo:" + contid); } else { @@ -265,7 +266,7 @@ } private void updateObject(ECHOObject objNew, ECHOObject objOld) throws TransformerException, ESciDocXmlObjectException { - objNew.context = echoContext; + objNew.context = context; eSciDocXmlObject escidocItem = transformer.transform(objNew); String lastModificationDateOld = objOld.lastModificationDate; escidocItem.setLastModificationDate(lastModificationDateOld); diff -r a42dabfcffdf -r 4b1ae52418c1 src/de/mpiwg/itgroup/eSciDoc/harvesting/FoxridgeHarvester.java --- a/src/de/mpiwg/itgroup/eSciDoc/harvesting/FoxridgeHarvester.java Sat Jan 15 13:57:56 2011 +0100 +++ b/src/de/mpiwg/itgroup/eSciDoc/harvesting/FoxridgeHarvester.java Sat Jan 15 15:47:41 2011 +0100 @@ -41,11 +41,10 @@ new ECHOTransformer(),connector,"/ir/context/escidoc:12001"); //hv.readObjectsFromInstance("ECHO_collection"); - //hv.readObjectsFromInstance("ECHO_resource"); + hv.readObjectsFromInstance("ECHO_resource"); //hv.releaseAndSubmitObjects("/ir/context/escidoc:12001"); - hv.releaseAndSubmitObjects("/ir/context/escidoc:12001/resources/members","//escidocItem:item",1 - ); + //hv.releaseAndSubmitObjects("/ir/context/escidoc:12001/resources/members","//escidocItem:item",1); }