Class SherpaPublisherDataProvider

  • All Implemented Interfaces:
    ExternalDataProvider

    public class SherpaPublisherDataProvider
    extends Object
    implements ExternalDataProvider
    This class is the implementation of the ExternalDataProvider interface that will deal with SherpaPublisher External data lookups
    • Constructor Detail

      • SherpaPublisherDataProvider

        public SherpaPublisherDataProvider()
    • Method Detail

      • getSourceIdentifier

        public String getSourceIdentifier()
        Description copied from interface: ExternalDataProvider
        This method will return the SourceIdentifier for the ExternalDataProvider that implements the interface
        Specified by:
        getSourceIdentifier in interface ExternalDataProvider
        Returns:
        The source identifier as a String
      • getExternalDataObject

        public Optional<ExternalDataObject> getExternalDataObject​(String id)
        Description copied from interface: ExternalDataProvider
        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 ExternalDataObject
        Specified by:
        getExternalDataObject in interface ExternalDataProvider
        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
      • searchExternalDataObjects

        public List<ExternalDataObject> searchExternalDataObjects​(String query,
                                                                  int start,
                                                                  int limit)
        Description copied from interface: ExternalDataProvider
        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 parameters
        Specified by:
        searchExternalDataObjects in interface ExternalDataProvider
        Parameters:
        query - The query for the search
        start - The start of the search
        limit - 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: ExternalDataProvider
        This method will return a boolean indicating whether this ExternalDataProvider can deal with the given source or not
        Specified by:
        supports in interface ExternalDataProvider
        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: ExternalDataProvider
        Returns the total amount of results that this source can return for the given query
        Specified by:
        getNumberOfResults in interface ExternalDataProvider
        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

        public void setSourceIdentifier​(String sourceIdentifier)
        Generic setter for the sourceIdentifier
        Parameters:
        sourceIdentifier - The sourceIdentifier to be set on this SherpaPublisherDataProvider
      • getUrl

        public String getUrl()
        Generic getter for the url
        Returns:
        the url value of this SherpaPublisherDataProvider
      • setUrl

        public void setUrl​(String url)
        Generic setter for the url
        Parameters:
        url - The url to be set on this SherpaPublisherDataProvider
      • getApiKey

        public String getApiKey()
        Generic getter for the apiKey
        Returns:
        the apiKey value of this SherpaPublisherDataProvider
      • setApiKey

        public void setApiKey​(String apiKey)
        Generic setter for the apiKey
        Parameters:
        apiKey - The apiKey to be set on this SherpaPublisherDataProvider