use of an enum

This commit is contained in:
Michele Artini 2024-01-30 12:46:06 +01:00
parent 25703c9263
commit 9718799731
8 changed files with 26 additions and 40 deletions

View File

@ -18,6 +18,12 @@
<artifactId>dnet-db-common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>dnet-oai-common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>

View File

@ -23,16 +23,16 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import eu.dnetlib.common.oai.OaiVerb;
import eu.dnetlib.domain.oai.ExportedOaiMetadataFormat;
import eu.dnetlib.domain.oai.ExportedOaiRecord;
import eu.dnetlib.domain.oai.ExportedOaiSet;
import eu.dnetlib.domain.oai.OaiConfiguration;
import eu.dnetlib.domain.oai.OaiMetadataFormat;
import eu.dnetlib.errors.DnetRuntimeException;
import eu.dnetlib.services.oai.domain.OaiPage;
import eu.dnetlib.services.oai.service.OaiService;
import eu.dnetlib.services.oai.utils.OaiError;
import eu.dnetlib.services.oai.utils.OaiVerb;
import eu.dnetlib.services.oai.utils.OaiPage;
import eu.dnetlib.utils.DateUtils;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

View File

@ -19,11 +19,11 @@ import eu.dnetlib.domain.oai.ExportedOaiRecord;
import eu.dnetlib.domain.oai.ExportedOaiSet;
import eu.dnetlib.domain.oai.OaiConfiguration;
import eu.dnetlib.errors.DnetRuntimeException;
import eu.dnetlib.services.oai.domain.OaiPage;
import eu.dnetlib.services.oai.repository.ExportedOaiMetadataFormatRepository;
import eu.dnetlib.services.oai.repository.OaiConfigurationRepository;
import eu.dnetlib.services.oai.repository.OaiRecordRepository;
import eu.dnetlib.services.oai.repository.OaiSetRepository;
import eu.dnetlib.services.oai.utils.OaiPage;
import eu.dnetlib.services.oai.utils.OaiPageRequest;
import eu.dnetlib.utils.DateUtils;

View File

@ -1,4 +1,4 @@
package eu.dnetlib.services.oai.domain;
package eu.dnetlib.services.oai.utils;
import java.io.Serializable;
import java.util.List;

View File

@ -163,15 +163,7 @@ public class OaiClient {
res.setSize(doc.selectNodes("//*[local-name()='" + req.getVerb() + "']/*[local-name() != 'resumptionToken']").size());
res.setCursor(NumberUtils.toInt(node.valueOf("@cursor"), -1));
res.setTotal(NumberUtils.toInt(node.valueOf("@completeListSize"), -1));
if (OaiRequest.LISTSETS.equals(req.getVerb())) {
res.setNextCall(OaiRequest.newListSetsWithToken(req.getBaseUrl(), node.getText()));
} else if (OaiRequest.LISTIDENTIFIERS.equals(req.getVerb())) {
res.setNextCall(OaiRequest.newListIdentifiersWithToken(req.getBaseUrl(), node.getText()));
} else if (OaiRequest.LISTRECORDS.equals(req.getVerb())) {
res.setNextCall(OaiRequest.newListRecordsWithToken(req.getBaseUrl(), node.getText()));
}
res.setResumptionToken(node.getText());
}
res.setBody(processBody.apply(doc));
res.setValid(true);

View File

@ -7,18 +7,6 @@ import org.apache.commons.lang3.StringUtils;
public class OaiRequest {
public static final String GETRECORD = "GetRecord";
public static final String LISTIDENTIFIERS = "ListIdentifiers";
public static final String LISTRECORDS = "ListRecords";
public static final String LISTSETS = "ListSets";
public static final String LISTMETADATAFORMATS = "ListMetadataFormats";
public static final String IDENTIFY = "Identify";
private final String baseUrl;
private final String verb;
private final String mdf;
@ -27,39 +15,39 @@ public class OaiRequest {
private final String token;
public static OaiRequest newIdentify(final String baseUrl) {
return new OaiRequest(baseUrl, IDENTIFY, null, null, null, null);
return new OaiRequest(baseUrl, OaiVerb.IDENTIFY.getVerb(), null, null, null, null);
}
public static OaiRequest newListMetadataFormats(final String baseUrl) {
return new OaiRequest(baseUrl, LISTMETADATAFORMATS, null, null, null, null);
return new OaiRequest(baseUrl, OaiVerb.LIST_METADATA_FORMATS.getVerb(), null, null, null, null);
}
public static OaiRequest newListSets(final String baseUrl) {
return new OaiRequest(baseUrl, LISTSETS, null, null, null, null);
return new OaiRequest(baseUrl, OaiVerb.LIST_SETS.getVerb(), null, null, null, null);
}
public static OaiRequest newListSetsWithToken(final String baseUrl, final String reusumptionToken) {
return new OaiRequest(baseUrl, LISTSETS, null, null, null, reusumptionToken);
return new OaiRequest(baseUrl, OaiVerb.LIST_SETS.getVerb(), null, null, null, reusumptionToken);
}
public static OaiRequest newListRecords(final String baseUrl, final String mdPrefix, final String set) {
return new OaiRequest(baseUrl, LISTRECORDS, mdPrefix, set, null, null);
return new OaiRequest(baseUrl, OaiVerb.LIST_RECORDS.getVerb(), mdPrefix, set, null, null);
}
public static OaiRequest newListRecordsWithToken(final String baseUrl, final String reusumptionToken) {
return new OaiRequest(baseUrl, LISTRECORDS, null, null, null, reusumptionToken);
return new OaiRequest(baseUrl, OaiVerb.LIST_RECORDS.getVerb(), null, null, null, reusumptionToken);
}
public static OaiRequest newListIdentifiers(final String baseUrl, final String mdPrefix, final String set) {
return new OaiRequest(baseUrl, LISTIDENTIFIERS, mdPrefix, set, null, null);
return new OaiRequest(baseUrl, OaiVerb.LIST_IDENTIFIERS.getVerb(), mdPrefix, set, null, null);
}
public static OaiRequest newListIdentifiersWithToken(final String baseUrl, final String reusumptionToken) {
return new OaiRequest(baseUrl, LISTIDENTIFIERS, null, null, null, reusumptionToken);
return new OaiRequest(baseUrl, OaiVerb.LIST_IDENTIFIERS.getVerb(), null, null, null, reusumptionToken);
}
public static OaiRequest newGetRecord(final String baseUrl, final String mdPrefix, final String id) {
return new OaiRequest(baseUrl, GETRECORD, mdPrefix, null, id, null);
return new OaiRequest(baseUrl, OaiVerb.GET_RECORD.getVerb(), mdPrefix, null, id, null);
}
private OaiRequest(final String baseUrl, final String verb, final String mdf, final String set, final String id, final String token) {

View File

@ -14,7 +14,7 @@ public class OaiResponse<T> implements Serializable {
private int cursor;
private int total;
private T body;
private OaiRequest nextCall;
private String resumptionToken;
public String getVerb() {
return this.verb;
@ -88,12 +88,12 @@ public class OaiResponse<T> implements Serializable {
this.body = body;
}
public OaiRequest getNextCall() {
return this.nextCall;
public String getResumptionToken() {
return this.resumptionToken;
}
public void setNextCall(final OaiRequest nextCall) {
this.nextCall = nextCall;
public void setResumptionToken(final String resumptionToken) {
this.resumptionToken = resumptionToken;
}
}

View File

@ -1,4 +1,4 @@
package eu.dnetlib.services.oai.utils;
package eu.dnetlib.common.oai;
import org.apache.commons.lang3.StringUtils;