led-use-json: Use specific config files
- When enabled `led-use-json`, it should use the JsonConfig class to
find the JSON file name, and do not start until JSON config is
found.
- If it has to wait for the IBMCompatible interface to show up on
D-bus first, it will wait for that.
Tested:
- If there is a `/etc/phosphor-led-manager/led-group-config.json`
path, congfile=/etc/phosphor-led-manager/led-group-config.json
- If there is a `/usr/share/phosphor-led-manager/led-group-config.json`
path and there is not `/etc/phosphor-led-manager/`,
congfile=/usr/share/phosphor-led-manager/led-group-config.json
- If the above two paths do not exist, get the `Name` property of the
`xyz.openbmc_project.Configuration.IBMCompatibleSystem` interface,
congfile=/usr/share/phosphor-led-manager/${Name}/led-group-config.json
Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I1528a3d3711ef6b604868387ad42cb3c0afde119
diff --git a/utils.hpp b/utils.hpp
index 68a616a..ef56f5f 100644
--- a/utils.hpp
+++ b/utils.hpp
@@ -76,6 +76,17 @@
const std::string& interface,
const std::string& propertyName,
const PropertyValue& value) const;
+
+ /** @brief Get sub tree paths by the path and interface of the DBus.
+ *
+ * @param[in] objectPath - D-Bus object path
+ * @param[in] interface - D-Bus object interface
+ *
+ * @return std::vector<std::string> vector of subtree paths
+ */
+ const std::vector<std::string>
+ getSubTreePaths(const std::string& objectPath,
+ const std::string& interface);
};
} // namespace utils