-
Notifications
You must be signed in to change notification settings - Fork 174
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Modules] Replace Module->getDataDictionary with Module QueryEngine dictionary. #8260
Conversation
@jeffersoncasimir Do you have time to review? |
6047824
to
b05b6e2
Compare
I do not have any instruments set up. I think it may be best for someone else to review it ASAP since it is a blocking PR. Apologies for the delay. |
There are still a few places that makes or defines the old calls |
https://github.com/aces/Loris/blob/main/modules/instruments/php/module.class.inc#L163 isn't calling it, it's defining the old function. It's removed in #8216 where the module is updated to provide a full query engine. Looks like you're right about https://github.com/aces/Loris/blob/main/modules/dictionary/php/fields.class.inc#L88. Not sure why phan didn't catch that. Just fixed it. What are the others? The old |
26c4ff9
to
d797ba2
Compare
I deleted the old implementations in the latest commit. The updated instruments query engine will be re-added in PR#8216, the updated candidate_parameters is re-added in PR#8288. The imaging browser one is a simple enough dictionary that it's probably not needed for reference when the module is updated to provide a full query engine. |
This adds a Module->getQueryEngine() function to the Module class to get the QueryEngine to the module. The default is a NullQueryEngine which does nothing and matches nothing. Update the dictionary module to use the new interface instead of Module->getDataDictionary().
eea9fc3
to
234653a
Compare
@xlecours ping.. I just rebased this because the required tests changed, but it was passing before the rebase. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested using #8288
Xavier approved, no take-backs! |
This adds a Module->getQueryEngine() to return the QueryEngine interface for a module. It adds a default NullQueryEngine that implements the interface for modules that have not defined their own interface.
The dictionary module is updated to use the new function call.
Since no modules define the interface yet, testing this probably requires merging it into a branch along with PR #8216 so that there's data to test against in the dictionary. (Assuming you have instruments installed/configured.)