Class OrcidV3AuthorDataProvider
- java.lang.Object
-
- org.dspace.external.provider.AbstractExternalDataProvider
-
- org.dspace.external.provider.impl.OrcidV3AuthorDataProvider
-
- All Implemented Interfaces:
ExternalDataProvider
public class OrcidV3AuthorDataProvider extends AbstractExternalDataProvider
This class is the implementation of the ExternalDataProvider interface that will deal with the OrcidV3 External Data lookup
-
-
Field Summary
Fields Modifier and Type Field Description static StringORCID_ID_SYNTAX
-
Constructor Summary
Constructors Constructor Description OrcidV3AuthorDataProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ExternalDataObjectconvertToExternalDataObject(org.orcid.jaxb.model.v3.release.record.Person person)org.orcid.jaxb.model.v3.release.record.PersongetBio(String id)Retrieve a Person object based on a given orcid identifier.Optional<ExternalDataObject>getExternalDataObject(String id)This method will take a String id as a parameter and it'll call the ExternalDataProvider's endpoint or data source to retrieve and build the ExternalDataObjectintgetNumberOfResults(String query)Returns the total amount of results that this source can return for the given queryOrcidRestConnectorgetOrcidRestConnector()StringgetOrcidUrl()Generic getter for the orcidUrlStringgetSourceIdentifier()This method will return the SourceIdentifier for the ExternalDataProvider that implements the interfacevoidinit()Initialize the accessToken that is required for all subsequent calls to ORCID.List<ExternalDataObject>searchExternalDataObjects(String query, int start, int limit)This method will query the ExternalDataProvider's endpoint or data source to retrieve and build a list of ExternalDataObjects through a search with the given parametersvoidsetClientId(String clientId)Generic setter for the clientIdvoidsetClientSecret(String clientSecret)Generic setter for the clientSecretvoidsetOAUTHUrl(String OAUTHUrl)Generic setter for the OAUTHUrlvoidsetOrcidRestConnector(OrcidRestConnector orcidRestConnector)voidsetOrcidUrl(String orcidUrl)Generic setter for the orcidUrlvoidsetSourceIdentifier(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
-
-
-
-
Field Detail
-
ORCID_ID_SYNTAX
public static final String ORCID_ID_SYNTAX
- See Also:
- Constant Field Values
-
-
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 IOExceptionInitialize the accessToken that is required for all subsequent calls to ORCID.- Throws:
IOException- passed through from HTTPclient.
-
getExternalDataObject
public Optional<ExternalDataObject> getExternalDataObject(String id)
Description copied from interface:ExternalDataProviderThis method will take a String id as a parameter and it'll call the ExternalDataProvider's endpoint or data source to retrieve and build the ExternalDataObject- Parameters:
id- The id on which will be searched- Returns:
- An Optional object of ExternalDataObject. This is to indicate that this object may be null. This ExternalDataObject will return all the data returned by the ExternalDataProvider
-
convertToExternalDataObject
protected ExternalDataObject convertToExternalDataObject(org.orcid.jaxb.model.v3.release.record.Person person)
-
getBio
public org.orcid.jaxb.model.v3.release.record.Person getBio(String id)
Retrieve a Person object based on a given orcid identifier.- Parameters:
id- orcid identifier- Returns:
- Person
-
searchExternalDataObjects
public List<ExternalDataObject> searchExternalDataObjects(String query, int start, int limit)
Description copied from interface:ExternalDataProviderThis method will query the ExternalDataProvider's endpoint or data source to retrieve and build a list of ExternalDataObjects through a search with the given parameters- 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 ExternalDataObjects that were retrieved and built by this search
-
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)
Description copied from interface:ExternalDataProviderReturns the total amount of results that this source can return for the given query- Parameters:
query- The query to be search on and give the total amount of results- Returns:
- The total amount of results that the source can return for the given query
-
setSourceIdentifier
@Autowired(required=true) public void setSourceIdentifier(String sourceIdentifier)
Generic setter for the sourceIdentifier- Parameters:
sourceIdentifier- The sourceIdentifier to be set on this OrcidV3AuthorDataProvider
-
getOrcidUrl
public String getOrcidUrl()
Generic getter for the orcidUrl- Returns:
- the orcidUrl value of this OrcidV3AuthorDataProvider
-
setOrcidUrl
@Autowired(required=true) public void setOrcidUrl(String orcidUrl)
Generic setter for the orcidUrl- Parameters:
orcidUrl- The orcidUrl to be set on this OrcidV3AuthorDataProvider
-
setOAUTHUrl
public void setOAUTHUrl(String OAUTHUrl)
Generic setter for the OAUTHUrl- Parameters:
OAUTHUrl- The OAUTHUrl to be set on this OrcidV3AuthorDataProvider
-
setClientId
public void setClientId(String clientId)
Generic setter for the clientId- Parameters:
clientId- The clientId to be set on this OrcidV3AuthorDataProvider
-
setClientSecret
public void setClientSecret(String clientSecret)
Generic setter for the clientSecret- Parameters:
clientSecret- The clientSecret to be set on this OrcidV3AuthorDataProvider
-
getOrcidRestConnector
public OrcidRestConnector getOrcidRestConnector()
-
setOrcidRestConnector
public void setOrcidRestConnector(OrcidRestConnector orcidRestConnector)
-
-