Skip to content

Tags: dataquest-dev/DSpace

Tags

lindat-2026.02.22435691150

Toggle lindat-2026.02.22435691150's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
UFAL/Release hotfix 2026 02 26 - Merge PR (#1260)

* UFAL/Fixed failing integration test (ufal#1332) (#1249)

* Add debug messages to fauling test

(cherry picked from commit 4cc3694)

Co-authored-by: Milan Kuchtiak <kuchtiak@ufal.mff.cuni.cz>

* [Port to dtq-dev] Fix OpenAIRE integration: null handling and HTTP client lifecycle (#1248)

* Fix OpenAIRE integration: null handling and HTTP client lifecycle (ufal#1330)

* Add test for OpenAIRE connector

* Add null check for OpenAIRE response to prevent NullPointerException

Co-authored-by: kosarko <1842385+kosarko@users.noreply.github.com>

* Fix HTTP client lifecycle to prevent premature connection closure

Co-authored-by: kosarko <1842385+kosarko@users.noreply.github.com>

* Keep the try with resources but copy the response

into an in memory stream and return that

* license:check

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: kosarko <1842385+kosarko@users.noreply.github.com>
(cherry picked from commit 02984db)

* Handle NumberFormatException in OpenAIREFundingDataProvider.getNumberOfResults and use explicit UTF-8 charset in OpenAIRERestConnectorTest

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: kosarko <1842385+kosarko@users.noreply.github.com>
Co-authored-by: milanmajchrak <milan.majchrak@dataquest.sk>

* UFAL/Added a comment to do not forget mounting the file which is changed via ocnfiguration feature (#1247)

* UFAL/Issue 1315: Store file preview to database when file preview is created on Item Page load. (ufal#1316) (#1241)

* Issue ufal/clarin-dspace1315: Store file preview to database when file preview is created on item page load

* PR comments: commit context only when any of the file preview is successfully created

(cherry picked from commit aab626b)

Co-authored-by: Milan Kuchtiak <kuchtiak@ufal.mff.cuni.cz>

* UFAL/Issue 1313: fixed error when file preview is not generated for bitstream with store_number = 77 (ufal#1318) (#1240)

* Issue ufal#1313: fixed error when file preview is not generated for bitstream with store number = 77

(cherry picked from commit 04d64f7)

Co-authored-by: Milan Kuchtiak <kuchtiak@ufal.mff.cuni.cz>

* UFAL/Nw version metadata issues (#1236)

* Issue ufal#1266: dc.date.available and dc.relation.replaces metadata not cleared properly (ufal#1307)

* Issue ufal#1266: dc.date.available and dc.relation.replaces metadata not cleaned properly in new item version

* resolve MR comments - update ignoredMetadataFields in versioning-service.xml

* update ClarinVersionedHandleIdentifierProviderIT test to check dc.identifier.uri metadata for new version

(cherry picked from commit 7ffaf9a)

* Issue 1319: do not copy dc.identifier.doi metadata when new item version is created

(cherry picked from commit 1b7ed17)

---------

Co-authored-by: Milan Kuchtiak <kuchtiak@ufal.mff.cuni.cz>

* UFAL/Fix: add bitstream download-by-handle endpoint for curl instructions (#1252)

* fix: add bitstream download-by-handle endpoint for curl instructions

Adds GET /api/core/bitstreams/handle/{prefix}/{suffix}/{filename} endpoint
that directly serves bitstream content by item handle and filename.

This resolves the issue where curl download instructions generated by the
UI produced URLs pointing to non-existent backend endpoints, resulting in
404 errors when users attempted to download files via command line.

The new endpoint resolves the handle to an Item, finds the bitstream by
exact filename in ORIGINAL bundles, and streams the raw content with
correct Content-Type and Content-Disposition headers.

Refs: dataquest-dev/dspace-angular#1210

* Fixed compliing errors

* Small refactoring - use constants and removed unnecessary changes

* added comments, return 404 status instead of 402

* unauthorized instead of forbidden

* fix: use RFC 5987 Content-Disposition for non-ASCII filenames

curl -J on Windows cannot create files with non-ASCII characters (e.g.
diacritics like e/a) from a raw UTF-8 Content-Disposition filename header.

Uses filename*=UTF-8''percent-encoded-name (RFC 5987/6266) which curl
properly decodes. Also includes an ASCII fallback in filename param.

* fix: move context.complete() after streaming to prevent truncated downloads

context.complete() was called before bitstreamService.retrieve(), closing
the DB connection and causing 'end of response with X bytes missing' errors.
Now context.complete() is called only after the full content has been streamed.
For S3 redirect and HEAD paths, context.complete() remains before return
since no streaming is needed.

* fix: use real UTF-8 filename in Content-Disposition instead of ASCII fallback

The filename parameter now contains the original name (with diacritics like
e/a) instead of replacing non-ASCII chars with underscores. Characters in
the ISO-8859-1 range are transmitted correctly by Tomcat and understood by
curl on Western/Central-European systems. The filename* parameter still
provides RFC 5987 percent-encoded UTF-8 for modern clients (curl 7.56+).

* fix: revert to ASCII fallback in Content-Disposition, add edge-case tests

Content-Disposition filename parameter now uses ASCII fallback (non-ASCII
replaced with underscore) per RFC 6266. Modern clients use filename* (RFC
5987) which has the full UTF-8 name. The curl command no longer relies on
Content-Disposition at all (uses -o instead of -OJ).

New integration tests for edge cases:
- Multiple dots in filename (archive.v2.1.tar.gz)
- Double quotes in filename (escaped in Content-Disposition)
- CJK characters (beyond ISO-8859-1)
- Same filename in ORIGINAL and TEXT bundles (only ORIGINAL served)

* fix: resolve compilation errors and fix IT test assertions

- Remove duplicate HttpStatus import (apache vs spring)
- Add missing MediaType import (spring)
- Fix Content-Type assertion to include charset=UTF-8
- Use URI.create() for pre-encoded URLs in tests to prevent
  double-encoding (%25) rejection by StrictHttpFirewall

All 15 integration tests pass.

* test: add complex filename test (diacritics, plus, hash, unmatched paren)

New IT test for filename 'Media (+)#9) ano' verifying correct URL decoding,
Content-Disposition encoding, and content delivery. 16/16 tests pass.

* fix authorization, comments, tests

* fix: change expected status from 401 to 403 for authenticated non-admin user

The test downloadBitstreamByHandleUnauthorizedForNonAdmin uses getClient(token)
which means the user IS authenticated. The controller correctly returns 403
(Forbidden) for authenticated users without access, not 401 (Unauthorized).
401 is only for anonymous/unauthenticated requests.

---------

Co-authored-by: Paurikova2 <michaela.paurikova@dataquest.sk>

---------

Co-authored-by: Ondřej Košarko <ko_ok@centrum.cz>
Co-authored-by: Milan Kuchtiak <kuchtiak@ufal.mff.cuni.cz>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: kosarko <1842385+kosarko@users.noreply.github.com>
Co-authored-by: Paurikova2 <michaela.paurikova@dataquest.sk>

lindat-2026.02.21896263811

Toggle lindat-2026.02.21896263811's commit message
Removed duplicated method

lindat-2025.07.16502729677

Toggle lindat-2025.07.16502729677's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
New Release merge - 2025/July/24 (#1024)

* UFAL/DOI - Added type of resource to data cite (#975)

* UFAL/The process output is not displayed because of S3 direct download (#971)

* The S3 direct download is provided only for the files located in the ORIGINAL bundle

* Use constant for the ORIGINAL string value

* Check if type is html (#983)

* check if type is html

* added test for html mime type

* used static string for text/html, added check

* Ufal dtq sync062025 (#985)

* we should identify as clarin-dspace

Fix test

(cherry picked from commit 6cdf2d1)

* update email templates to use dspace.shortname

dspace.name can be a long string not fit for Email subjects nor
signatures

(cherry picked from commit 98d60dd)

* match v5 submission

(cherry picked from commit 4a2b65f)

* get rid of lr.help.phone

Phone is now conditional in the templates.
Use `mail.message.helpdesk.telephone` if you want it.

The change in the *.java files is to preserve the params counts. The
relevant templates are getting the phone directly from config

(cherry picked from commit cba5695)

* Add option to configure oai sample identifier

some validators use this value, should be a real id in prod deployments

(cherry picked from commit 912f13f)

* NRP deposit license

(cherry picked from commit ba23878)

* Fix ufal#1219

Get rid of setting the jsse.enableSNIExtension property which causes
issues with handle minting

(cherry picked from commit 7d03173)

* UFAL/Improve file preview generating (#972)

* get name and size from metadata and header of file, avoid input stream using

* remove temp file, checkstyle, do not load full file

* add { } after if

* added check for max preview file

* used ZipFile and TarArchived for filepreview generating

* added removed lines

* used 7z for zip and tar files

* removed 7z and used zip and tar entry

* improved file previrew generating speed, used string builder, xml builder, authorization only if is required

* checkstyle, return boolean from haspreview and previrews from getPreview, replaced return with continue

* fix problem with hibernate session

* fix .tar.gz generating

* skip fully entry for tar

* added indexes for speed up queries

* added license header

* named constant by upper case

* inicialized fileInfo, refactorization of code based on copilot review

---------

Co-authored-by: milanmajchrak <90026355+milanmajchrak@users.noreply.github.com>

* Fix the file preview integration test (#989)

* The hasPreview method has been changed, but the IT wasn't updated correctly

* Use the correct checkbox for the input field - use repeatable (#991)

* UFAL/EU Sponsor openaire id should not be required (#1001)

* EU Sponsor openaire id should not be required

* Not required also in the czech submission forms

* Logging error message while emailing users (#1000)

* Logging error message

---------

Co-authored-by: Matus Kasak <matus.kasak@dataquest.sk>
Co-authored-by: milanmajchrak <milan.majchrak@dataquest.sk>

* UFAL/Teaching and clariah submissions does not have clarin-license (#1005)

* UFAL/Fix logging in LogoImportController (#1003)

* fix logging

* used formatter for msg

* UFAL/Update the resource policy rights when changing submitter (#1002)

* removed res policies for submitter and created newones when item is shared

* avoid magic number, use constant

* set submitter in existing res policies

* removed not used shared link

* UFAL/Added date to title when creating new version (#984)

* added date to versioned item title

* used more modern approach for getting current time

* renamed test

* used var for reusing

* UFAL/Item handle info in email after download request (#1006)

* Added item handle to email

* Exception when item not found

* Checked grammar

* Handled multiple items found by bitstream

* Using PID instead of handle

---------

Co-authored-by: Matus Kasak <matus.kasak@dataquest.sk>

* UFAL/Incorrect password hash funct used during migration (#999)

* password in request is already hashed, used different password hash funct

* renamed password param in eperson endpoint

* [devOps] labelling reviewing process

* [devOps] labelling reviewing process

* UFAL/New version keeps the old identifier

* UFAL/Send email to editor after submitting item (#1016)

Co-authored-by: Matus Kasak <matus.kasak@dataquest.sk>

* UFAL/Local file size is 0 for file with no zero size (#1017)

* update item metadata after the bitstream size has changed

* issue 1241: ItemFilesMetadataRepair script implementation (#1243) (#1021)

* issue 1241: ItemFilesMetadataRepair script implementation

* extend script to be applicabble for all items, and for items with files metadata that have missing bitstreams (files)

* implement dry-run option

* option description fix

* Improve error message

* Use "0" instead of "" + 0

* Improve error message

(cherry picked from commit 706f6f6)

Co-authored-by: kuchtiak-ufal <kuchtiak@ufal.mff.cuni.cz>

* UFAL/Refbox upgrade (#1015)

* Created integration test

* Created an endpoint for complete ref box information like in the v5

* Added integration tests for formatting authors

* Removed double semicolon

* Fetch the metadata value following the current locale

* Updated firstMetadataValue because it did return empty string instead of null

* Use DEFAULT_LANGUAGE instead of current locale

* UFAL/Added doc - issue link (#1023)

---------

Co-authored-by: Paurikova2 <107862249+Paurikova2@users.noreply.github.com>
Co-authored-by: Ondřej Košarko <ko_ok@centrum.cz>
Co-authored-by: Kasinhou <129340513+Kasinhou@users.noreply.github.com>
Co-authored-by: Matus Kasak <matus.kasak@dataquest.sk>
Co-authored-by: jurinecko <95219754+jr-rk@users.noreply.github.com>
Co-authored-by: jm <jm@maz>
Co-authored-by: kuchtiak-ufal <kuchtiak@ufal.mff.cuni.cz>

lindat-2025.07.16198085191

Toggle lindat-2025.07.16198085191's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
New Release merge - 2025/July/10 (#1008)

* UFAL/DOI - Added type of resource to data cite (#975)

* UFAL/The process output is not displayed because of S3 direct download (#971)

* The S3 direct download is provided only for the files located in the ORIGINAL bundle

* Use constant for the ORIGINAL string value

* Check if type is html (#983)

* check if type is html

* added test for html mime type

* used static string for text/html, added check

* Ufal dtq sync062025 (#985)

* we should identify as clarin-dspace

Fix test

(cherry picked from commit 6cdf2d1)

* update email templates to use dspace.shortname

dspace.name can be a long string not fit for Email subjects nor
signatures

(cherry picked from commit 98d60dd)

* match v5 submission

(cherry picked from commit 4a2b65f)

* get rid of lr.help.phone

Phone is now conditional in the templates.
Use `mail.message.helpdesk.telephone` if you want it.

The change in the *.java files is to preserve the params counts. The
relevant templates are getting the phone directly from config

(cherry picked from commit cba5695)

* Add option to configure oai sample identifier

some validators use this value, should be a real id in prod deployments

(cherry picked from commit 912f13f)

* NRP deposit license

(cherry picked from commit ba23878)

* Fix ufal#1219

Get rid of setting the jsse.enableSNIExtension property which causes
issues with handle minting

(cherry picked from commit 7d03173)

* UFAL/Improve file preview generating (#972)

* get name and size from metadata and header of file, avoid input stream using

* remove temp file, checkstyle, do not load full file

* add { } after if

* added check for max preview file

* used ZipFile and TarArchived for filepreview generating

* added removed lines

* used 7z for zip and tar files

* removed 7z and used zip and tar entry

* improved file previrew generating speed, used string builder, xml builder, authorization only if is required

* checkstyle, return boolean from haspreview and previrews from getPreview, replaced return with continue

* fix problem with hibernate session

* fix .tar.gz generating

* skip fully entry for tar

* added indexes for speed up queries

* added license header

* named constant by upper case

* inicialized fileInfo, refactorization of code based on copilot review

---------

Co-authored-by: milanmajchrak <90026355+milanmajchrak@users.noreply.github.com>

* Fix the file preview integration test (#989)

* The hasPreview method has been changed, but the IT wasn't updated correctly

* Use the correct checkbox for the input field - use repeatable (#991)

* UFAL/EU Sponsor openaire id should not be required (#1001)

* EU Sponsor openaire id should not be required

* Not required also in the czech submission forms

* Logging error message while emailing users (#1000)

* Logging error message

---------

Co-authored-by: Matus Kasak <matus.kasak@dataquest.sk>
Co-authored-by: milanmajchrak <milan.majchrak@dataquest.sk>

* UFAL/Teaching and clariah submissions does not have clarin-license (#1005)

* UFAL/Fix logging in LogoImportController (#1003)

* fix logging

* used formatter for msg

* UFAL/Update the resource policy rights when changing submitter (#1002)

* removed res policies for submitter and created newones when item is shared

* avoid magic number, use constant

* set submitter in existing res policies

* removed not used shared link

* UFAL/Added date to title when creating new version (#984)

* added date to versioned item title

* used more modern approach for getting current time

* renamed test

* used var for reusing

* UFAL/Item handle info in email after download request (#1006)

* Added item handle to email

* Exception when item not found

* Checked grammar

* Handled multiple items found by bitstream

* Using PID instead of handle

---------

Co-authored-by: Matus Kasak <matus.kasak@dataquest.sk>

---------

Co-authored-by: Paurikova2 <107862249+Paurikova2@users.noreply.github.com>
Co-authored-by: Ondřej Košarko <ko_ok@centrum.cz>
Co-authored-by: Kasinhou <129340513+Kasinhou@users.noreply.github.com>
Co-authored-by: Matus Kasak <matus.kasak@dataquest.sk>
Co-authored-by: jurinecko <95219754+jr-rk@users.noreply.github.com>

lindat-2025.06.15781656962

Toggle lindat-2025.06.15781656962's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Use the correct checkbox for the input field - use repeatable (#991)

lindat-2025.05.15113644568

Toggle lindat-2025.05.15113644568's commit message
Checkouted not correctly merged files

lindat-2025.04.14600125143

Toggle lindat-2025.04.14600125143's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
New Release merge - 2025/Apr/22 (#945)

* Enhanced file preview feature - Run file preview as authenticated user (#936), Property to allow composing file previews (#935), Do not create temp file during generating preview (#921)

* Use the handle url instead of the items url with the UUID (#938)

* Items file metadata not correctly updated (#940)

* Remove duplicate dependency element with identical content (warnings in build)

* Anonymous users should be able to use shortener

* Fixed internal server error, when context.commit() was called multiple times in search request

* Catch DSpaceBadRequestException rather than BadRequestException

* Fixed security issue for downloading file with non anonymous license

* Fixed Clarinuserregistration nullpoint exception (#941)

lindat-2025.04.14267204018

Toggle lindat-2025.04.14267204018's commit message
UFAL/Endpoints leaks private information (#924)

* Updated authorizations for the working with user metadata, user registrations and user allowance mappings

* Refactor the code to avoid potential nullpointer exceptions

* Fixed Integration tests

lindat-2025.03.13796088306

Toggle lindat-2025.03.13796088306's commit message
Ufal/header value could have equals char (#895)

* Set limit when splitting key/value using `=`

* The IT should expect encoded netid in the URL

lindat-2025.02.13138173196

Toggle lindat-2025.02.13138173196's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
UFAL/Release fixed conflicts (#866)

* UFAL/Removed duplicities of the bitstreams in the cmdi (#766)

* Removed duplicities of the bitstreams in the cmdi.

* used lindat code instead of vanilla.

* Ufal/Preview issues (#764)

* Ensure the content preview doesn't overload maximum length of the column in the database. And encode the input stream into UTF-8.

* Do not store HTML content in the database because it could be longer than the limit of the database column.

* UFAL/Encoded the UTF-8 characters from the redirect URL to UTF (#758)

* Encoded the UTF-8 characters from the redirect URL to UTF

* Moved ClarinUtils into Utils class

* Added a new `dq` package into ComponentScan

* Moved dq.Utils into DSpace utils.Utils because the components with the same name causes conflicts.

* Removed *.dq component scan from the App

* Merge pull request DSpace#9790 from DSpace/backport-9775-to-dspace-7_x (#769)

[Port dspace-7_x] Make statistics autocommit much more frequently

Co-authored-by: Tim Donohue <tim.donohue@lyrasis.org>

* test for bitstream with null value of sizebytes

* Update README.md

* UFAL/Shibboleth - load more net-id headers e.g. persistent-id (#772)

* Load netid from more than one header. authentication-shibboleth.netid-header could be list, not only single value

* Shibboleth login - sort the emails passed in the shibboleth email header and get the first one.

* The user is redirected to the login page when it is trying to update eperson email which is already assigned to another eperson.

* Sorting emails is moved into specific method and ShibbolethLoginFilter is updated following the ShibAuthentication changes

* The ClarinShibbolethLoginFilter and ClarinShibAuthentication has duplicate code, I put it into static method.

* Propagate the verification token to the DB after the email is successfully sent. (#786)

* UFAL/Enhanced type-bind feature (#762)

* type bind is correctly rendered in the FE, but BE is still not working

* Synchronized the `submission-forms_cs.xml`

* Added doc into `submission-forms` about enhanced type-bind `field`

* Updated `local.cfg` for tests - added type-bind property

* Updated docs for the customized type-bind configuration property.

* Updated MetadataValidation following the type-bind customization.

* Added isAllowed function for multiple type-bind definitions

* Added some docs for the new method

* The values of the input wasn't loaded.

* Allowed fields could be empty when they should have values.

* Used isEmpty function and created constant for the `=>`.

* create preview content for tar files (#759)

* create preview content for tar files

* Added right logs

* devided extractFile funs into several separated smaller funs

* added comment and removed empty line

* added empty lines and removed unwanted comments

* removed empty line

* used consts

* try incorrect identification level

* log errors and removed unneeded consts

---------

Co-authored-by: milanmajchrak <milan.majchrak@dataquest.sk>

* Internal/fix failing Clarin integration test (#796)

* Initial commit

* Ignore the test class from where the tests has started failing.

* Ignored half of tests in the ClarinShibbolethLoginFilterIT file

* Ignored all tests

* unignore some tests

* 3 tests ignored 3 allowed

* Maybe the problematic test is hidden between 3 unignored tests

* two candidates

* The last candidate

* Ignore just wrong test and all test should pass

* Clean up object created in the test.

* Removed unused import.

* Check the user which is going to be deleted is not null.

* Rest api for handle resolution with metadata

* decoded rawvalues and response json modification

* used static extractMetadata funct in HandlePlugin

* return dict:

* removed property for test from local

* Add default licenses - from ZCU update (#801)

* Added flyway file to insert default licenses with license labels and mappings

* Added required header

* UFAL/share submission by email (#780)

* Updated table workspace with share token, created endpoint to generate share token and it is sent via email

* Added method to get workspaceitem via share token.

* Added an endpoint for changing the submission's owner.

* Added license headers

* Added test for fetching item with share Token

* Added tests to check the owner is changed

* Added better explanation why the BE must return Page object in the search endpoint

* Validate the user in the SubmissionController, it cannot be null

* Updated email - some values are fetched directly from the configuration property

* Updated preAuthorization method to ADD instead of WRITE (write is used for controlling authorization for modifying the Item) and updated shareURL

* Authorize the submitter which is trying to take sharing item via shareToken.

* Update integration test following the feature update

* Import default licenses only if the license tables are empty. (#808)

* Oai elg crosswalk (#798)

* problem with language code

* fix amount and sizeUnitOther rest-tests errors

* added language coding

* new language and funding project mishmash array position

* added isoCodes

* removed handle from item submission (#812)

* UFAL/Shibboleth - netid-header should use getArrayProperty everywhere (#807)

* Fetch netid as array from the cfg. Now netid as array is used everywhere. Added integration test to ask for an email when the user send only persistent-id in the shib header.

* The user is not signed in without using link with the verification token from the email/ (#809)

* UFAL/Shibboleth - show error in the UI when shibboleth authentication is failed (#810)

* The user is not signed in without using link with the verification token from the email/

* Send a redirect to UI with specific parameter that the Shibboleth authorization wasn't successful

* UFAL/Autocomplete enhancement (#768)

* Added solr index `handle_title_ac` and `_comp` for the Item

* Added support for searching results from specific solr indexes.

1. Updated submission-forms autocomplete definition to specify a specific index. 2. Updated configuration is provided via REST API. 3. Create a new `/suggestions` endpoint for searching values from custom solr index - it returns VocabularyEntry page.

* Supported searching Item byHandle when passed a handle as parameter without handle canonical prefix.

* Added autocompleteCustom `solr-subject_ac` and `handle_title_ac`.

* Added autocompleteCustom `solr-publisher_ac`.

* Added cfg property to define a separator from the solr value to get only display value.

* Added autocompleteCustom `solr-dataProvider_ac`

* Refactored code and created integration test for the SuggestionRestController

* Updated suggestion integration tests because it has had a conflict with another IT

* Added doc and changed `autocomplete.custom.format` to `autocomplete.custom.separator` for proper naming.

* Added support for loading suggestions from the json file - need to refactor.

* Refactored and added docs.

* Created tests and fixed failing ones due to updated solr definition

* Synchronized submission-forms_cs.xml with the original-english one

* Added docs about magic constants

* Added doc why the handle is updated to canonical form in the searchbyHandle endpoint

* Allow searching only within the solr indexes or JSON files permitted by the configuration.

* Removed normalization of handle prefix because there could be more prefixes. Expect only handle value.

* Fixed if condition and config property default value.

* Fixed integration tests. Allowed autocomplete custom was missing in the test cfg.

* The suggestion endpoint is allowed only for authorized users

* Refactored method for the normalizing the query for the discoverQuery and added unit tests.

* UFAL/Changed position of rows in submission-forms.xml following v5 (#802)

* Changed position of rows in submission-forms.xml following v5

* Fixed the alignment of some text

* Removed rows which are not in the v5

* Removed license selector from the `teaching` and `clariah-data` collections

* Updated input differences in the submission-forms.xml following the v5.

---------

Co-authored-by: Juraj Roka <juraj.roka@dataquest.sk>
Co-authored-by: milanmajchrak <milan.majchrak@dataquest.sk>

* Show db connection statistics in the log file or the `dbstatistics` endpoint (#815)

* Show db statistics in the log file or the `dbstatistics` endpoint

* Finding out why github checks are failed - undo hibernate.cfg

* Disabled automatic logging

* Use scheduled CRON job instead of PostConstruct

* hibernate generating property true

---------

Co-authored-by: Paurikova2 <michaela.paurikova@dataquest.sk>

* Translation of submission-forms to _cs (#816)

* Translation of submission-forms to _cs

* Translated bitstream metadata and complex input fields

* Translated the rest of submission-froms_cs.xml

* Fixed regex... it must contain regex value, not the message.

---------

Co-authored-by: Juraj Roka <juraj.roka@dataquest.sk>
Co-authored-by: milanmajchrak <milan.majchrak@dataquest.sk>

* Updated cfg to pretify the author suggestions (#819)

* crosswalk-embargo (#821)

* added fn for embargo

* using of res policy end_date and added comments

* fix string format problem with %s

* integration tests are falling down

* removed findHandle duplicity

* For now the complex input field is without autocomplete for the size and contact person (#823)

* Send the custom type bind `field` to the FE configuration (#822)

* fix date converting to string

* cherry-picked DataCite related changes from customer/uk

* Add a script that adds a file from url to an item

* intended for large file workflows

* Add ways to influence the bitstream name

* add more options to specify an item

* Expose resourceId (#1134)

A BE part of #1127 - this exposes the resourceId so it can be used in the handle mgmt table

* fixes ufal#1135 - findEpersonByNetId should stop searching when it finds an eperson

- moved the `return eperson` inside the for cycle (after eperson non null
check).
- removed the eperson param (both callers were passing in `null`)

* Test release without db logs (#827)

* UFAL/Matomo statistics with dimension (#813)

* Updated the version of matomo dependency and tried to change request from Custom Variables to Dimension

* Added a custom dimension with item's handle URL

* Send custom dimension also in oai tracker

* Use only IPv4 address, the Matomo tracker has a problem with IPv6

* Do not change custom dimension when the Item is null

* First custom dimension should have ID '1'.

* Use a valid URL for Matomo tracker in the IT

* Configure handle custom dimension ID in the clarin-dspace.cfg

* Refactored ipv4 method to be more readable - return null

---------

Co-authored-by: Juraj Roka <juraj.roka@dataquest.sk>
Co-authored-by: milanmajchrak <milan.majchrak@dataquest.sk>
Co-authored-by: milanmajchrak <90026355+milanmajchrak@users.noreply.github.com>

* The `dspace.name.short` is not working properly in the email, use `dspace.shortname` instead (#828)

* Assinging to JAVA_OPTS_HANDLE must be without $

* Transaction bug - close context in finally block (#845) (#852)

* Transaction bug - see differencies (#845)

* Logging hibernate statistics doesn't work as expected.

* Undo connection pool timeout contants

* Removed a huge amount of log.info

* Added abort to try catch blocks to check if it will solve IT

* Call aborting the context in the finally block of the StatelessAuthenticationFilter

---------

Co-authored-by: jm <jm@maz>

* Empty commit to run actions

* Added a warning message then the transaction is alive during initializing a new Context.

* Updated the `actions/upload-artifact` to v4 becausa of `https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/`

* Show warning when the transaction is alive when the dbConnection is created

---------

Co-authored-by: jm <jm@maz>

* metadata-added-provenance (#730)

* added provenance metadata for update, remove and add

* added provenance metadata for update and remove bitstream

* item test json added metadata provenance

* control provenance only by tests of item

* update and remove license

* provenance access control and upload bitstream

* provenance move item to different collection

* provenance make item non-discoverable

* provenance for mapped collection

* don't write provenance for bitstream without item

* move addProvenance to parent class

* separated class for provenance

* create class for provenance management

* added metadata item and bitstream tests

* tests for metadata provenance

* problem with access control test

* better service management:

* delete clarin license mapping

* added json to resources

* modified provenance patch messages

* messages bags

* used correct json

* log exception, replace ! by non conds, added doc comments

* added logs for replacing mtd

* make object from provenance service

* removed interface prom provenance msg provider

* Refactored method `removeReadPolicies` - add provenance after removing policy

* The message templates are loaded from the Enum instead of json file.

* The `getMessage` methods was overloaded.

* Renamed `getItem` to `findItemByBitstream` to clarify the method's purpose.

* Do not throw exception when adding to provenance

* The exceptions are caught in the ProvenanceProvider and changed order when calling provenance methods.

* Renamed ProvenanceProvider to ProvenanceService and refactored it to be used as Spring Service.

* The ProvenanceService wasn't initialized in the BundleAccessControl

* Removed the code without any effect

* Removed the logging which is not required

* Moved calling od the provenance service to better place.

---------

Co-authored-by: milanmajchrak <milan.majchrak@dataquest.sk>

* Facet result for suggestion (#854)

* Retrieve the suggestions from the facet results instead of a specific bunch of results

* Removed not required log.

* Healthcheck process (#853)

* Checkouted files from the `healthcheck-process` branch and updated the code, also added integration test.

* Changed the name of the test.

* Updated the description to be consistent with another descriptions.

* Refactored the calling the check.run method, use `check.report` instead.

* Changed matomo url to some valid URL

* Update the url to some non-existing url.

* Oai indexing after res policy change (#855)

* Fixed nullpointer exception - when the dso object was null and was accessed.

* The condition was added to the boolean property.

* Run build action every 4 hours to be sure tests are still passing.

* The dc.type should not be repeatable (#861)

* UFAL/Health report send to more email adresses 

Co-authored-by: Matus Kasak <matus.kasak@dataquest.sk>

* UFAL/Fixed missing `*` character in the required input field

* Res policy for submitter (#862)

* created res policy if eperson is submitter

* allowed submitter edit metadata only in collections from cfg

* test for ID collection allowed by cfg

* created res policy during item installation, tests

* added check if user is submitter

* renamed property, default value if is not defined

* added comments why the property is not commented

* Do not merge flyway script with default licenses.

* Removed unuseful comment

---------

Co-authored-by: Tim Donohue <tim.donohue@lyrasis.org>
Co-authored-by: Paurikova2 <107862249+Paurikova2@users.noreply.github.com>
Co-authored-by: Jozef Misutka <332350+vidiecan@users.noreply.github.com>
Co-authored-by: jurinecko <95219754+jr-rk@users.noreply.github.com>
Co-authored-by: Juraj Roka <juraj.roka@dataquest.sk>
Co-authored-by: Paurikova2 <michaela.paurikova@dataquest.sk>
Co-authored-by: Ondřej Košarko <ko_ok@centrum.cz>
Co-authored-by: jm <jm@maz>
Co-authored-by: Kasinhou <129340513+Kasinhou@users.noreply.github.com>
Co-authored-by: Matus Kasak <matus.kasak@dataquest.sk>