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

All requests are now configurable by a config file

parent e61cbfa1
No related branches found
No related tags found
No related merge requests found
Showing
with 371 additions and 93 deletions
......@@ -4,11 +4,11 @@
<parent>
<artifactId>oaipmh</artifactId>
<groupId>info.textgrid.middleware</groupId>
<version>1.3.9-SNAPSHOT</version>
<version>1.3.10-SNAPSHOT</version>
</parent>
<groupId>info.textgrid.middleware</groupId>
<artifactId>oaipmh-core</artifactId>
<version>1.3.9-SNAPSHOT</version>
<version>1.3.10-SNAPSHOT</version>
<packaging>jar</packaging>
<name>TextGrid :: TG-OAI-PMH :: Core</name>
<url>http://maven.apache.org</url>
......
......@@ -349,13 +349,14 @@ public class DublinCoreFieldLoader {
public static List<String> setType(GetResponse responseWorkValues, String[] values){
for(String field : values){
if (responseWorkValues.getField(field) != null) {
types.add(responseWorkValues.getField(field)
.getValue().toString());
if(values != null){
for(String field : values){
if (responseWorkValues.getField(field) != null) {
types.add(responseWorkValues.getField(field)
.getValue().toString());
}
}
}
return types;
}
}
......@@ -30,6 +30,9 @@ public class IdentifierListDeliverer {
private ListIdentifiersType lit = new ListIdentifiersType();
private boolean idExist = true;
private OAI_ESClient oaiEsClient;
private String[] identifierListFields;
private String rangeField;
/**
......@@ -48,14 +51,11 @@ public class IdentifierListDeliverer {
private ListIdentifiersType setListIdentifierHeader(String datestamp, String identifier){
HeaderType header = new HeaderType();
header.setDatestamp(datestamp);
header.setIdentifier(identifier);
lit.getHeader().add(header);
return lit;
}
......@@ -91,12 +91,12 @@ public class IdentifierListDeliverer {
public ListIdentifiersType getIdentifierList(String from, String to) throws ParseException{
String identifier;
QueryBuilder queryBuilder = QueryBuilders.rangeQuery("created").from(from).to(to);
QueryBuilder queryBuilder = QueryBuilders.rangeQuery(rangeField).from(from).to(to);
SearchRequestBuilder getListIdentifiersValuesBuilder = oaiEsClient.getOaiESClient()
.prepareSearch(oaiEsClient.getEsIndex())
.setTypes(oaiEsClient.getEsType())
.addFields("textgridUri", "created")
.addFields(identifierListFields)
.setQuery(queryBuilder)
.setSize(10);
......@@ -140,9 +140,7 @@ public class IdentifierListDeliverer {
String[] setParts = set.split(":");
System.out.println(setParts[0] + " " + setParts[1]);
QueryBuilder rangeQuery = QueryBuilders.rangeQuery("created").from(from).to(to);
QueryBuilder rangeQuery = QueryBuilders.rangeQuery(rangeField).from(from).to(to);
QueryBuilder fieldQuer = QueryBuilders.matchPhraseQuery(setParts[0], setParts[1]);
......@@ -151,7 +149,7 @@ public class IdentifierListDeliverer {
SearchRequestBuilder getListIdentifiersValuesBuilder = oaiEsClient.getOaiESClient()
.prepareSearch(oaiEsClient.getEsIndex())
.setTypes(oaiEsClient.getEsType())
.addFields("textgridUri", "created")
.addFields(identifierListFields)
.setQuery(boolQuery)
.setSize(10);
......@@ -217,4 +215,20 @@ public class IdentifierListDeliverer {
public boolean getIdExist(){
return idExist;
}
public String[] getIdentifierListFields() {
return identifierListFields;
}
public void setIdentifierListFields(String[] identifierListFields) {
this.identifierListFields = identifierListFields;
}
public String getFieldForRange() {
return rangeField;
}
public void setFieldForRange(String fieldForRange) {
this.rangeField = fieldForRange;
}
}
......@@ -20,10 +20,6 @@ public class MetadataFormatListDeliverer {
public ListMetadataFormatsType setMetadataFormatList(String id){
/*OAI_ESClient esClient = new OAI_ESClient("10.160.254.106", TGConstants.ES_PORT, "tg-search-es-ws4");
esClient.setEsIndex("textgrid-public-ws4");
esClient.setEsType("metadata");*/
GetRequestBuilder recordById = oaiEsClient.getOaiESClient().prepareGet()
.setIndex(oaiEsClient.getEsIndex())
.setType(oaiEsClient.getEsType())
......
......@@ -47,19 +47,27 @@ public class OAIPMHImpl implements OAIPMHProducer{
private RepIdentification rep;
private RecordListDeliverer recordList;
private RecordDeliverer recDeliv;
private MetadataFormatListDeliverer metadataFormatList;
private SetDeliverer setList;
private IdentifierListDeliverer identifierList;
public OAIPMHImpl(OAI_ESClient oaiEsClient,
RepIdentification rep,
RecordDeliverer recDeliv,
RecordListDeliverer recordList){
RecordListDeliverer recordList,
MetadataFormatListDeliverer metadataFormatList,
SetDeliverer setList,
IdentifierListDeliverer identifierList){
this.oaiEsClient=oaiEsClient;
this.rep = rep;
this.recDeliv = recDeliv;
this.recordList = recordList;
this.metadataFormatList = metadataFormatList;
this.setList = setList;
this.identifierList = identifierList;
}
public OAIPMHImpl(OAI_ESClient oaiEsClient, RepIdentification rep){
......@@ -264,10 +272,10 @@ public class OAIPMHImpl implements OAIPMHProducer{
public JAXBElement<OAIPMHType> listIdentifiersRequest(ObjectFactory obf, OAIPMHType oai, RequestType request) throws ParseException{
List<String> errorValues = new ArrayList<String>();
IdentifierListDeliverer listIdDeliv = new IdentifierListDeliverer(oaiEsClient);
//IdentifierListDeliverer listIdDeliv = new IdentifierListDeliverer(oaiEsClient);
JAXBElement<OAIPMHType> oaipmhRoot = obf.createOAIPMH(oai);
if(listIdDeliv.requestChecker(request)){
if(identifierList.requestChecker(request)){
if(!request.getMetadataPrefix().equals(TGConstants.METADATA_DC_PREFIX)){
try {
......@@ -286,8 +294,8 @@ public class OAIPMHImpl implements OAIPMHProducer{
try {
if(request.getSet()==null){
if(listIdDeliv.getIdentifierList(request.getFrom(), request.getUntil())!=null){
listIDs = listIdDeliv.getIdentifierList(request.getFrom(), request.getUntil());
if(identifierList.getIdentifierList(request.getFrom(), request.getUntil())!=null){
listIDs = identifierList.getIdentifierList(request.getFrom(), request.getUntil());
oai.setListIdentifiers(listIDs);
}else{
error.setError(TGConstants.OAI_NO_RECORD_MATCH).setValue("The combination of the values " + request.getFrom() + " and " +
......@@ -295,8 +303,8 @@ public class OAIPMHImpl implements OAIPMHProducer{
oai.getError().add(error.setError(TGConstants.OAI_NO_RECORD_MATCH));
}
}else{
if(request.getSet()!=null && listIdDeliv.getIdentifierListWithSet(request.getFrom(), request.getUntil(), request.getSet())!=null){
listIDs = listIdDeliv.getIdentifierListWithSet(request.getFrom(), request.getUntil(), request.getSet());
if(request.getSet()!=null && identifierList.getIdentifierListWithSet(request.getFrom(), request.getUntil(), request.getSet())!=null){
listIDs = identifierList.getIdentifierListWithSet(request.getFrom(), request.getUntil(), request.getSet());
oai.setListIdentifiers(listIDs);
}else{
error.setError(TGConstants.OAI_NO_RECORD_MATCH).setValue("The combination of the values " + request.getFrom() + " and " +
......@@ -332,10 +340,10 @@ public class OAIPMHImpl implements OAIPMHProducer{
public JAXBElement<OAIPMHType> listSetsRequest(ObjectFactory obf, OAIPMHType oai, RequestType request){
ListSetsType setList = new ListSetsType();
SetDeliverer sets = new SetDeliverer(oaiEsClient);
//SetDeliverer sets = new SetDeliverer(oaiEsClient);
JAXBElement<OAIPMHType> oaipmhRoot = obf.createOAIPMH(oai);
setList = sets.setListBuilder();
setList = this.setList.setListBuilder();
oai.setListSets(setList);
......@@ -348,15 +356,14 @@ public class OAIPMHImpl implements OAIPMHProducer{
public JAXBElement<OAIPMHType> listMetadataFormatsRequest(String id, ObjectFactory obf, OAIPMHType oai, RequestType request){
List<String> errorValues = new ArrayList<String>();
ListMetadataFormatsType listMF = new ListMetadataFormatsType();
MetadataFormatListDeliverer mfld = new MetadataFormatListDeliverer(oaiEsClient);
JAXBElement<OAIPMHType> oaipmhRoot = obf.createOAIPMH(oai);
if(mfld.requestChecker(request)){
if(metadataFormatList.requestChecker(request)){
if(id.isEmpty()){
listMF = mfld.setMetadataFormatListWithoutId();
listMF = metadataFormatList.setMetadataFormatListWithoutId();
}else {
listMF = mfld.setMetadataFormatList(request.getIdentifier());
listMF = metadataFormatList.setMetadataFormatList(request.getIdentifier());
}
if(listMF!=null){
......
......@@ -54,6 +54,23 @@ public class RecordDeliverer {
private List<String> titles = new ArrayList<String>();
private List<String> types = new ArrayList<String>();
private String[] contributorList;
private String[] coverageList;
private String[] creatorList;
private String[] dateList;
private String[] descriptionList;
private String[] formatList;
private String[] identifierList;
private String[] languageList;
private String[] publisherList;
private String[] relationList;
private String[] relationForWorkList;
private String[] rightList;
private String[] sourceList;
private String[] subjectList;
private String[] titleList;
private String[] typeList;
private static org.apache.commons.logging.Log log = LogFactory.getLog(RecordDeliverer.class);
private RecordType record = new RecordType();
......@@ -159,24 +176,24 @@ public class RecordDeliverer {
}
public void putContentIntoDCFieldLists(GetResponse responseWorkValues, GetResponse responseWorkValues2){
public void putContentIntoDCFieldLists(GetResponse responseWorkValues, GetResponse relatedWorkObject){
contributors = DublinCoreFieldLoader.setContributor(responseWorkValues, TGConstants.CONTRIBUTOR_LIST);
formats = DublinCoreFieldLoader.setFormat(responseWorkValues, TGConstants.FORMAT_LIST);
identifiers = DublinCoreFieldLoader.setIdentifier(responseWorkValues, TGConstants.IDENTIFIER_LIST);
languages = DublinCoreFieldLoader.setLanguage(responseWorkValues, TGConstants.LANGUAGE_LIST);
publishers = DublinCoreFieldLoader.setPublisher(responseWorkValues, TGConstants.PUBLISHER_LIST);
relations = DublinCoreFieldLoader.setRelationForWork(responseWorkValues, TGConstants.RELATIONS_LIST);
rights = DublinCoreFieldLoader.setRights(responseWorkValues, TGConstants.RIGHTS_LIST);
sources = DublinCoreFieldLoader.setSources(responseWorkValues, TGConstants.SOURCE_LIST);
titles = DublinCoreFieldLoader.setTitle(responseWorkValues, TGConstants.TITLE_LIST);
coverages = DublinCoreFieldLoader.setCoverage(responseWorkValues, TGConstants.COVERAGE_LIST);
creators = DublinCoreFieldLoader.setCreator(responseWorkValues2, TGConstants.CREATOR_LIST);
dates = DublinCoreFieldLoader.setDate(responseWorkValues2, TGConstants.DATE_LIST);
descriptions = DublinCoreFieldLoader.setDescription(responseWorkValues2, TGConstants.DESCRIPTION_LIST);
relations = DublinCoreFieldLoader.setRelationForWork(responseWorkValues2, TGConstants.RELATIONS_FOR_WORK_LIST);
subjects = DublinCoreFieldLoader.setSubject(responseWorkValues2, TGConstants.SUBJECT_LIST);
types = DublinCoreFieldLoader.setType(responseWorkValues2, TGConstants.TYPE_LIST);
contributors = DublinCoreFieldLoader.setContributor(responseWorkValues, contributorList);
formats = DublinCoreFieldLoader.setFormat(responseWorkValues, formatList);
identifiers = DublinCoreFieldLoader.setIdentifier(responseWorkValues, identifierList);
languages = DublinCoreFieldLoader.setLanguage(responseWorkValues, languageList);
publishers = DublinCoreFieldLoader.setPublisher(responseWorkValues, publisherList);
relations = DublinCoreFieldLoader.setRelationForWork(responseWorkValues, relationList);
rights = DublinCoreFieldLoader.setRights(responseWorkValues, rightList);
sources = DublinCoreFieldLoader.setSources(responseWorkValues, sourceList);
titles = DublinCoreFieldLoader.setTitle(responseWorkValues, titleList);
coverages = DublinCoreFieldLoader.setCoverage(responseWorkValues, coverageList);
creators = DublinCoreFieldLoader.setCreator(relatedWorkObject, creatorList);
dates = DublinCoreFieldLoader.setDate(relatedWorkObject, dateList);
descriptions = DublinCoreFieldLoader.setDescription(relatedWorkObject, descriptionList);
relations = DublinCoreFieldLoader.setRelationForWork(relatedWorkObject, relationForWorkList);
subjects = DublinCoreFieldLoader.setSubject(relatedWorkObject, subjectList);
types = DublinCoreFieldLoader.setType(relatedWorkObject, typeList);
}
......@@ -205,7 +222,71 @@ public class RecordDeliverer {
dbc.setType(types);
}
public void setContributor(String[] contributorList){
this.contributorList = contributorList;
}
public void setCoverage(String[] coveragesList){
this.coverageList = coveragesList;
}
public void setCreators(String[] creatorsList){
this.creatorList = creatorsList;
}
public void setDates(String[] datesList){
this.dateList = datesList;
}
public void setDescriptions(String[]descriptionsList){
this.descriptionList = descriptionsList;
}
public void setFormats(String[] formatsList){
this.formatList = formatsList;
}
public void setIdentifiers(String[] identifiersList){
this.identifierList = identifiersList;
}
public void setLanguages(String[] languagesList){
this.languageList = languagesList;
}
public void setPublishers(String[] publishersList){
this.publisherList = publishersList;
}
public void setRelations(String[] relationsList){
this.relationList = relationsList;
}
public void setRelationsForWork(String[] relationsList){
this.relationForWorkList = relationsList;
}
public void setRights(String[] rightsList){
this.rightList = rightsList;
}
public void setSources(String[] sourcesList){
this.sourceList = sourcesList;
}
public void setSubjects(String[] subjectsList){
this.subjectList = subjectsList;
}
public void setTitles(String[] titlesList){
this.titleList = titlesList;
}
public void setTypes(String[] typesList){
this.typeList = typesList;
}
/**
* Checking if necessary values are set and not allowed values are not set
* @param request the request from the client
......
......@@ -75,7 +75,25 @@ public class RecordListDeliverer {
private List<String> subjects = new ArrayList<String>();
private List<String> titles = new ArrayList<String>();
private List<String> types = new ArrayList<String>();
private String[] contributorList;
private String[] coverageList;
private String[] creatorList;
private String[] dateList;
private String[] descriptionList;
private String[] formatList;
private String[] identifierList;
private String[] languageList;
private String[] publisherList;
private String[] relationList;
private String[] relationForWorkList;
private String[] rightList;
private String[] sourceList;
private String[] subjectList;
private String[] titleList;
private String[] typeList;
// TODO Make configurable!
//private String aggregatorURL = "http://textgrid-esx2.gwdg.de/1.0/aggregator/teicorpus/";
......@@ -111,9 +129,12 @@ public class RecordListDeliverer {
.setType(esClient.getEsType())
.setId(id)
.setFields(workFields);
System.out.println("halejulja");
GetResponse responseWorkValues = getWorkValues.execute().actionGet();
System.out.println(responseWorkValues.getField("work.genre")
.getValue().toString());
return responseWorkValues;
}
......@@ -169,11 +190,12 @@ public class RecordListDeliverer {
}
if(textgrid == true){
System.out.println("work found");
String workUri = hit.getFields()
.get(TGConstants.EDITION_ISEDITIONOF).values().get(0)
.toString().substring(TGConstants.TG_ITEM_IDENTIFIER_PREFIX
.length());
System.out.println(workUri);
putContentIntoDCFieldLists(hit, furtherDCElements(workUri, oaiEsClient));
}
......@@ -185,24 +207,26 @@ public class RecordListDeliverer {
}
}
public void putContentIntoDCFieldLists(SearchHit hit, GetResponse responseWorkValues){
contributors = DublinCoreFieldLoader.setContributor(hit, TGConstants.CONTRIBUTOR_LIST);
formats = DublinCoreFieldLoader.setFormat(hit, TGConstants.FORMAT_LIST);
identifiers = DublinCoreFieldLoader.setIdentifier(hit, TGConstants.IDENTIFIER_LIST);
languages = DublinCoreFieldLoader.setLanguage(hit, TGConstants.LANGUAGE_LIST);
publishers = DublinCoreFieldLoader.setPublisher(hit, TGConstants.PUBLISHER_LIST);
relations = DublinCoreFieldLoader.setRelation(hit, TGConstants.RELATIONS_LIST);
rights = DublinCoreFieldLoader.setRights(hit, TGConstants.RIGHTS_LIST);
sources = DublinCoreFieldLoader.setSources(hit, TGConstants.SOURCE_LIST);
titles = DublinCoreFieldLoader.setTitle(hit, TGConstants.TITLE_LIST);
coverages = DublinCoreFieldLoader.setCoverage(responseWorkValues, TGConstants.COVERAGE_LIST);
creators = DublinCoreFieldLoader.setCreator(responseWorkValues, TGConstants.CREATOR_LIST);
dates = DublinCoreFieldLoader.setDate(responseWorkValues, TGConstants.DATE_LIST);
descriptions = DublinCoreFieldLoader.setDescription(responseWorkValues, TGConstants.DESCRIPTION_LIST);
relations = DublinCoreFieldLoader.setRelationForWork(responseWorkValues, TGConstants.RELATIONS_FOR_WORK_LIST);
subjects = DublinCoreFieldLoader.setSubject(responseWorkValues, TGConstants.SUBJECT_LIST);
types = DublinCoreFieldLoader.setType(responseWorkValues, TGConstants.TYPE_LIST);
contributors = DublinCoreFieldLoader.setContributor(hit, contributorList);
coverages = DublinCoreFieldLoader.setCoverage(responseWorkValues, coverageList);
creators = DublinCoreFieldLoader.setCreator(responseWorkValues, creatorList);
dates = DublinCoreFieldLoader.setDate(responseWorkValues, dateList);
descriptions = DublinCoreFieldLoader.setDescription(responseWorkValues, descriptionList);
formats = DublinCoreFieldLoader.setFormat(hit, formatList);
identifiers = DublinCoreFieldLoader.setIdentifier(hit, identifierList);
languages = DublinCoreFieldLoader.setLanguage(hit, languageList);
publishers = DublinCoreFieldLoader.setPublisher(hit, publisherList);
relations = DublinCoreFieldLoader.setRelation(hit, relationList);
relations = DublinCoreFieldLoader.setRelationForWork(responseWorkValues, relationForWorkList);
rights = DublinCoreFieldLoader.setRights(hit, rightList);
sources = DublinCoreFieldLoader.setSources(hit, sourceList);
subjects = DublinCoreFieldLoader.setSources(hit, subjectList);
titles = DublinCoreFieldLoader.setTitle(hit, titleList);
types = DublinCoreFieldLoader.setType(responseWorkValues, typeList);
}
......@@ -320,6 +344,70 @@ public class RecordListDeliverer {
this.types.clear();
}
public void setContributor(String[] contributorList){
this.contributorList = contributorList;
}
public void setCoverage(String[] coveragesList){
this.coverageList = coveragesList;
}
public void setCreators(String[] creatorsList){
this.creatorList = creatorsList;
}
public void setDates(String[] datesList){
this.dateList = datesList;
}
public void setDescriptions(String[]descriptionsList){
this.descriptionList = descriptionsList;
}
public void setFormats(String[] formatsList){
this.formatList = formatsList;
}
public void setIdentifiers(String[] identifiersList){
this.identifierList = identifiersList;
}
public void setLanguages(String[] languagesList){
this.languageList = languagesList;
}
public void setPublishers(String[] publishersList){
this.publisherList = publishersList;
}
public void setRelations(String[] relationsList){
this.relationList = relationsList;
}
public void setRelationsForWork(String[] relationsList){
this.relationForWorkList = relationsList;
}
public void setRights(String[] rightsList){
this.rightList = rightsList;
}
public void setSources(String[] sourcesList){
this.sourceList = sourcesList;
}
public void setSubjects(String[] subjectsList){
this.subjectList = subjectsList;
}
public void setTitles(String[] titlesList){
this.titleList = titlesList;
}
public void setTypes(String[] typesList){
this.typeList = typesList;
}
/**
* @param request
* @return
......
......@@ -111,13 +111,8 @@ public final class TGConstants {
public static final String[] SUBJECT_LIST = {WORK_ID};
public static final String[] TITLE_LIST = {TITLE};
public static final String[] TYPE_LIST = {WORK_GENRE, WORK_TYPE};
public static final String[] IDENTIFIER_LIST_FIELDS = {URI, CREATED};
public static final String RANGE_FIELD = CREATED;
}
......@@ -24,18 +24,25 @@ public class OaiPmhTest {
private RepIdentification rep = new RepIdentification("TextGrid-Repository", "www.textgridrep.de", bla, "2011-06-11T02:32:40Z", bla2, "2.0", "textgrid-support@gwdg.de");
private RecordDeliverer record = new RecordDeliverer(oaiEsClient, TGConstants.TGFields, TGConstants.TGWorkFields, true, false);
private RecordListDeliverer recordList = new RecordListDeliverer(oaiEsClient, TGConstants.TGFields, TGConstants.TGWorkFields, true, false);
private MetadataFormatListDeliverer metadataFormatList = new MetadataFormatListDeliverer(oaiEsClient);
private SetDeliverer setList = new SetDeliverer(oaiEsClient);
private IdentifierListDeliverer identifierList = new IdentifierListDeliverer(oaiEsClient);
//private OAIPMHImpl testRequest = new OAIPMHImpl(oaiEsClient, record);
//private OAIPMHImpl repIdentificationTestRequest = new OAIPMHImpl(oaiEsClient, rep);
//private OAIPMHImpl recordListRequest = new OAIPMHImpl(oaiEsClient, recordList);
private OAIPMHImpl request = new OAIPMHImpl(oaiEsClient, rep, record, recordList);
private OAIPMHImpl request = new OAIPMHImpl(
oaiEsClient,
rep,
record,
recordList,
metadataFormatList,
setList,
identifierList);
@BeforeClass
public static void setUp() throws Exception {
oaiEsClient = new OAI_ESClient("localhost", 9302, "esx-1-test-instance");
oaiEsClient = new OAI_ESClient("localhost", 9302, "tg-dev1-test-instance");
oaiEsClient.setEsIndex("textgrid-public");
oaiEsClient.setEsType("metadata");
......@@ -108,7 +115,6 @@ public class OaiPmhTest {
JAXB.marshal(z, System.out);
System.out.println("-----------------------------------\n");
}
@Test
@Ignore
......@@ -124,10 +130,27 @@ public class OaiPmhTest {
@Test
@Ignore
public void testGetRequestGetRecordError2() throws ParseException {
System.out
.println("Test for the verb \"GetRecord\" with succesfull response");
record.setContributor(TGConstants.CONTRIBUTOR_LIST);
record.setCoverage(TGConstants.COVERAGE_LIST);
record.setCreators(TGConstants.CREATOR_LIST);
record.setDates(TGConstants.DATE_LIST);
record.setDescriptions(TGConstants.DESCRIPTION_LIST);
record.setFormats(TGConstants.FORMAT_LIST);
record.setIdentifiers(TGConstants.IDENTIFIER_LIST);
record.setLanguages(TGConstants.LANGUAGE_LIST);
record.setPublishers(TGConstants.PUBLISHER_LIST);
record.setRelations(TGConstants.RELATIONS_LIST);
record.setRelationsForWork(TGConstants.RELATIONS_FOR_WORK_LIST);
record.setRights(TGConstants.RIGHTS_LIST);
record.setSources(TGConstants.SOURCE_LIST);
record.setSubjects(TGConstants.SUBJECT_LIST);
record.setTitles(TGConstants.TITLE_LIST);
record.setTypes(TGConstants.TYPE_LIST);
System.out.println("Test for the verb \"GetRecord\" with succesfull response");
JAXBElement<OAIPMHType> p = request.getRequest("GetRecord",
"wr71.0", "oai_dc", "", "", "", "");
"7t.0", "oai_dc", "", "", "", "");
JAXB.marshal(p, System.out);
System.out.println("-----------------------------------\n");
}
......@@ -174,11 +197,37 @@ public class OaiPmhTest {
System.out); System.out.println("-----------------------------------\n");
}
@Test
@Ignore
public void testListRecords2() throws ParseException{
recordList.setContributor(TGConstants.CONTRIBUTOR_LIST);
recordList.setCoverage(TGConstants.COVERAGE_LIST);
recordList.setCreators(TGConstants.CREATOR_LIST);
recordList.setDates(TGConstants.DATE_LIST);
recordList.setDescriptions(TGConstants.DESCRIPTION_LIST);
recordList.setFormats(TGConstants.FORMAT_LIST);
recordList.setIdentifiers(TGConstants.IDENTIFIER_LIST);
recordList.setLanguages(TGConstants.LANGUAGE_LIST);
recordList.setPublishers(TGConstants.PUBLISHER_LIST);
recordList.setRelations(TGConstants.RELATIONS_LIST);
recordList.setRelationsForWork(TGConstants.RELATIONS_FOR_WORK_LIST);
recordList.setRights(TGConstants.RIGHTS_LIST);
recordList.setSources(TGConstants.SOURCE_LIST);
recordList.setSubjects(TGConstants.SUBJECT_LIST);
recordList.setTitles(TGConstants.TITLE_LIST);
recordList.setTypes(TGConstants.TYPE_LIST);
JAXBElement<OAIPMHType> r = request.getRequest("ListRecords", "",
"oai_dc", "", "", "", ""); JAXB.marshal(r,
System.out); System.out.println("-----------------------------------\n");
}
@Test
@Ignore
public void testListMetadataFormats() throws ParseException{
JAXBElement<OAIPMHType> r = request.getRequest("ListMetadataFormats",
"wr67.0", "", "", "", "", ""); JAXB.marshal(r, System.out);
"7t.0", "", "", "", "", ""); JAXB.marshal(r, System.out);
System.out.println("-----------------------------------\n");
}
......@@ -195,7 +244,9 @@ public class OaiPmhTest {
@Test
@Ignore
public void testListIdentifiers() throws ParseException{
identifierList.setFieldForRange(TGConstants.RANGE_FIELD);
identifierList.setIdentifierListFields(TGConstants.IDENTIFIER_LIST_FIELDS);
JAXBElement<OAIPMHType> r = request.getRequest("ListIdentifiers", "",
"oai_dc", "", "", "", ""); JAXB.marshal(r, System.out);
System.out.println("-----------------------------------\n");
......
......@@ -4,12 +4,12 @@
<parent>
<artifactId>oaipmh</artifactId>
<groupId>info.textgrid.middleware</groupId>
<version>1.3.9-SNAPSHOT</version>
<version>1.3.10-SNAPSHOT</version>
</parent>
<groupId>info.textgrid.middleware</groupId>
<artifactId>oaipmh-webapp</artifactId>
<packaging>war</packaging>
<version>1.3.9-SNAPSHOT</version>
<version>1.3.10-SNAPSHOT</version>
<name>TextGrid :: OAI-PMH :: Webapp</name>
<url>http://maven.apache.org</url>
<profiles>
......
......@@ -74,6 +74,7 @@ http://www.springframework.org/schema/util/spring-util-3.1.xsd
</bean>
<bean id="RecordList" class="info.textgrid.middleware.RecordListDeliverer">
<constructor-arg ref="ElasticSearchClient" />
<constructor-arg index="1">
<value>${fields}</value>
</constructor-arg>
......@@ -86,9 +87,28 @@ http://www.springframework.org/schema/util/spring-util-3.1.xsd
<constructor-arg index="4">
<value>${dariah}</value>
</constructor-arg>
<property name="contributorList" value="${contributorList}" />
<property name="coverageList" value="${coverageList}" />
<property name="creatorList" value="${creatorList}" />
<property name="datesList" value="${datesList}" />
<property name="descriptionsList" value="${descriptionsList}" />
<property name="formatList" value="${formatList}" />
<property name="identifersList" value="${identifersList}" />
<property name="languageList" value="${languageList}" />
<property name="publisherList" value="${publisherList}" />
<property name="relationList" value="${relationList}" />
<property name="relationForWorkList" value="${relationForWorkList}" />
<property name="rightList" value="${rightList}" />
<property name="sourceList" value="${sourceList}" />
<property name="subjectList" value="${subjectList}" />
<property name="titleList" value="${titleList}" />
<property name="typeList" value="${typeList}" />
</bean>
<bean id="Record" class="info.textgrid.middleware.RecordDeliverer">
<constructor-arg ref="ElasticSearchClient" />
<constructor-arg index="1">
<value>${fields}</value>
</constructor-arg>
......@@ -101,8 +121,31 @@ http://www.springframework.org/schema/util/spring-util-3.1.xsd
<constructor-arg index="4">
<value>${dariah}</value>
</constructor-arg>
<property name="contributorList" value="${contributorList}" />
<property name="coverageList" value="${coverageList}" />
<property name="creatorList" value="${creatorList}" />
<property name="datesList" value="${datesList}" />
<property name="descriptionsList" value="${descriptionsList}" />
<property name="formatList" value="${formatList}" />
<property name="identifersList" value="${identifersList}" />
<property name="languageList" value="${languageList}" />
<property name="publisherList" value="${publisherList}" />
<property name="relationList" value="${relationList}" />
<property name="relationForWorkList" value="${relationForWorkList}" />
<property name="rightList" value="${rightList}" />
<property name="sourceList" value="${sourceList}" />
<property name="subjectList" value="${subjectList}" />
<property name="titleList" value="${titleList}" />
<property name="typeList" value="${typeList}" />
</bean>
<bean id="ListIdentifier" class="info.textgrid.middleware.ListIdentifierDeliverer">
<property name="rangeField" value="${rangeField}"/>
<property name="identifierListFields" value="created"></property>
</bean>
<!-- REST Interface -->
<bean id="rest" class="info.textgrid.middleware.Rest" />
......@@ -115,7 +158,9 @@ http://www.springframework.org/schema/util/spring-util-3.1.xsd
<bean id="oai" class="info.textgrid.middleware.OAIPMHImpl">
<constructor-arg ref="ElasticSearchClient" />
<constructor-arg ref="RepIdentification"/>
<constructor-arg ref="RepIdentification"/>
<constructor-arg ref="RecordList"/>
<constructor-arg ref="record"/>
</bean>
......
......@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>info.textgrid.middleware</groupId>
<artifactId>oaipmh</artifactId>
<version>1.3.9-SNAPSHOT</version>
<version>1.3.10-SNAPSHOT</version>
<packaging>pom</packaging>
<name>TextGrid :: TG-OAI-PMH :: Parent</name>
<properties>
......
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