Skip to content
Snippets Groups Projects
Commit 4e4ecaef authored by mbrodhu's avatar mbrodhu
Browse files

Merge branch 'release/4.0.10'

parents a6f73be0 d6361754
No related branches found
No related tags found
No related merge requests found
......@@ -5,7 +5,7 @@
<parent>
<artifactId>oaipmh</artifactId>
<groupId>info.textgrid.middleware</groupId>
<version>4.0.9</version>
<version>4.0.10</version>
</parent>
<groupId>info.textgrid.middleware</groupId>
<artifactId>oaipmh-core</artifactId>
......
......@@ -44,6 +44,7 @@ public class IDIOMImages implements RecordDelivererInterface, RecordListDelivere
private int totalHits;
protected static Map<String, Integer> cursorCollector = new Hashtable<String, Integer>();
protected static Map<String, String> fromUntilCollector = new Hashtable<String, String>();
public IDIOMImages(){
}
......@@ -57,13 +58,27 @@ public class IDIOMImages implements RecordDelivererInterface, RecordListDelivere
* @throws TransformerException
* @throws TransformerFactoryConfigurationError
*/
private String from;
private String until;
public ListRecordsType getRecords(String from, String to, String set, String resumptionToken) throws JSONException, IOException, ParseException, TransformerFactoryConfigurationError{
MediaHarvester mediaHarvester = new MediaHarvester(getKindID(),getPerPage(), getPageNumber());
if(resumptionToken!=null) {
String fromUntil = fromUntilCollector.get(resumptionToken);
from = fromUntil.split(":")[0];
to = fromUntil.split(":")[1];
System.out.println(from);
System.out.println(to);
}
MediaHarvester mediaHarvester = new MediaHarvester(getKindID(),getPerPage(), getPageNumber(), from, to);
JSONArray mediaList = mediaHarvester.getMediaListFromConedaKor().getJSONArray("records");
ListRecordsType imageMetsModsList = new ListRecordsType();
setTotalHits(mediaHarvester.getTotalMedia());
this.setFrom(from);
this.setUntil(to);
for(int i=0; i<mediaList.length(); i++){
ImageMetsMods imm = new ImageMetsMods(mediaList.getJSONObject(i));
System.out.println(mediaList.getJSONObject(i).get("id").toString());
......@@ -91,13 +106,20 @@ public class IDIOMImages implements RecordDelivererInterface, RecordListDelivere
e.printStackTrace();
}
}
imageMetsModsList.setResumptionToken(buildResumptionToken(resumptionToken, getTotalHits()));
imageMetsModsList.setResumptionToken(buildResumptionToken(resumptionToken, getTotalHits(), from, to));
return imageMetsModsList;
}
public ListIdentifiersType processIdentifierList(String from, String to, String set, String resumptionToken) throws JSONException, IOException, ParseException{
MediaHarvester mediaHarvester = new MediaHarvester(getKindID(),getPerPage(), getPageNumber());
if(resumptionToken!=null) {
String fromUntil = fromUntilCollector.get(resumptionToken);
from = fromUntil.split(":")[0];
to = fromUntil.split(":")[1];
System.out.println(from);
System.out.println(to);
}
MediaHarvester mediaHarvester = new MediaHarvester(getKindID(),getPerPage(), getPageNumber(), from, to);
JSONArray mediaList = mediaHarvester.getMediaListFromConedaKor().getJSONArray("records");
ListIdentifiersType identifiersList = new ListIdentifiersType();
......@@ -110,7 +132,7 @@ public class IDIOMImages implements RecordDelivererInterface, RecordListDelivere
identifiersList.getHeader().add(header);
}
identifiersList.setResumptionToken(buildResumptionToken(resumptionToken, getTotalHits()));
identifiersList.setResumptionToken(buildResumptionToken(resumptionToken, getTotalHits(), from, to));
return identifiersList;
}
......@@ -142,7 +164,7 @@ public class IDIOMImages implements RecordDelivererInterface, RecordListDelivere
return singleImageMetsMods;
}
public ListRecordsType getAllMedia() throws JSONException, IOException, ParseException, SAXException, TransformerFactoryConfigurationError, TransformerException{
/*public ListRecordsType getAllMedia() throws JSONException, IOException, ParseException, SAXException, TransformerFactoryConfigurationError, TransformerException{
ListRecordsType imageMetsModsList = new ListRecordsType();
MediaHarvester mediaHarvester = new MediaHarvester(getKindID(),getPerPage(), getPageNumber());
int perPage = 100;
......@@ -177,7 +199,7 @@ public class IDIOMImages implements RecordDelivererInterface, RecordListDelivere
}
return imageMetsModsList;
}
}*/
public HeaderType buildOAIPMH_RecordHeader(String dateStamp, String Identifier){
HeaderType recordHeader = new HeaderType();
......@@ -186,7 +208,7 @@ public class IDIOMImages implements RecordDelivererInterface, RecordListDelivere
return recordHeader;
}
public ResumptionTokenType buildResumptionToken(String resumptionToken, int completeListSize){
public ResumptionTokenType buildResumptionToken(String resumptionToken, int completeListSize, String from, String until){
ResumptionTokenType resTokenForResponse = new ResumptionTokenType();
if(resumptionToken != null && cursorCollector.containsKey(resumptionToken)){
if(cursorCollector.get(resumptionToken)*100 > completeListSize){
......@@ -203,7 +225,8 @@ public class IDIOMImages implements RecordDelivererInterface, RecordListDelivere
resTokenForResponse.setCompleteListSize(BigInteger.valueOf(completeListSize));
resTokenForResponse.setCursor(BigInteger.valueOf(100));
resTokenForResponse.setValue(resTokenValue);
cursorCollector.put(resTokenValue, 1);
cursorCollector.put(resTokenValue, 2);
fromUntilCollector.put(resTokenValue, from + ":" + until);
}
return resTokenForResponse;
}
......@@ -251,4 +274,20 @@ public class IDIOMImages implements RecordDelivererInterface, RecordListDelivere
public void setKindID(String kindID) {
this.kindID = kindID;
}
public String getFrom() {
return from;
}
public void setFrom(String from) {
this.from = from;
}
public String getUntil() {
return until;
}
public void setUntil(String until) {
this.until = until;
}
}
......@@ -11,6 +11,7 @@ import javax.xml.transform.TransformerFactoryConfigurationError;
import javax.xml.transform.dom.DOMResult;
import org.json.JSONException;
import org.junit.Ignore;
import org.junit.Test;
import org.w3c.dom.Document;
import org.xml.sax.SAXException;
......@@ -21,6 +22,7 @@ import info.textgrid.middleware.oaipmh.OAIPMHtype;
public class ClassicMayanTest {
@Test
@Ignore
public void testGetRecord() throws JSONException, IOException, SAXException, ParseException, TransformerFactoryConfigurationError, TransformerException{
IDIOMImages imageList = new IDIOMImages();
Document document;
......@@ -35,6 +37,7 @@ public class ClassicMayanTest {
}
@Test
@Ignore
public void testGetMediaList() throws JSONException, IOException, ParseException, SAXException, TransformerFactoryConfigurationError, TransformerException{
IDIOMImages imageList = new IDIOMImages();
......@@ -55,6 +58,7 @@ public class ClassicMayanTest {
}
@Test
@Ignore
public void testOAIPMHRequest() throws JSONException, IOException, ParseException, SAXException, TransformerFactoryConfigurationError, TransformerException{
OAIPMHtype request = new OAIPMHtype();
IDIOMImages imageList = new IDIOMImages();
......@@ -62,7 +66,7 @@ public class ClassicMayanTest {
imageList.setKindID("1");
imageList.setPerPage("100");
imageList.setPageNumber("1");
request.setListRecords(imageList.getAllMedia());
//request.setListRecords(imageList.getAllMedia());
}
}
......@@ -366,7 +366,7 @@ public class OaiPmhTestTG {
System.out.println("Test for the verb \"ListRecords\" with succesfull response for IMAGES");
String p = this.request.getRequest("ListRecords", "",
OAIPMHConstants.METADATA_IDIOM_IMAGE_PREFIX, "", "", "", "");
OAIPMHConstants.METADATA_IDIOM_IMAGE_PREFIX, "", "2019-08-01", "", "");
System.out.println(p);
System.out.println("-----------------------------------\n");
}
......@@ -376,7 +376,7 @@ public class OaiPmhTestTG {
System.out.println("Test for the verb \"ListIdentifiers\" with succesfull response");
String p = this.request.getRequest("ListIdentifiers", "",
OAIPMHConstants.METADATA_IDIOM_IMAGE_PREFIX, "", "", "", "");
OAIPMHConstants.METADATA_IDIOM_IMAGE_PREFIX, "", "2016-08-01", "2021-11-10", "");
System.out.println(p);
System.out.println("-----------------------------------\n");
}
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>oaipmh</artifactId>
<groupId>info.textgrid.middleware</groupId>
<version>4.0.9</version>
<version>4.0.10</version>
</parent>
<groupId>info.textgrid.middleware</groupId>
<artifactId>oaipmh-webapp</artifactId>
......
......@@ -4,14 +4,14 @@
<modelVersion>4.0.0</modelVersion>
<groupId>info.textgrid.middleware</groupId>
<artifactId>oaipmh</artifactId>
<version>4.0.9</version>
<version>4.0.10</version>
<packaging>pom</packaging>
<name>DARIAHDE :: OAI-PMH DataProvider</name>
<properties>
<common.version>4.0.1</common.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<cxf.version>3.3.11</cxf.version>
<mets-mods-mapping.version>1.1.18</mets-mods-mapping.version>
<mets-mods-mapping.version>1.1.19</mets-mods-mapping.version>
<spring.version>4.0.2.RELEASE</spring.version>
<elasticsearch.version>6.5.4</elasticsearch.version>
<antlr-runtime.version>3.2</antlr-runtime.version>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment