Skip to content

Enable GET for container endpoints#844

Draft
dennisvang wants to merge 10 commits intodevelopfrom
feature/842-get-container
Draft

Enable GET for container endpoints#844
dennisvang wants to merge 10 commits intodevelopfrom
feature/842-get-container

Conversation

@dennisvang
Copy link
Contributor

@dennisvang dennisvang commented Feb 6, 2026

This enables GET requests to container endpoints, such as catalog/, dataset/, catalog/<id>/dataset/, and so on.
Paging is optional, depending on the presence of query parameters page and size.
The original page endpoints are now deprecated, but we keep them around for backward compatibility.

  • added GET controller for the following paths:
    • "{childPrefix}/"
    • "{oUrlPrefix:[^.]+}/{oRecordId:[^.]+}/{childPrefix}/"
  • deprecated the GET controller for the page paths:
    • "page/{childPrefix}"
    • "{oUrlPrefix:[^.]+}/{oRecordId:[^.]+}/page/{childPrefix}"
  • refactored controller logic:
    replaced for (...) {if (condition) {return ...}} pattern by stream.filter(condition).findFirst() for clarity (and reusability)

todo:

  • move controller logic into separate service
  • update tests

fixes #842

@dennisvang
Copy link
Contributor Author

The ClassFanOutComplexity error from checkstyle is an indication that the controller is doing too much.
This confirms the necessity of moving some of the controller logic into a separate service.

@dennisvang dennisvang force-pushed the feature/842-get-container branch from 01c1f65 to 99f46ea Compare February 10, 2026 16:56
This shows that the two implementations are *not* identical in the way they handle null values...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

HTTP GET support for container/collection endpoints

1 participant