...
Solution 3 - Dynamic updating of param tag(publish time) to plugins network request call
API:
Code Block |
---|
API Name: '/search'
request:{
identifier”: [“plugin1”, “plugin2"]
} |
As soon as plugin fix is done, Developer Sunbird as to update the param tag with some value using make an api and sunbird as to read that param tag using api and append to plugins request network to get the plugins metadata and pass lastUpdateOn time as config to editor's, The plugins framework should append the lastUpdatedOn field to plugins network request calls
Pros:
- Cache will resolve
- No need to portal or editor deployment
- No need to version update
Cons:
- Due to we are appending to plugins network request calls so it will append to all plugins request network calls then all plugins will load without cache.
...
- To get last updateOn filed sunbird as to make an API call.
Metadata
Code Block |
---|
{ publishTime:TimelastUpdatedOn(ms) } |
Each plugin should hold the plugin publish time in the manifest.json, While While loading respective plugin the plugin framework should append the publish last updated on time to network request call by reading from manifest.json.metadata
Pros:
- No need to multiple deployment
- Plugins cache will resolve
...
- Plugin framework need to update.
Conclusion:
Cache problem can not be resolved by using param tags. So each plugins as to follow the deployment process and developer need to bump up the plugin version, If any incompatibility issue. Along with user may required to upgrade the content as well.
We need further design discussion for the plugin version bump-up and content upgrade.
Kartheek Palla Vinu Kumar Venkateshwaran Selvaraj