PKP Bugzilla – Bug 5531
Add runtime environment check to plug-ins
Last modified: 2012-09-21 13:12:36 PDT
An automatic runtime environment definition and validation has been implemented for filters (see the Filter class, search for runtime). We should do the same for plug-ins. The advantages are: - dependencies on installation requirements are well documented within the plug-in - dependencies can be checked while installing/enabling the plug-in and meaningful error messages can be produced when the runtime environment is not sufficient - we can avoid loading plug-ins which have unmet dependencies and issue a meaningful error message Implementation notes: - The version.xml file can be used to document runtime dependencies, they can be retrieved from there and saved in the plugin-settings table during installation (see FilterDAO for the Filter-specific persistence layer of runtime requirements) - The RuntimeEnvironment class has been implemented in a way that it can also be used to very easily check dependencies for plug-ins.
And of course this can be done in a backwards compatible way by assuming "no runtime requirements" if the corresponding settings are absent.
deferring