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/led-main.cpp b/led-main.cpp
index 7dc0488..8dcfff6 100644
--- a/led-main.cpp
+++ b/led-main.cpp
@@ -2,7 +2,7 @@
#include "group.hpp"
#ifdef LED_USE_JSON
-#include "json-config.hpp"
+#include "json-parser.hpp"
#else
#include "led-gen.hpp"
#endif
@@ -19,7 +19,7 @@
auto& bus = phosphor::led::utils::DBusHandler::getBus();
#ifdef LED_USE_JSON
- auto systemLedMap = loadJsonConfig(LED_JSON_FILE);
+ auto systemLedMap = getSystemLedMap();
#endif
/** @brief Group manager object */