326 remove "products" from exposed classes #328
Merged
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.
🗒️ Summary
Per @tloubrieu-jpl in #326, "products" is confusing when overloaded to describe "products which are not aggregate products.
This PR removes 'products' from the results returned by endpoint
/classes
, and removes it as a enumerated class value for endpoint/classes/{class}
.It also performs significant renaming of related concepts within the API, specifically:
Relevant
Product
-prefixed classes classes are now named withNonAggegateProduct
prefix instead.GroupConstraint methods any(), all() and not() have been renamed to filter(), must() and mustNot(). These new names directly reflect the search concepts they conceptually map to, and should avoid confusion in future.
A method union() is implemented for
GroupConstraint
and later reverted. I haven't written unit tests for it and can't be bothered since it ended up not being required, but it's left in the commit history just in case a use-case for it comes up in future.⚙️ Test Data and/or Report
Postman tests pass. Postman tests written and PR will be opened to add them to the registry repo's tests
♻️ Related Issues
fixes #326