Skip to content

v1.0.0

Compare
Choose a tag to compare
@khandramai khandramai released this 28 Nov 08:28
· 210 commits to master since this release
  • Initial commit (EDGOAIPMH-2)
  • Module/Deployment Descriptors added in scope of EDGOAIPMH-5
  • In scope of EDGOAIPMH-4 added:
  • POJO binding generation of OAI-PMH.xsd added in scope of EDGOAIPMH-7
  • Initial implementation
    • To access the OAI-PMH repository the apiKey is required which might be provided as part of the URI path, apikey parameter or Authorization header. Please refer to Security section of the the edge-common documentation for the details.
    • The endpoint depends on authorization mechanism chosen. GET or POST requests are supported. Please refer to edge-oai-pmh.raml for more details.
    • Once the request is received, the flow is following:
      1. The request is being validated if it valid according to OAI-PMH specification. If some parameters are missing or invalid, the OAI-PMH response with errors is sent back to harvester with 400 http status code.
      2. The apiKey is being validated. In case it is missing or invalid, the response with error and 401 http status code is sent back to caller. If the apiKey of valid structure, the service tries to login to FOLIO system. If something is wrong, the response with error is sent back to caller with 403 or 408 http status code.
      3. The request is sent to repository business logic. If something is wrong, the response with error is sent back to caller with 408 or 500 http status code. If all is okay, the OAI-PMH response is being sent to caller with 200, 400, 404 or 422 http status code.
  • In scope of the EDGCOMMON-8 support of the compression is added. By default it is disabled and can be activated by corresponding VM option. The gzip and deflate compressions supported.
  • EDGOAIPMH-24: added the ability to specify the API key on the path, e.g. GET /oai/<apiKey>?verb=... and POST /oai/<apiKey>?verb=.... This will allow testing of incomplete responses/resumptionTokens via the marcEdit OAI-PMH harvester. You can also specify the API Key via the Authorization header or the apikey (case sensitive) query argument. See Edge-Common for details.