UFAL/Cherrypick feature for editing actual dspace config files#1108
Merged
milanmajchrak merged 25 commits intodtq-devfrom Jan 13, 2026
Merged
Conversation
* Added czech email templates * Updated some translations --------- Co-authored-by: Matus Kasak <matus.kasak@dataquest.sk>
…#1097) * Created feature for editing actual dspace configuration files * Fixed Doc and removed unused class * Fixed unit tests
There was a problem hiding this comment.
Pull Request Overview
Cherry-picks a feature to enable editing of selected DSpace configuration files via an admin-only REST API, and adds Czech email templates.
- Adds a ConfigFileService with validation, backup, and read/write operations, and exposes it via new REST endpoints under /api/admin/configfiles.
- Introduces integration and unit tests for the new service and controller.
- Adds multiple Czech-language email templates and a new property in dspace.cfg to whitelist updateable config files.
Reviewed Changes
Copilot reviewed 27 out of 27 changed files in this pull request and generated 9 comments.
Show a summary per file
| File | Description |
|---|---|
| dspace/config/emails/welcome_cs | New Czech welcome email template. |
| dspace/config/emails/share_submission_cs | New Czech share-submission email template. |
| dspace/config/emails/request_item.rejected_cs | New Czech request-item rejected email template. |
| dspace/config/emails/request_item.granted_cs | New Czech request-item granted email template. |
| dspace/config/emails/request_item.admin_cs | New Czech admin notification for open access request. |
| dspace/config/emails/healthcheck_cs | New Czech healthcheck email template. |
| dspace/config/emails/doi_maintenance_error_cs | New Czech DOI maintenance error email template. |
| dspace/config/emails/clarin_download_link_cs | New Czech download link email template. |
| dspace/config/emails/clarin_download_link_admin_cs | New Czech admin notification for download request. |
| dspace/config/emails/clarin_autoregistration_cs | New Czech auto-registration confirmation email template. |
| dspace/config/emails/batch_import_success_cs | New Czech batch import success email template. |
| dspace/config/emails/batch_import_error_cs | New Czech batch import error email template. |
| dspace/config/dspace.cfg | Adds ORCID feature include and whitelist of updateable files. |
| dspace-server-webapp/src/test/java/org/dspace/app/rest/ConfigFileRestControllerIT.java | Integration tests for config files REST endpoints. |
| dspace-server-webapp/src/main/java/org/dspace/app/rest/model/hateoas/ConfigFileResource.java | HAL resource wrapper for ConfigFileRest. |
| dspace-server-webapp/src/main/java/org/dspace/app/rest/model/ConfigFileRest.java | REST model for config file metadata. |
| dspace-server-webapp/src/main/java/org/dspace/app/rest/exception/*.java | REST-layer exception types (annotated with @ResponseStatus). |
| dspace-server-webapp/src/main/java/org/dspace/app/rest/converter/ConfigFileConverter.java | Converter from model to HAL resource. |
| dspace-server-webapp/src/main/java/org/dspace/app/rest/ConfigFileRestController.java | Admin REST controller for listing, reading, and updating config files. |
| dspace-api/src/test/java/org/dspace/app/configuration/service/ConfigFileServiceImplTest.java | Unit tests for ConfigFileServiceImpl. |
| dspace-api/src/main/java/org/dspace/app/configuration/service/ConfigFileServiceImpl.java | Service implementation for config file operations with validation and backups. |
| dspace-api/src/main/java/org/dspace/app/configuration/service/ConfigFileService.java | Service interface and metadata container. |
| dspace-api/src/main/java/org/dspace/app/configuration/exception/*.java | Service-layer exception types. |
Comments suppressed due to low confidence (3)
dspace/config/emails/doi_maintenance_error_cs:1
- The subject uses ${params[3]} (resource id) where the parameters specify {4} as the DOI; replace ${params[3]} with ${params[4]} to include the DOI in the subject.
## E-mail sent to designated address when a metadata update, registration
dspace/config/emails/clarin_download_link_cs:1
- The header documents {4} as helpdesk phone number, but the template reads the phone from configuration instead of params[4]. Either use ${params[4]} or update the parameter documentation to reflect that the phone is sourced from configuration.
## E-mail with a download link
dspace/config/emails/clarin_autoregistration_cs:1
- The header documents {2} as helpdesk phone number, but the template pulls the phone from configuration. Either switch to ${params[2]} or adjust the documented parameters for accuracy.
## E-mail sent to confirm authenticity of the user's e-mail.
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
dspace-server-webapp/src/main/java/org/dspace/app/rest/ConfigFileRestController.java
Show resolved
Hide resolved
dspace-server-webapp/src/main/java/org/dspace/app/rest/ConfigFileRestController.java
Show resolved
Hide resolved
dspace-server-webapp/src/main/java/org/dspace/app/rest/ConfigFileRestController.java
Show resolved
Hide resolved
dspace-server-webapp/src/main/java/org/dspace/app/rest/ConfigFileRestController.java
Show resolved
Hide resolved
dspace-api/src/main/java/org/dspace/app/configuration/service/ConfigFileServiceImpl.java
Outdated
Show resolved
Hide resolved
dspace-server-webapp/src/test/java/org/dspace/app/rest/ConfigFileRestControllerIT.java
Show resolved
Hide resolved
dspace-server-webapp/src/test/java/org/dspace/app/rest/ConfigFileRestControllerIT.java
Show resolved
Hide resolved
dspace-server-webapp/src/main/java/org/dspace/app/rest/model/ConfigFileRest.java
Outdated
Show resolved
Hide resolved
milanmajchrak
requested changes
Nov 4, 2025
Collaborator
milanmajchrak
left a comment
There was a problem hiding this comment.
- Copilot
- Checks are red
…ead of parsing error messages
… - expecting null/-1 but setting auth0/0. Production code correctly uses provided values when authority is non-empty.
…s instead of null/-1
Author
|
checks are red because of the cherry-picked VŠB commit e580272 |
…g-files' of github.com:dataquest-dev/DSpace into ufal/cherrypick-feature-for-editing-actual-dspace-config-files
milanmajchrak
approved these changes
Jan 13, 2026
vidiecan
approved these changes
Jan 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem description
Cherry-pick of new features: feature for editing actual dspace config files
pull/1097