diff --git a/oaipmh-core/pom.xml b/oaipmh-core/pom.xml index 302b5685e781f853738067839efe824a96f64c25..aa6f88cf4eb27092f42ed1b314b4d25c851ea35b 100644 --- a/oaipmh-core/pom.xml +++ b/oaipmh-core/pom.xml @@ -5,7 +5,7 @@ <parent> <artifactId>oaipmh</artifactId> <groupId>info.textgrid.middleware</groupId> - <version>3.1.2-SNAPSHOT</version> + <version>3.1.3-SNAPSHOT</version> </parent> <groupId>info.textgrid.middleware</groupId> <artifactId>oaipmh-core</artifactId> @@ -98,7 +98,7 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> - <version>2.5.1</version> + <version>${maven-compiler-plugin.version}</version> </plugin> </plugins> </pluginManagement> @@ -158,7 +158,7 @@ is JDK 8 compatible in absence of a fix for https://java.net/jira/browse/MAVEN_JAXB2_PLUGIN-80. --> <groupId>org.codehaus.mojo</groupId> <artifactId>properties-maven-plugin</artifactId> - <version>1.0-alpha-2</version> + <version>${properties-maven-plugin.version}</version> <executions> <execution> <id>set-additional-system-properties</id> @@ -179,7 +179,7 @@ <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>jaxb2-maven-plugin</artifactId> - <version>2.4</version> + <version>${jaxb2-maven-plugin.version}</version> <executions> <execution> <id>oaipmhDCSchema-xjc</id> @@ -196,6 +196,16 @@ <generateDirectory>${project.build.directory}/generated-sources/xjc1</generateDirectory> <staleFile>${project.build.directory}/jaxb2/.oaiDCSchemaXjcStaleFlag</staleFile> <clearOutputDir>false</clearOutputDir> + <!-- <transformSchemas> --> + <!-- <transformSchema> --> + <!-- <uri>http://purl.org/dc/elements/1.1/</uri> --> + <!-- <toPrefix>dc</toPrefix> --> + <!-- </transformSchema> --> + <!-- <transformSchema> --> + <!-- <uri>http://www.openarchives.org/OAI/2.0/oai_dc/</uri> --> + <!-- <toPrefix>oai_dc</toPrefix> --> + <!-- </transformSchema> --> + <!-- </transformSchemas> --> </configuration> </execution> <execution> diff --git a/oaipmh-core/src/main/java/info/textgrid/middleware/OAIPMHImpl.java b/oaipmh-core/src/main/java/info/textgrid/middleware/OAIPMHImpl.java index e635753b2c41b3164a0497a6970d307b3776d9af..f4f455a42cc64dc4170782e240e4bde326444487 100644 --- a/oaipmh-core/src/main/java/info/textgrid/middleware/OAIPMHImpl.java +++ b/oaipmh-core/src/main/java/info/textgrid/middleware/OAIPMHImpl.java @@ -13,7 +13,7 @@ import info.textgrid.middleware.oaipmh.ListIdentifiersType; import info.textgrid.middleware.oaipmh.ListMetadataFormatsType; import info.textgrid.middleware.oaipmh.ListRecordsType; import info.textgrid.middleware.oaipmh.ListSetsType; -import info.textgrid.middleware.oaipmh.OAIPMHType; +import info.textgrid.middleware.oaipmh.OAIPMHtype; import info.textgrid.middleware.oaipmh.ObjectFactory; import info.textgrid.middleware.oaipmh.RequestType; import info.textgrid.middleware.oaipmh.VerbType; @@ -84,7 +84,7 @@ public class OAIPMHImpl implements OAIPMHProducer { * @see info.textgrid.middleware.OAIPMHProducer#getRequest(java.lang.String, java.lang.String, * java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String) */ - public JAXBElement<OAIPMHType> postRequest(String verb, String identifier, String metadataPrefix, + public JAXBElement<OAIPMHtype> postRequest(String verb, String identifier, String metadataPrefix, String set, String from, String until, String resumptionToken) { return handleRequest(verb, identifier, metadataPrefix, set, from, until, resumptionToken); } @@ -95,7 +95,7 @@ public class OAIPMHImpl implements OAIPMHProducer { * @see info.textgrid.middleware.OAIPMHProducer#getRequest(java.lang.String, java.lang.String, * java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String) */ - public JAXBElement<OAIPMHType> getRequest(String verb, String identifier, String metadataPrefix, + public JAXBElement<OAIPMHtype> getRequest(String verb, String identifier, String metadataPrefix, String set, String from, String until, String resumptionToken) { return handleRequest(verb, identifier, metadataPrefix, set, from, until, resumptionToken); } @@ -104,7 +104,7 @@ public class OAIPMHImpl implements OAIPMHProducer { * @return */ public String getVersion() { - return OaipmhServiceVersion.BUILDNAME + "-" + OaipmhServiceVersion.VERSION + "." + return OaipmhServiceVersion.BUILDNAME + "-" + OaipmhServiceVersion.VERSION + "+" + OaipmhServiceVersion.BUILDDATE; } @@ -117,11 +117,11 @@ public class OAIPMHImpl implements OAIPMHProducer { * @param request * @return */ - public JAXBElement<OAIPMHType> identifyRequest(ObjectFactory obf, OAIPMHType oai, + public JAXBElement<OAIPMHtype> identifyRequest(ObjectFactory obf, OAIPMHtype oai, RequestType request) { List<String> errorValues = new ArrayList<String>(); - JAXBElement<OAIPMHType> oaipmhRoot = obf.createOAIPMH(oai); + JAXBElement<OAIPMHtype> oaipmhRoot = getOAIPMHRoot(obf, oai); IdentifyType tgRepIdentificationRequest = new IdentifyType(); if (this.rep.requestChecker(request)) { @@ -172,10 +172,10 @@ public class OAIPMHImpl implements OAIPMHProducer { * @param request * @return */ - public JAXBElement<OAIPMHType> getRecordRequest(ObjectFactory obf, OAIPMHType oai, + public JAXBElement<OAIPMHtype> getRecordRequest(ObjectFactory obf, OAIPMHtype oai, RequestType request) { - JAXBElement<OAIPMHType> oaipmhRoot = obf.createOAIPMH(oai); + JAXBElement<OAIPMHtype> oaipmhRoot = getOAIPMHRoot(obf, oai); /** * Check request. In GetRecord: allowed parameters: identifier, metadataPrefix, verb forbidden: @@ -228,10 +228,11 @@ public class OAIPMHImpl implements OAIPMHProducer { * @return * @throws ParseException */ - public JAXBElement<OAIPMHType> listIdentifiersRequest(ObjectFactory obf, OAIPMHType oai, + public JAXBElement<OAIPMHtype> listIdentifiersRequest(ObjectFactory obf, OAIPMHtype oai, RequestType request) throws ParseException { - JAXBElement<OAIPMHType> oaipmhRoot = obf.createOAIPMH(oai); + JAXBElement<OAIPMHtype> oaipmhRoot = getOAIPMHRoot(obf, oai); + ErrorHandler requestErrors = IdentifierListDelivererAbstract.requestChecker(request); if (requestErrors.getError().getValue() != null) { @@ -303,12 +304,12 @@ public class OAIPMHImpl implements OAIPMHProducer { * @param request * @return */ - public JAXBElement<OAIPMHType> listSetsRequest(ObjectFactory obf, OAIPMHType oai, + public JAXBElement<OAIPMHtype> listSetsRequest(ObjectFactory obf, OAIPMHtype oai, RequestType request) { - ListSetsType sl = new ListSetsType(); - JAXBElement<OAIPMHType> oaipmhRoot = obf.createOAIPMH(oai); - sl = this.setList.setListBuilder(); + JAXBElement<OAIPMHtype> oaipmhRoot = getOAIPMHRoot(obf, oai); + + ListSetsType sl = this.setList.setListBuilder(); oai.setListSets(sl); return oaipmhRoot; @@ -321,12 +322,13 @@ public class OAIPMHImpl implements OAIPMHProducer { * @param request * @return */ - public JAXBElement<OAIPMHType> listMetadataFormatsRequest(String id, ObjectFactory obf, - OAIPMHType oai, RequestType request) { + public JAXBElement<OAIPMHtype> listMetadataFormatsRequest(String id, ObjectFactory obf, + OAIPMHtype oai, RequestType request) { + + JAXBElement<OAIPMHtype> oaipmhRoot = getOAIPMHRoot(obf, oai); List<String> errorValues = new ArrayList<String>(); ListMetadataFormatsType listMF = new ListMetadataFormatsType(); - JAXBElement<OAIPMHType> oaipmhRoot = obf.createOAIPMH(oai); if (this.metadataFormatList.requestChecker(request)) { @@ -375,11 +377,11 @@ public class OAIPMHImpl implements OAIPMHProducer { * @param request * @return */ - public JAXBElement<OAIPMHType> listRecordsRequest(ObjectFactory obf, OAIPMHType oai, + public JAXBElement<OAIPMHtype> listRecordsRequest(ObjectFactory obf, OAIPMHtype oai, RequestType request) { // Create OAIPMH root object. - JAXBElement<OAIPMHType> oaipmhRoot = obf.createOAIPMH(oai); + JAXBElement<OAIPMHtype> oaipmhRoot = getOAIPMHRoot(obf, oai); // Check request's syntax. ErrorHandler requestErrors = RecordListDelivererAbstract.requestChecker(request); @@ -555,16 +557,19 @@ public class OAIPMHImpl implements OAIPMHProducer { * @param resumptionToken * @return */ - private JAXBElement<OAIPMHType> handleRequest(String verb, String identifier, + private JAXBElement<OAIPMHtype> handleRequest(String verb, String identifier, String metadataPrefix, String set, String from, String until, String resumptionToken) { + JAXBElement<OAIPMHtype> result; + ObjectFactory obf = new ObjectFactory(); - OAIPMHType response = new OAIPMHType(); - JAXBElement<OAIPMHType> oaipmhRoot = obf.createOAIPMH(response); + OAIPMHtype response = new OAIPMHtype(); + result = getOAIPMHRoot(obf, response); + VerbType verbParam = setVerb(verb); RequestType request = new RequestType(); - /*----Setting the responseDate of today-----*/ + // Set the responseDate of today. try { XMLGregorianCalendar convertedDateFormat; convertedDateFormat = OAIPMHUtillities @@ -576,8 +581,7 @@ public class OAIPMHImpl implements OAIPMHProducer { this.log.debug("Datatype configuration failed"); } - /* converting the request values */ - + // Convert the request values. setFromRequestValue(from, request); setUntilRequestValue(until, request); setIdentifierRequestValue(identifier, request); @@ -595,22 +599,22 @@ public class OAIPMHImpl implements OAIPMHProducer { if (verbParam != null) { if (verbParam.value().equals("Identify")) { - oaipmhRoot = identifyRequest(obf, response, request); + result = identifyRequest(obf, response, request); } else if (verbParam.value().equals("GetRecord")) { - oaipmhRoot = getRecordRequest(obf, response, request); + result = getRecordRequest(obf, response, request); } else if (verbParam.value().equals("ListIdentifiers")) { try { - oaipmhRoot = listIdentifiersRequest(obf, response, request); + result = listIdentifiersRequest(obf, response, request); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (verbParam.value().equals("ListSets")) { - oaipmhRoot = listSetsRequest(obf, response, request); + result = listSetsRequest(obf, response, request); } else if (verbParam.value().equals("ListMetadataFormats")) { - oaipmhRoot = listMetadataFormatsRequest(identifier, obf, response, request); + result = listMetadataFormatsRequest(identifier, obf, response, request); } else if (verbParam.value().equals("ListRecords")) { - oaipmhRoot = listRecordsRequest(obf, response, request); + result = listRecordsRequest(obf, response, request); } } else { this.error.setError("VerbError", "Illegal OAI verb"); @@ -618,10 +622,23 @@ public class OAIPMHImpl implements OAIPMHProducer { } response.setRequest(request); + result.setValue(response); - oaipmhRoot.setValue(response); + return result; + } - return oaipmhRoot; + /** + * @param obf + * @param oai + * @return + */ + private static JAXBElement<OAIPMHtype> getOAIPMHRoot(ObjectFactory obf, OAIPMHtype oai) { + + JAXBElement<OAIPMHtype> result = obf.createOAIPMH(oai); + + // Add DC XSD URL for xsi:schemaLocation. + + return result; } } diff --git a/oaipmh-core/src/main/java/info/textgrid/middleware/OAIPMHProducer.java b/oaipmh-core/src/main/java/info/textgrid/middleware/OAIPMHProducer.java index b015fb84cd3b1fbb02fc9a86b1118d26f445dcfa..c5a83a8dd8c872cde50a07b4ddae27da37e08412 100644 --- a/oaipmh-core/src/main/java/info/textgrid/middleware/OAIPMHProducer.java +++ b/oaipmh-core/src/main/java/info/textgrid/middleware/OAIPMHProducer.java @@ -1,6 +1,6 @@ package info.textgrid.middleware; -import info.textgrid.middleware.oaipmh.OAIPMHType; +import info.textgrid.middleware.oaipmh.OAIPMHtype; import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.Path; @@ -46,7 +46,7 @@ public interface OAIPMHProducer { @GET @Path("/") @Produces(MediaType.TEXT_XML) - JAXBElement<OAIPMHType> getRequest(@QueryParam("verb") String verb, + JAXBElement<OAIPMHtype> getRequest(@QueryParam("verb") String verb, @QueryParam("identifier") @DefaultValue("") String identifier, @QueryParam("metadataPrefix") @DefaultValue("") String metadataPrefix, @QueryParam("set") @DefaultValue("") String set, @@ -78,7 +78,7 @@ public interface OAIPMHProducer { @POST @Path("/") @Produces(MediaType.TEXT_XML) - JAXBElement<OAIPMHType> postRequest(@FormParam("verb") String verb, + JAXBElement<OAIPMHtype> postRequest(@FormParam("verb") String verb, @FormParam("identifier") @DefaultValue("") String identifier, @FormParam("metadataPrefix") @DefaultValue("") String metadataPrefix, @FormParam("set") @DefaultValue("") String set, diff --git a/oaipmh-core/src/main/java/info/textgrid/middleware/OaiPmhClient.java b/oaipmh-core/src/main/java/info/textgrid/middleware/OaiPmhClient.java index 599f86daf17f5769cbbd8a6916c4686df48b3112..f59d6af80373331b74dfdf70dd143db18fd27d66 100644 --- a/oaipmh-core/src/main/java/info/textgrid/middleware/OaiPmhClient.java +++ b/oaipmh-core/src/main/java/info/textgrid/middleware/OaiPmhClient.java @@ -1,15 +1,12 @@ package info.textgrid.middleware; -import info.textgrid.middleware.oaipmh.OAIPMHType; - +import info.textgrid.middleware.oaipmh.OAIPMHtype; import java.text.ParseException; - import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import javax.xml.bind.JAXBElement; - import org.apache.cxf.jaxrs.client.JAXRSClientFactory; /** @@ -17,42 +14,40 @@ import org.apache.cxf.jaxrs.client.JAXRSClientFactory; */ public class OaiPmhClient { - private String identifier; - private String metadataPrefix; - private String set; - private String from; - private String until; - private String resumptionToken; - private OAIPMHProducer producer; - - /** - * @param endpoint - */ - public OaiPmhClient(String endpoint) { - this.producer = JAXRSClientFactory.create(endpoint + "/oai",OAIPMHProducer.class); - } - - /** - * @param verb - * @return - * @throws ParseException - */ - public JAXBElement<OAIPMHType> request(String verb) throws ParseException { - return producer.getRequest(verb, identifier, metadataPrefix, set, from, - until, resumptionToken); - - } - - /** - * @return - */ - @GET - @Path("/version") - @Produces(MediaType.TEXT_PLAIN) - public String getVersion() { - return OaipmhServiceVersion.BUILDNAME + "-" - + OaipmhServiceVersion.VERSION + "." - + OaipmhServiceVersion.BUILDDATE; - } + private String identifier; + private String metadataPrefix; + private String set; + private String from; + private String until; + private String resumptionToken; + private OAIPMHProducer producer; + + /** + * @param endpoint + */ + public OaiPmhClient(String endpoint) { + this.producer = JAXRSClientFactory.create(endpoint + "/oai", OAIPMHProducer.class); + } + + /** + * @param verb + * @return + * @throws ParseException + */ + public JAXBElement<OAIPMHtype> request(String verb) throws ParseException { + return this.producer.getRequest(verb, this.identifier, this.metadataPrefix, this.set, this.from, + this.until, this.resumptionToken); + } + + /** + * @return + */ + @GET + @Path("/version") + @Produces(MediaType.TEXT_PLAIN) + public String getVersion() { + return OaipmhServiceVersion.BUILDNAME + "-" + OaipmhServiceVersion.VERSION + "+" + + OaipmhServiceVersion.BUILDDATE; + } } diff --git a/oaipmh-core/src/main/java/info/textgrid/middleware/SetDeliverer.java b/oaipmh-core/src/main/java/info/textgrid/middleware/SetDeliverer.java index e8a98fd410da53dcce7f9793764c0b16ccd5a977..0832297a2ffb17a88fed3a71700550d2a6cd27c6 100644 --- a/oaipmh-core/src/main/java/info/textgrid/middleware/SetDeliverer.java +++ b/oaipmh-core/src/main/java/info/textgrid/middleware/SetDeliverer.java @@ -1,4 +1,4 @@ -package info.textgrid.middleware; +wpackage info.textgrid.middleware; import info.textgrid.middleware.oaipmh.ListSetsType; import info.textgrid.middleware.oaipmh.SetType; diff --git a/oaipmh-core/src/main/xsd/oai_pmh.xsd b/oaipmh-core/src/main/xsd/oai_pmh.xsd index 834bb391c33803dcfaebd72495929fa29d7a543a..3fce3b59db458399dfaee104587694ebd9c8805e 100644 --- a/oaipmh-core/src/main/xsd/oai_pmh.xsd +++ b/oaipmh-core/src/main/xsd/oai_pmh.xsd @@ -21,9 +21,9 @@ </documentation> </annotation> - <element name="OAI-PMH" type="oai:OAI-PMHType"/> + <element name="OAI-PMH" type="oai:OAI-PMHtype"/> - <complexType name="OAI-PMHType"> + <complexType name="OAI-PMHtype"> <sequence> <element name="responseDate" type="dateTime"/> <element name="request" type="oai:requestType"/> @@ -314,4 +314,4 @@ </restriction> </simpleType> -</schema> \ No newline at end of file +</schema> diff --git a/oaipmh-core/src/test/java/info/textgrid/middleware/OaiPmhDARIAHTest.java b/oaipmh-core/src/test/java/info/textgrid/middleware/OaiPmhDARIAHTest.java index 90110c6a0d60fdffd32f13b14143ee42c2891ac0..3ff0821e3b86be79a09214c92418713c1359f6ff 100644 --- a/oaipmh-core/src/test/java/info/textgrid/middleware/OaiPmhDARIAHTest.java +++ b/oaipmh-core/src/test/java/info/textgrid/middleware/OaiPmhDARIAHTest.java @@ -8,7 +8,7 @@ import org.junit.Ignore; import org.junit.Test; import info.textgrid.middleware.oaipmh.DeletedRecordType; import info.textgrid.middleware.oaipmh.GranularityType; -import info.textgrid.middleware.oaipmh.OAIPMHType; +import info.textgrid.middleware.oaipmh.OAIPMHtype; import info.textgrid.namespaces.middleware.tgcrud.common.TextGridMimetypes; /** @@ -66,7 +66,7 @@ public class OaiPmhDARIAHTest { public void testGetRequestIdentify() throws ParseException { System.out.println("Test for the verb \"Identify\" with succesfull response"); - JAXBElement<OAIPMHType> r = this.request.getRequest("Identify", "", "", "", "", "", ""); + JAXBElement<OAIPMHtype> r = this.request.getRequest("Identify", "", "", "", "", "", ""); JAXB.marshal(r, System.out); System.out.println("-----------------------------------\n"); } @@ -100,7 +100,7 @@ public class OaiPmhDARIAHTest { OaiPmhDARIAHTest.record.setIdentifierField("administrativeMetadata.dcterms:identifier"); System.out.println("Test for the verb \"GetRecord\" for DARIAH with succesfull response"); - JAXBElement<OAIPMHType> p = this.request.getRequest("GetRecord", + JAXBElement<OAIPMHtype> p = this.request.getRequest("GetRecord", "hdl:21.T11991/0000-0005-E1AA-D", "oai_dc", "", "", "", ""); JAXB.marshal(p, System.out); System.out.println("-----------------------------------\n"); @@ -138,7 +138,7 @@ public class OaiPmhDARIAHTest { .setRelationToFurtherMetadataObject("descriptiveMetadata.dc:relation"); OaiPmhDARIAHTest.recordList.setSearchResponseSize("100"); - JAXBElement<OAIPMHType> r = this.request.getRequest("ListRecords", "", "oai_dc", + JAXBElement<OAIPMHtype> r = this.request.getRequest("ListRecords", "", "oai_dc", "21.T11991/0000-0003-718E-E", "", "", ""); JAXB.marshal(r, System.out); System.out.println("-----------------------------------\n"); @@ -158,7 +158,7 @@ public class OaiPmhDARIAHTest { OaiPmhDARIAHTest.setListDARIAH.setIdentifierField("administrativeMetadata.dcterms:identifier"); OaiPmhDARIAHTest.setListDARIAH.setSpecField("descriptiveMetadata.dc:title"); OaiPmhDARIAHTest.setListDARIAH.setSpecFieldPrefix(DARIAHConstants.COLLECTIONREGISTRY_PREFIX); - JAXBElement<OAIPMHType> r = this.request.getRequest("ListSets", "", "", "", "", "", ""); + JAXBElement<OAIPMHtype> r = this.request.getRequest("ListSets", "", "", "", "", "", ""); JAXB.marshal(r, System.out); System.out.println("-----------------------------------\n"); } @@ -177,7 +177,7 @@ public class OaiPmhDARIAHTest { .setRepositoryObjectURIPrefix(DARIAHConstants.ITEM_IDENTIFIER_PREFIX); OaiPmhDARIAHTest.identifierList.setIdentifierField("administrativeMetadata.dcterms:identifier"); OaiPmhDARIAHTest.identifierList.setSearchResponseSize("100"); - JAXBElement<OAIPMHType> r = + JAXBElement<OAIPMHtype> r = this.request.getRequest("ListIdentifiers", "", "oai_dc", "", "", "", ""); JAXB.marshal(r, System.out); System.out.println("-----------------------------------\n"); diff --git a/oaipmh-core/src/test/java/info/textgrid/middleware/OaiPmhTest.java b/oaipmh-core/src/test/java/info/textgrid/middleware/OaiPmhTest.java index 4a45af95670464c3cd86f57ab31b1f9ce82ed35a..802660c4dc19d131c19fdb50c9ff8a8121bdd935 100644 --- a/oaipmh-core/src/test/java/info/textgrid/middleware/OaiPmhTest.java +++ b/oaipmh-core/src/test/java/info/textgrid/middleware/OaiPmhTest.java @@ -1,9 +1,7 @@ package info.textgrid.middleware; import java.text.ParseException; -import java.util.HashMap; import java.util.Map; - import javax.xml.bind.JAXB; import javax.xml.bind.JAXBElement; import javax.xml.datatype.DatatypeConfigurationException; @@ -13,7 +11,7 @@ import org.junit.Ignore; import org.junit.Test; import info.textgrid.middleware.oaipmh.DeletedRecordType; import info.textgrid.middleware.oaipmh.GranularityType; -import info.textgrid.middleware.oaipmh.OAIPMHType; +import info.textgrid.middleware.oaipmh.OAIPMHtype; import info.textgrid.namespaces.middleware.tgcrud.common.TextGridMimetypes; /** @@ -25,7 +23,7 @@ import info.textgrid.namespaces.middleware.tgcrud.common.TextGridMimetypes; public class OaiPmhTest { - public static OAI_ESClient oaiEsClient; + public static OAI_ESClient oaiEsClient; DeletedRecordType bla = DeletedRecordType.NO; GranularityType bla2 = GranularityType.YYYY_MM_DD_THH_MM_SS_Z; private RepIdentification rep = new RepIdentification("TextGrid-Repository", "www.textgridrep.de", @@ -35,16 +33,18 @@ public class OaiPmhTest { private static RecordDelivererIDIOM recordIDIOM; private static RecordListDelivererDC recordList; private static RecordListDelivererIDIOM recordListIDIOM; - private static IdentifierListDelivererDC identifierList = new IdentifierListDelivererDC(true, false); - private static IdentifierListDelivererIDIOM identifierListIDIOM = new IdentifierListDelivererIDIOM(true, false); + private static IdentifierListDelivererDC identifierList = + new IdentifierListDelivererDC(true, false); + private static IdentifierListDelivererIDIOM identifierListIDIOM = + new IdentifierListDelivererIDIOM(true, false); private MetadataFormatListDeliverer metadataFormatList = new MetadataFormatListDeliverer(); private SetDeliverer setListDARIAH = new SetDeliverer(false, true); private SetDeliverer setListTextGrid = new SetDeliverer(true, false); - + private OAIPMHImpl request = new OAIPMHImpl( - this.rep, OaiPmhTest.record, OaiPmhTest.recordIDIOM, OaiPmhTest.recordList, - OaiPmhTest.recordListIDIOM, this.metadataFormatList, - this.setListDARIAH, OaiPmhTest.identifierList, OaiPmhTest.identifierListIDIOM); + this.rep, OaiPmhTest.record, OaiPmhTest.recordIDIOM, OaiPmhTest.recordList, + OaiPmhTest.recordListIDIOM, this.metadataFormatList, + this.setListDARIAH, OaiPmhTest.identifierList, OaiPmhTest.identifierListIDIOM); /** * @throws Exception @@ -54,23 +54,23 @@ public class OaiPmhTest { oaiEsClient = new OAI_ESClient("localhost", "9302", "tg-esx2-instance"); OAI_ESClient.setEsIndex("textgrid-public"); OAI_ESClient.setEsType("metadata"); - + record = new RecordDelivererDC(true, false); record.setOaiEsClient(oaiEsClient); record.setWorkFields(TGConstants.TGWorkFields); - + recordIDIOM = new RecordDelivererIDIOM(true, false); - recordIDIOM.setOaiEsClient(oaiEsClient); - + recordIDIOM.setOaiEsClient(oaiEsClient); + recordList = new RecordListDelivererDC(true, false); recordList.setFields(TGConstants.TGFields); recordList.setWorkFields(TGConstants.TGWorkFields); recordList.setOaiEsClient(oaiEsClient); recordList.setSearchResponseSize("100"); - + recordListIDIOM = new RecordListDelivererIDIOM(true, false); - recordListIDIOM.setOaiEsClient(oaiEsClient); - + recordListIDIOM.setOaiEsClient(oaiEsClient); + identifierList = new IdentifierListDelivererDC(true, false); identifierList.setOaiEsClient(oaiEsClient); identifierList.setIdentifierListFields(TGConstants.IDENTIFIER_LIST_FIELDS); @@ -130,8 +130,8 @@ public class OaiPmhTest { public void testGetRequestIdentify() throws ParseException { System.out.println("Test for the verb \"Identify\" with succesfull response"); - JAXBElement<OAIPMHType> r = - this.request.getRequest("Identify", "", "", "", "", "", ""); + JAXBElement<OAIPMHtype> r = + this.request.getRequest("Identify", "", "", "", "", "", ""); JAXB.marshal(r, System.out); System.out.println("-----------------------------------\n"); } @@ -140,11 +140,11 @@ public class OaiPmhTest { * @throws ParseException */ @Test - @Ignore + @Ignore public void testGetRequestIdentifyVerbError() throws ParseException { - System.out.println("Test for the verb \"Identify\" with error response (MetadaFormat)"); - JAXBElement<OAIPMHType> t = - this.request.getRequest("Identify", "", "a", "", "", "", ""); + System.out.println("Test for the verb \"Identify\" with error response (MetadaFormat)"); + JAXBElement<OAIPMHtype> t = + this.request.getRequest("Identify", "", "a", "", "", "", ""); JAXB.marshal(t, System.out); System.out.println("-----------------------------------\n"); } @@ -156,8 +156,8 @@ public class OaiPmhTest { @Ignore public void testGetRequestIdentifyArgumentError() throws ParseException { System.out.println("Test for the verb \"Identify\" with error response (Until and Identifier)"); - JAXBElement<OAIPMHType> z = - this.request.getRequest("Identify", "a", "", "", "", "a", ""); + JAXBElement<OAIPMHtype> z = + this.request.getRequest("Identify", "a", "", "", "", "a", ""); JAXB.marshal(z, System.out); System.out.println("-----------------------------------\n"); } @@ -194,7 +194,7 @@ public class OaiPmhTest { record.setIdentifierField("textgridUri"); System.out.println("Test for the verb \"GetRecord\" with succesfull response"); - JAXBElement<OAIPMHType> p = + JAXBElement<OAIPMHtype> p = this.request.getRequest("GetRecord", "textgrid:vqn0.0", "oai_dc", "", "", "", ""); JAXB.marshal(p, System.out); System.out.println("-----------------------------------\n"); @@ -208,13 +208,14 @@ public class OaiPmhTest { public void testGetRequestGetRecordIDIOM() throws ParseException { System.out.println("Test for the verb \"GetRecord\" with succesfull response"); - JAXBElement<OAIPMHType> p = - this.request.getRequest("GetRecord", "textgrid:2rcj2", TGConstants.METADATA_IDIOM_PREFIX, "", "", "", ""); + JAXBElement<OAIPMHtype> p = + this.request.getRequest("GetRecord", "textgrid:2rcj2", TGConstants.METADATA_IDIOM_PREFIX, + "", "", "", ""); JAXB.marshal(p, System.out); System.out.println("-----------------------------------\n"); } - - + + /** * @throws ParseException */ @@ -223,7 +224,7 @@ public class OaiPmhTest { public void testGetRequestGetRecordErrorIdentifierMissing() throws ParseException { System.out .println("Test for the verb \"GetRecord\" with errpr response (Identifier Missing)"); - JAXBElement<OAIPMHType> p = this.request.getRequest("GetRecord", "", + JAXBElement<OAIPMHtype> p = this.request.getRequest("GetRecord", "", "", "", "", "", ""); JAXB.marshal(p, System.out); System.out.println("-----------------------------------\n"); @@ -236,7 +237,7 @@ public class OaiPmhTest { @Test @Ignore public void testListIdentifierSetsDC() throws ParseException { - + OaiPmhTest.identifierList.setFieldForRange(TGConstants.RANGE_FIELD); OaiPmhTest.identifierList.setIdentifierListFields(TGConstants.IDENTIFIER_LIST_FIELDS); OaiPmhTest.identifierList.setDateOfObjectCreation(TGConstants.CREATED); @@ -244,16 +245,16 @@ public class OaiPmhTest { OaiPmhTest.identifierList.setIdentifierField("textgridUri"); OaiPmhTest.identifierList.setSearchResponseSize("100"); System.out.println("Test for the verb \"ListIdentifiers\" with succesfull response"); - JAXBElement<OAIPMHType> p = this.request.getRequest("ListIdentifiers", "", "oai_dc", + JAXBElement<OAIPMHtype> p = this.request.getRequest("ListIdentifiers", "", "oai_dc", "project:TGPR-26236625-1acc-b921-a5fa-53567c3eeb80", "", "", ""); JAXB.marshal(p, System.out); System.out.println("-----------------------------------\n"); } - + @Test @Ignore public void testListIdentifierWithResumptionTokenDC() throws ParseException { - + OaiPmhTest.identifierList.setFieldForRange(TGConstants.RANGE_FIELD); OaiPmhTest.identifierList.setIdentifierListFields(TGConstants.IDENTIFIER_LIST_FIELDS); OaiPmhTest.identifierList.setDateOfObjectCreation(TGConstants.CREATED); @@ -261,24 +262,24 @@ public class OaiPmhTest { OaiPmhTest.identifierList.setIdentifierField("textgridUri"); OaiPmhTest.identifierList.setSearchResponseSize("100"); System.out.println("Test for the verb \"ListIdentifiers\" with succesfull response"); - JAXBElement<OAIPMHType> p = this.request.getRequest("ListIdentifiers", "", "oai_dc", + JAXBElement<OAIPMHtype> p = this.request.getRequest("ListIdentifiers", "", "oai_dc", "", "", "", ""); JAXB.marshal(p, System.out); - - - String resToken =""; - for(Map.Entry<String, Integer> entry : IdentifierListDelivererDC.cursorCollector.entrySet()) { - resToken = entry.getKey(); - } + + + String resToken = ""; + for (Map.Entry<String, Integer> entry : IdentifierListDelivererDC.cursorCollector.entrySet()) { + resToken = entry.getKey(); + } System.out.println("HASH MAP BEFORE: "); System.out.println(IdentifierListDelivererDC.cursorCollector); System.out.println(resToken); - JAXBElement<OAIPMHType> p2 = this.request.getRequest("ListIdentifiers", "", "", - "", "", "", resToken); + JAXBElement<OAIPMHtype> p2 = this.request.getRequest("ListIdentifiers", "", "", + "", "", "", resToken); JAXB.marshal(p2, System.out); System.out.println("HASH MAP AFTER: "); System.out.println(IdentifierListDelivererDC.cursorCollector); - + System.out.println("-----------------------------------\n"); } @@ -286,38 +287,41 @@ public class OaiPmhTest { @Ignore public void testListIdentifierIDIOMInvalidResumptionToken() throws ParseException { - System.out.println("Test for the verb \"ListIdentifiers\" in IDIOM with an invalid resumption token"); - JAXBElement<OAIPMHType> p = this.request.getRequest("ListIdentifiers", "", "", + System.out + .println("Test for the verb \"ListIdentifiers\" in IDIOM with an invalid resumption token"); + JAXBElement<OAIPMHtype> p = this.request.getRequest("ListIdentifiers", "", "", "", "", "", "45d8b524-b69e-44e8-81a9-a3634005a430"); JAXB.marshal(p, System.out); System.out.println("-----------------------------------\n"); } - + @Test @Ignore public void testListIdentifierIDIOMWithResumptionToken() throws ParseException { - + System.out.println("Test for the verb \"ListIdentifiers\" in IDIOM with successfull response"); - - JAXBElement<OAIPMHType> p = this.request.getRequest("ListIdentifiers", "", TGConstants.METADATA_IDIOM_PREFIX, - "", "", "", ""); + + JAXBElement<OAIPMHtype> p = + this.request.getRequest("ListIdentifiers", "", TGConstants.METADATA_IDIOM_PREFIX, + "", "", "", ""); JAXB.marshal(p, System.out); - - String resToken =""; - for(Map.Entry<String, Integer> entry : IdentifierListDelivererIDIOM.cursorCollector.entrySet()) { - resToken = entry.getKey(); - } - - JAXBElement<OAIPMHType> p2 = this.request.getRequest("ListIdentifiers", "", "", - "", "", "", resToken); + + String resToken = ""; + for (Map.Entry<String, Integer> entry : IdentifierListDelivererIDIOM.cursorCollector + .entrySet()) { + resToken = entry.getKey(); + } + + JAXBElement<OAIPMHtype> p2 = this.request.getRequest("ListIdentifiers", "", "", + "", "", "", resToken); JAXB.marshal(p2, System.out); System.out.println("HASH MAP AFTER: "); System.out.println(IdentifierListDelivererIDIOM.cursorCollector); - + System.out.println("-----------------------------------\n"); } - + /** * @throws ParseException */ @@ -347,25 +351,25 @@ public class OaiPmhTest { OaiPmhTest.recordList.setRepositoryObjectURIPrefix(TGConstants.ITEM_IDENTIFIER_PREFIX); OaiPmhTest.recordList.setFieldForRange(TGConstants.CREATED); OaiPmhTest.recordList.setModifiedField(TGConstants.MODIFIED_FIELD); - OaiPmhTest.recordList.setIdentifierField("textgridUri"); - + OaiPmhTest.recordList.setIdentifierField("textgridUri"); + System.out.println("Test for the verb \"ListRecords\" with sets with succesfull response"); - JAXBElement<OAIPMHType> p = + JAXBElement<OAIPMHtype> p = this.request.getRequest("ListRecords", "", "oai_dc", "", "", "", ""); JAXB.marshal(p, System.out); - - String resToken =""; - for(Map.Entry<String, Integer> entry : RecordListDelivererDC.cursorCollector.entrySet()) { - resToken = entry.getKey(); - } - - JAXBElement<OAIPMHType> p2 = this.request.getRequest("ListRecords", "", "", - "", "", "", resToken); + + String resToken = ""; + for (Map.Entry<String, Integer> entry : RecordListDelivererDC.cursorCollector.entrySet()) { + resToken = entry.getKey(); + } + + JAXBElement<OAIPMHtype> p2 = this.request.getRequest("ListRecords", "", "", + "", "", "", resToken); JAXB.marshal(p2, System.out); System.out.println("HASH MAP AFTER: "); System.out.println(RecordListDelivererDC.cursorCollector); - - + + System.out.println("-----------------------------------\n"); } @@ -373,29 +377,30 @@ public class OaiPmhTest { @Test @Ignore public void testListRecordWithResumptionTokenForIDIOM() throws ParseException { - + System.out.println("Test for the verb \"ListRecords\" for IDIOM with succesfull response"); - JAXBElement<OAIPMHType> p = - this.request.getRequest("ListRecords", "", TGConstants.METADATA_IDIOM_PREFIX, "", "", "", ""); + JAXBElement<OAIPMHtype> p = + this.request.getRequest("ListRecords", "", TGConstants.METADATA_IDIOM_PREFIX, "", "", "", + ""); JAXB.marshal(p, System.out); - - - String resToken =""; - for(Map.Entry<String, Integer> entry : RecordListDelivererIDIOM.cursorCollector.entrySet()) { - resToken = entry.getKey(); - } - - JAXBElement<OAIPMHType> p2 = this.request.getRequest("ListRecords", "", "", - "", "", "", resToken); + + + String resToken = ""; + for (Map.Entry<String, Integer> entry : RecordListDelivererIDIOM.cursorCollector.entrySet()) { + resToken = entry.getKey(); + } + + JAXBElement<OAIPMHtype> p2 = this.request.getRequest("ListRecords", "", "", + "", "", "", resToken); JAXB.marshal(p2, System.out); System.out.println("HASH MAP AFTER: "); System.out.println(RecordListDelivererIDIOM.cursorCollector); - + System.out.println("-----------------------------------\n"); } - - + + /** * @throws ParseException */ @@ -403,7 +408,7 @@ public class OaiPmhTest { @Ignore public void testListRecords() throws ParseException { - JAXBElement<OAIPMHType> r = + JAXBElement<OAIPMHtype> r = this.request.getRequest("ListRecords", "", "oai_dc", "", "2011-02-06T20:48:39", "", ""); JAXB.marshal(r, System.out); System.out.println("-----------------------------------\n"); @@ -442,7 +447,7 @@ public class OaiPmhTest { OaiPmhTest.recordList.setIdentifierField(TGConstants.URI); OaiPmhTest.recordList.setSearchResponseSize("100"); - JAXBElement<OAIPMHType> r = + JAXBElement<OAIPMHtype> r = this.request.getRequest("ListRecords", "", "oai_dc", "", "", "", ""); JAXB.marshal(r, System.out); System.out.println("-----------------------------------\n"); @@ -456,7 +461,7 @@ public class OaiPmhTest { @Test @Ignore public void testListMetadataFormatsForIdentifier() throws ParseException { - JAXBElement<OAIPMHType> r = this.request.getRequest( + JAXBElement<OAIPMHtype> r = this.request.getRequest( "ListMetadataFormats", "7t.0", "", "", "", "", ""); JAXB.marshal(r, System.out); System.out.println("-----------------------------------\n"); @@ -468,7 +473,7 @@ public class OaiPmhTest { @Test @Ignore public void testListMetadataFormatsWithoutID() throws ParseException { - JAXBElement<OAIPMHType> r = this.request.getRequest( + JAXBElement<OAIPMHtype> r = this.request.getRequest( "ListMetadataFormats", "", "", "", "", "", ""); JAXB.marshal(r, System.out); System.out.println("-----------------------------------\n"); @@ -485,7 +490,7 @@ public class OaiPmhTest { this.setListTextGrid.setFormatToFilter(TextGridMimetypes.DARIAH_COLLECTION); this.setListTextGrid.setIdentifierField("textgridUri"); this.setListTextGrid.setRepositoryObjectURIPrefix("textgrid:"); - JAXBElement<OAIPMHType> r = this.request.getRequest("ListSets", "", "", "", "", "", ""); + JAXBElement<OAIPMHtype> r = this.request.getRequest("ListSets", "", "", "", "", "", ""); JAXB.marshal(r, System.out); System.out.println("-----------------------------------\n"); @@ -501,7 +506,7 @@ public class OaiPmhTest { OaiPmhTest.identifierList.setIdentifierField("textgridUri"); OaiPmhTest.identifierList.setRepositoryObjectURIPrefix("textgrid:"); OaiPmhTest.identifierList.setSearchResponseSize("100"); - JAXBElement<OAIPMHType> r = this.request.getRequest("", "", "", "", "", "", ""); + JAXBElement<OAIPMHtype> r = this.request.getRequest("", "", "", "", "", "", ""); JAXB.marshal(r, System.out); System.out.println("-----------------------------------\n"); } diff --git a/oaipmh-webapp/pom.xml b/oaipmh-webapp/pom.xml index dfe73f77a4bda27c75ba9e79569ae9226d24c5f7..80fb9829e5e7c91e277f23370d4140de439d50e7 100644 --- a/oaipmh-webapp/pom.xml +++ b/oaipmh-webapp/pom.xml @@ -5,7 +5,7 @@ <parent> <artifactId>oaipmh</artifactId> <groupId>info.textgrid.middleware</groupId> - <version>3.1.2-SNAPSHOT</version> + <version>3.1.3-SNAPSHOT</version> </parent> <groupId>info.textgrid.middleware</groupId> <artifactId>oaipmh-webapp</artifactId> diff --git a/pom.xml b/pom.xml index aaabc1f6d94b1fc0aa7e67041097c41a2bef122b..e971894bc3b1bd1362153c140ce87fbe91fadfa3 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>info.textgrid.middleware</groupId> <artifactId>oaipmh</artifactId> - <version>3.1.2-SNAPSHOT</version> + <version>3.1.3-SNAPSHOT</version> <packaging>pom</packaging> <name>DARIAHDE :: OAI-PMH DataProvider</name> <properties> @@ -20,10 +20,12 @@ <junit.version>4.11</junit.version> <jdk.version>1.8</jdk.version> <maven-antrun-plugin.version>1.3</maven-antrun-plugin.version> - <maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version> - <maven-compiler-plugin.version>3.0</maven-compiler-plugin.version> - <jetty-maven-plugin.version>9.4.12.v20180830</jetty-maven-plugin.version> - <maven-eclipse-plugin.version>2.9</maven-eclipse-plugin.version> + <jaxb2-maven-plugin.version>2.5.0</jaxb2-maven-plugin.version> + <maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version> + <maven-compiler-plugin.version>3.0</maven-compiler-plugin.version> + <jetty-maven-plugin.version>9.4.12.v20180830</jetty-maven-plugin.version> + <maven-eclipse-plugin.version>2.9</maven-eclipse-plugin.version> + <properties-maven-plugin.version>1.0-alpha-2</properties-maven-plugin.version> </properties> <url>https://projects.gwdg.de/projects/oai-pmh</url> <scm>