control: Don't cache non-group properties
The code was previously adding every single D-Bus
path/interface/property of a service when Manager::addObjects() was
being used to cache D-Bus property values. This was resulting in a lot
of extra items in the cache that fan control would never use.
To fix this, create a single static set of all of the D-Bus paths from
all of the Group objects, which would be the master list of all the
D-Bus paths fan control would ever care about. Then, only add a
path/interface/property to the cache if that path is in that set.
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I787c9c36b88d003fe9fe7ac1d517fbb5aa510e4e
diff --git a/control/json/manager.hpp b/control/json/manager.hpp
index 7da379a..0f9ff5f 100644
--- a/control/json/manager.hpp
+++ b/control/json/manager.hpp
@@ -565,7 +565,8 @@
/**
* @brief Insert managed objects into cache, but filter out properties
- * containing unwanted NaN (not-a-number) values.
+ * containing unwanted NaN (not-a-number) values and properties that
+ * are on D-Bus paths that aren't in an existing Group object.
*
* @param[in] ref - The map of ManagedObjects to insert into cache
*/