Class SHERPAv2JournalDataProvider
- java.lang.Object
-
- org.dspace.external.provider.AbstractExternalDataProvider
-
- org.dspace.external.provider.impl.SHERPAv2JournalDataProvider
-
- All Implemented Interfaces:
ExternalDataProvider
public class SHERPAv2JournalDataProvider extends AbstractExternalDataProvider
This class is the implementation of the ExternalDataProvider interface that will deal with SherpaJournal External data lookups. This provider is a refactored version of SherpaJournalDataPublisher, rewritten to work with SHERPA v2 API- Author:
- Kim Shepherd
-
-
Constructor Summary
Constructors Constructor Description SHERPAv2JournalDataProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Optional<ExternalDataObject>getExternalDataObject(String id)Get a single journal based on a "title equals string" queryintgetNumberOfResults(String query)Get number of results returned from a SHERPA v2 publication searchStringgetSourceIdentifier()This method will return the SourceIdentifier for the ExternalDataProvider that implements the interfacevoidinit()Initialise the client that we need to call the endpointList<ExternalDataObject>searchExternalDataObjects(String query, int start, int limit)Search SHERPA v2 API for journal results based on a 'contains word' queryvoidsetSherpaService(SHERPAService sherpaService)Generic setter for the SHERPA servicevoidsetSourceIdentifier(String sourceIdentifier)Generic setter for the sourceIdentifierbooleansupports(String source)This method will return a boolean indicating whether this ExternalDataProvider can deal with the given source or not-
Methods inherited from class org.dspace.external.provider.AbstractExternalDataProvider
getSupportedEntityTypes, setSupportedEntityTypes, supportsEntityType
-
-
-
-
Method Detail
-
getSourceIdentifier
public String getSourceIdentifier()
Description copied from interface:ExternalDataProviderThis method will return the SourceIdentifier for the ExternalDataProvider that implements the interface- Returns:
- The source identifier as a String
-
init
public void init() throws IOExceptionInitialise the client that we need to call the endpoint- Throws:
IOException- If something goes wrong
-
getExternalDataObject
public Optional<ExternalDataObject> getExternalDataObject(String id)
Get a single journal based on a "title equals string" query- Parameters:
id- The journal title which will be used as query string- Returns:
- external data object representing journal
-
searchExternalDataObjects
public List<ExternalDataObject> searchExternalDataObjects(String query, int start, int limit)
Search SHERPA v2 API for journal results based on a 'contains word' query- Parameters:
query- The query for the searchstart- The start of the searchlimit- The max amount of records to be returned by the search- Returns:
- a list of external data objects
-
supports
public boolean supports(String source)
Description copied from interface:ExternalDataProviderThis method will return a boolean indicating whether this ExternalDataProvider can deal with the given source or not- Parameters:
source- The source on which the check needs to be done- Returns:
- A boolean indicating whether this ExternalDataProvider can deal with this source or not
-
getNumberOfResults
public int getNumberOfResults(String query)
Get number of results returned from a SHERPA v2 publication search- Parameters:
query- The query to be search on and give the total amount of results- Returns:
- int representing number of journal results
-
setSourceIdentifier
public void setSourceIdentifier(String sourceIdentifier)
Generic setter for the sourceIdentifier- Parameters:
sourceIdentifier- The sourceIdentifier to be set on this SHERPAv2JournalDataProvider
-
setSherpaService
public void setSherpaService(SHERPAService sherpaService)
Generic setter for the SHERPA service- Parameters:
sherpaService- The sherpaService to be set on this SHERPAv2JournalDataProvider
-
-