Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Orcid Publications Import Optimization #138

Open
wants to merge 3 commits into
base: develop
Choose a base branch
from

Conversation

betsyecastro
Copy link
Contributor

@betsyecastro betsyecastro commented Jan 26, 2024

Adds architecture changes for publications import

  • Includes the PublicationsRepositoryContract interface and the OrcidPublicationsRepository implementation as a $publicationManager dependency to handle various sources of publications.

  • The getPublication() method obtains multiple publications from the Orcid API in one request.

  • Fetches additional publications information and uses the Publication helper to format the publications in the APA citation style but it was designed to be scalable to allow different citation formats in the future.

  • Feature test includes:

  1. ProfileDataFactory to generate duplicated records for the database and the ORCID API to simulate overlap and test the synchronization process.
  2. ProfileDataFactory to generate authors names for orcid publications in random formats and test the format method defined in the Publications helper.
  3. Partial mock for getPublications() method.

@betsyecastro betsyecastro self-assigned this Jan 26, 2024
@betsyecastro betsyecastro requested review from wunc and removed request for wunc January 31, 2024 16:41
@betsyecastro
Copy link
Contributor Author

Hi @wunc I applied the changes we discussed yesterday and the PR is ready for review.

I will work on the failing security check on a separate branch.

@betsyecastro betsyecastro force-pushed the orcid-data-import-optimization branch from a3389a0 to 761ccf4 Compare March 13, 2024 14:39
Moved the Orcid import process from the Profile model to a new OrcidPublicationsRepository class. This class implements an interface and utilizes the new Publications helper to handle publication formatting methods to return author names in the APA citation format but scalable, to allow the addition of new formatting options.
Includes ProfileDataFactory for publications and authors, publications mock and feature test.
@betsyecastro betsyecastro force-pushed the orcid-data-import-optimization branch from 46131ed to 628400d Compare April 26, 2024 14:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant