Push SELECTED (MY_SELECTED) and not hidden (MINE) Publications settings to some person orcid profile. The items are determined through the regarding relationshiptypes which allows the user to hide/show the publications on certain relation boxes.
Instructions for Reviewers
List of changes in this PR:
Change OrcidQueueService to check the settings of the user
If the item passes the rules for MINE or MY_SELECTED options is is added to the orcid queue.
If the queue is recalculated because the sync options change, it also considers MINE and MY_SELECTED options for the new calculated queue.
orcid.cfg: additional properties to determine the Relationship which handle the sync preference. The name of the leftwardType is being used as the value, e.g.
Some additional .exclusion configuration is used when the relation should not exist (e.g. show not publications which are hidden) and adds some negation to the solr filter/check for the relations.
Pass through context for the service where necessary
Extended orcidqueueconsumer to delete existing orcidqueue entries when the entry isAlreadyQueued. Some new method was introduced which uses the relationshipService to determine, if the relation was removed/added and the orcid sync settings (MINE/MY_SELECTED) are not in sync. In this cases the orcidqueue entry is deleted.
Include guidance for how to test or review your PR.
Set up some basic settings (profile connected with orcid, profile user author of some publications)
set up selected or hidden relationship (isResearchoutputsHiddenFor etc...) between person and publications
Recalculate the queue on the profile orcid page for the settings.
add some selected relationship and remove another selected relationship and see whether the orcid queue recalculates.
This checklist provides a reminder of what we are going to look for when reviewing your PR. You need not complete this checklist prior to creating your PR (draft PRs are always welcome). If you are unsure about an item in the checklist, don't hesitate to ask. We're here to help!
[ ] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & integration tests). Exceptions may be made if previously agreed upon.
[x] My PR passes Checkstyle validation based on the Code Style Guide.
[ ] My PR includes Javadoc for all new (or modified) public methods and classes. It also includes Javadoc for large or complex private methods.
[ ] My PR passes all tests and includes new/updated Unit or Integration Tests based on the Code Testing Guide.
[ ] If my PR includes new libraries/dependencies (in any pom.xml), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.
[ ] If my PR modifies REST API endpoints, I've opened a separate REST Contract PR related to this change.
[x] If my PR includes new configurations, I've provided basic technical documentation in the PR itself.
References
Description
Push SELECTED (MY_SELECTED) and not hidden (MINE) Publications settings to some person orcid profile. The items are determined through the regarding relationshiptypes which allows the user to hide/show the publications on certain relation boxes.
Instructions for Reviewers
List of changes in this PR:
Change OrcidQueueService to check the settings of the user
If the item passes the rules for MINE or MY_SELECTED options is is added to the orcid queue.
If the queue is recalculated because the sync options change, it also considers MINE and MY_SELECTED options for the new calculated queue.
orcid.cfg: additional properties to determine the Relationship which handle the sync preference. The name of the leftwardType is being used as the value, e.g.
Some additional
.exclusion
configuration is used when the relation should not exist (e.g. show not publications which are hidden) and adds some negation to the solr filter/check for the relations.Pass through context for the service where necessary
Extended orcidqueueconsumer to delete existing orcidqueue entries when the entry
isAlreadyQueued
. Some new method was introduced which uses the relationshipService to determine, if the relation was removed/added and the orcid sync settings (MINE/MY_SELECTED) are not in sync. In this cases the orcidqueue entry is deleted.Include guidance for how to test or review your PR.
Counterpart: https://github.com/4Science/dspace-angular/pull/38
Checklist
This checklist provides a reminder of what we are going to look for when reviewing your PR. You need not complete this checklist prior to creating your PR (draft PRs are always welcome). If you are unsure about an item in the checklist, don't hesitate to ask. We're here to help!
pom.xml
), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.