JKISoftware / JKI-State-Machine-Objects

Object-oriented framework for LabVIEW based on the JKI State Machine
BSD 3-Clause "New" or "Revised" License
95 stars 56 forks source link

Support abstract configuration management interface #52

Closed francois-normandin closed 6 years ago

francois-normandin commented 6 years ago

A common feature that we reimplement in any framework is configuration management. To keep a lightweight base class and maximum flexibility, add a configuration management interface for which developers can inject their own configuration manager class.

Features of the configuration management implementation should be:

Are there more requirements that are "must-have"?

francois-normandin commented 6 years ago

Dependency injectable CfgManager class is in the develop branch. Hierarchy includes a Cache class (for in-memory cfg data management) and a Collection class (for aggregating multiple CfgManagers.

On Read, Collection is inspected from top to bottom until every key-pair values are found

Still to be added:

francois-normandin commented 6 years ago

This feature is integrated in Develop branch and should be ready for 1.4.0 after examples are created and unit tests are written. Apply VIPC file if testing the dev branch as there is a new dependency on the Configuration Manager for the SMO project.

francois-normandin commented 4 years ago

This feature is being removed from 1.4 release path. The configuration management feature is taken out of base package