Class OpenaireRestConnector

java.lang.Object
org.dspace.external.OpenaireRestConnector

public class OpenaireRestConnector extends Object
based on OrcidRestConnector it's a rest connector for Openaire API providing ways to perform searches and token grabbing
Author:
paulo-graca
  • Constructor Details

    • OpenaireRestConnector

      public OpenaireRestConnector(String url)
  • Method Details

    • grabNewAccessToken

      public OpenaireRestToken grabNewAccessToken() throws IOException
      This method grabs an accessToken an sets the expiration time Based.
      Based on https://develop.openaire.eu/basic.html
      Throws:
      IOException
    • get

      public InputStream get(String file, String accessToken)
      Perform a GET request to the Openaire API
      Parameters:
      file -
      accessToken -
      Returns:
      an InputStream with a Result
    • searchProjectByKeywords

      public eu.openaire.jaxb.model.Response searchProjectByKeywords(int page, int size, String... keywords)
      Perform an Openaire Project Search By Keywords
      Parameters:
      page -
      size -
      keywords -
      Returns:
      Openaire Response
    • searchProjectByIDAndFunder

      public eu.openaire.jaxb.model.Response searchProjectByIDAndFunder(String projectID, String projectFunder, int page, int size)
      Perform an Openaire Project Search By ID and by Funder
      Parameters:
      projectID -
      projectFunder -
      page -
      size -
      Returns:
      Openaire Response
    • search

      public eu.openaire.jaxb.model.Response search(String path, int page, int size)
      Perform an Openaire Search request
      Parameters:
      path -
      page -
      size -
      Returns:
      Openaire Response
    • trimSlashes

      public static String trimSlashes(String path)
      trim slashes from the path
      Parameters:
      path -
      Returns:
      string path without trailing slashes
    • setClientId

      @Autowired(required=false) public void setClientId(String clientId)
      stores clientId to grab the token
      Parameters:
      clientId -
    • setTokenServiceUrl

      @Autowired(required=false) public void setTokenServiceUrl(String tokenServiceUrl)
      stores tokenServiceUrl to grab the token
      Parameters:
      tokenServiceUrl -
    • setClientSecret

      @Autowired(required=false) public void setClientSecret(String clientSecret)
      stores clientSecret to grab the token
      Parameters:
      clientSecret -
    • setTokenEnabled

      @Autowired(required=false) public void setTokenEnabled(boolean tokenEnabled)
      tokenUsage true to enable the usage of an access token
      Parameters:
      tokenEnabled - true/false
    • getGotError

      protected void getGotError(Exception e, String fullPath)