Commit 0df634ae authored by Matthieu Hautreux's avatar Matthieu Hautreux Committed by Morris Jette
Browse files

[PATCH 14/17] layouts: add autoupdate of entities KVs based on inheritance relationships

layouts plugins inheritances among entities KVs like KEYSPEC_UPDATE_CHILDREN_SUM
(see layouts_mgr.h) are now fully managed by the layouts manager.

An extra third stage is added while loading the configuration and state
informations during startup in order to automatically update the layouts
entities KVs based on the relationships defined in the plugin among the keys.
The third stage is executed right after the second one that is in charge of
establishing the relations among the entities.

When an update is performed using the API laouts_update_layout call, the
autoupdate logic is also applied.

Note that a layout plugin must explicitely ask for autoupdate support by the
layouts manager using the autoupdate field of its layouts_plugin_spec_t internal
structure 'plugin_spec'.

layouts API calls using the push/pull logic also leverage the autoupdate
mechanism.

Note that for now, the autoupdate is "full" whenever it is called.
Improvements should be considered in the future to improve the performance
of the logic when possible, especially in push/pull contexts.
parent 18b56355
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment