-
Notifications
You must be signed in to change notification settings - Fork 531
IQSS/8914 COAR compliant LDN messaging #10490
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
IQSS/8914 COAR compliant LDN messaging #10490
Conversation
GDCC/8914-COAR-compliant_messaging
|
Note: A v.1.0.0 version of the COAR Notify specification has just been released - see https://coar-notify.net/2024/significant-revision-to-specification/. This PR has not yet been checked to make sure it is consistent with the changes in this release. |
pdurbin
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for making the changes I suggested. Approved.
GDCC/8914-COAR-compliant_messaging_orig
|
@qqmyers Please resolve the conflicts |
GDCC/8914-COAR-compliant_messaging_orig
|
I'm also seeing a lot of these in the log 6.2025.3|edu.harvard.iq.dataverse.api.LDNInbox|_ThreadID=240;_ThreadName=http-thread-pool::http-listener-1(7);_TimeMillis=1763736091927;_LevelValue=1000;| Ignoring message from IP address: 178.128.69.202|#] |
|
LDNInboxIT is not included in tests/integration-tests.txt which explains why there were no failures in the pipeline tests |
What this PR does / why we need it: This PR updates our COAR LDN messaging to be compliant with the final specification and improves/updates the code in various ways now that several sites will be deploying it.
Which issue(s) this PR closes:
Special notes for your reviewer: In testing, I found that the TDL dev server was failing to show the notifications page due to the JSONUtil.getJsonObject(String) method being overloaded by the JSONUtil.getJsonObject(InputStream) method - the log was showing a problem converting the input string to an InputStream. The PR includes a change to make the stream version getJsonObjectFromInputStream() to avoid this.
Suggestions on how to test this: This has been tested against the Harvard DASH test repository and with TDL's DSpace test instance. The code includes IT tests related to receiving and parsing messages. It is possible to manually replicate those tests by sending the appropriate JSON to the /api/inbox endpoint.
Turning on fine logging for the various classes (LDN Inbox, COARNotificationRelationshipAnnouncement, COARNotificationRelationshipAnnouncementStep) will show what messages are being received or sent in the server.log
Does this PR introduce a user interface change? If mockups are available, please link/include them here:
Is there a release notes update needed for this change?: included
Additional documentation: included