-
Notifications
You must be signed in to change notification settings - Fork 490
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
add Private URL feature #3111
add Private URL feature #3111
Conversation
Requires scripts/database/upgrades/privateurl.sql Design doc at doc/Architecture/privateurl.md New API endpoints: doc/sphinx-guides/source/api/native-api.rst
The merging of several pull requests yesterday has resulted in the message, "This branch has conflicts that must be resolved." I'm stealing this pull request back to resolve merge conflicts.
|
Conflicts with #3108 (3089-jsoup): src/main/java/edu/harvard/iq/dataverse/ManagePermissionsPage.java src/main/java/edu/harvard/iq/dataverse/RolePermissionFragment.java - All AssignRoleCommand constructors need privateUrlToken parameter.
I just merged "develop" into the branch this pull request is based on and resolved merge conflicts in dd6ceb1 which has details (nothing big). Passing to QA. |
passing to Gustavo for code review |
@scolapasta here's a comment from @michbarsinai 'Little nitpicking regarding the comment at line 37 - ":" means "built-in" rather than "user". E.g. :authenticated-users. I'm also leaning towards using some other character, maybe "#"? In fact, even "P" will do.' |
- Merged 313317a from develop into dd6ceb1 - Use UtilIt.grantRoleOnDataverse from develop. - Add Javadoc `throws` warning to RoleAssigneeServiceBean.getRoleAssignee - Check for null and empty string in getRoleAssignee - Catch EJBException in AbstractApiBean.findAssign Conflicts: - src/main/java/edu/harvard/iq/dataverse/RoleAssigneeServiceBean.java - src/test/java/edu/harvard/iq/dataverse/api/UtilIT.java
@scolapasta I need a ruling on the two proposed fixes described at #3200 (comment) so I'm assigning this pull request to you for code review. |
@scolapasta and @michbarsinai blessed the fix at 24df280 so I merged it into this pull request. Passing to QA. |
First, please read the Business Requirements Document (BRD): https://docs.google.com/document/d/1FT47QkZKcmjSgRnePaJO2g1nzcotLyN3Yb2ORvBr6cs/edit?usp=sharing
Then, please read the Private URL design document, which explains edge cases and expected behavior: https://github.com/IQSS/dataverse/blob/b62959884ad8deb06a7135e485517672eb3c6fdf/doc/Architecture/privateurl.md
Four API endpoints have been added and documented at https://github.com/IQSS/dataverse/blob/b62959884ad8deb06a7135e485517672eb3c6fdf/doc/sphinx-guides/source/api/native-api.rst and they should be tested along with the more GUI-oriented descriptions above:
In order to deploy this code you must run the sql script provided: https://github.com/IQSS/dataverse/blob/b62959884ad8deb06a7135e485517672eb3c6fdf/scripts/database/upgrades/privateurl.sql
@posixeleni has been waiting for me to create a branch in the main repo before documenting the Private URL feature in the User Guide so please pass the pull request to her after testing is complete. Update: this was done in #3138.
@scolapasta @michbarsinai I'm still wondering if we should use a ":" or not in the RoleAssignee identifier. Please see my comments and javadoc at
dataverse/src/main/java/edu/harvard/iq/dataverse/privateurl/PrivateUrlUtil.java
Line 27 in 9480a63
@scolapasta once you have decided which version this feature will land in, we need to add the content of
privateurl.sql
to the official database migration script for that release. It's my understanding that the Private URL feature is slated for 4.5. Thanks, @kcondon for reminding me of this task. Update: this was done in 95570c7RFI Checklist
1. Related Issues
2. Pull Request Checklist
3. Review Checklist
After the pull request has been submitted, fill out this section.
Requires scripts/database/upgrades/privateurl.sql
Design doc at doc/Architecture/privateurl.md
New API endpoints: doc/sphinx-guides/source/api/native-api.rst