Skip to content

Conversation

dizzzz
Copy link
Member

@dizzzz dizzzz commented Sep 1, 2025

Summary:
Use caffeine library as cache for XML grammars (DTDs, XSDs, ....)

Description:

  • the main change is in GrammarPool.java - it uses caffeine now instead of the Xerces provided one.
    • the one of Xerces does not (automatically) clean up old grammars.
    • tests are added into exist-core/src/test/java/org/exist/validation/GrammarPoolTest.java
  • Configuration.java has been changed so settings are read from conf.xml.
    • some old methods are split-up for readability.
    • if config element is left out, old behavior is there, with new library.
  • all code in org.exist.validation has been reformatted, and with static quality checks improved.

@dizzzz dizzzz requested a review from reinhapa September 1, 2025 20:20
@dizzzz dizzzz force-pushed the refactor/validation_code branch from 7cf70da to 8b3afcd Compare September 5, 2025 15:00
@dizzzz dizzzz marked this pull request as ready for review September 5, 2025 15:08
@dizzzz dizzzz requested a review from a team as a code owner September 5, 2025 15:08
@dizzzz dizzzz requested review from wolfgangmm and line-o September 5, 2025 15:11
@dizzzz dizzzz added the enhancement new features, suggestions, etc. label Sep 5, 2025
@dizzzz dizzzz requested a review from a team September 6, 2025 08:56
Copy link
Contributor

@duncdrum duncdrum left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good. Needs documentation, otherwise good to merge.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code listing for conf.xml in the documentation app needs to be updated.

@duncdrum duncdrum added the needs documentation Signals issues or PRs that will require an update to the documentation repo label Sep 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement new features, suggestions, etc. needs documentation Signals issues or PRs that will require an update to the documentation repo
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants