JSON parser for VPD manager app

This commit implements a parser which parse and store vpd JSON at the
launch of the application.
An applicatin specific parser is required to support write keyword
functionality as reverse mapping of JSON items is required.
In this case the user passes an invetory path and EEPROM VPD for that
inventory path needs to be extracted.

Signed-off-by: Sunny Srivastava <sunnsr25@in.ibm.com>
Change-Id: I7f91b45982c59dfb0d36fe8e80ebd7373a93f147
diff --git a/vpd-manager/manager.hpp b/vpd-manager/manager.hpp
index e542103..e04250c 100644
--- a/vpd-manager/manager.hpp
+++ b/vpd-manager/manager.hpp
@@ -3,6 +3,8 @@
 #include "types.hpp"
 
 #include <com/ibm/VPD/Manager/server.hpp>
+#include <map>
+#include <nlohmann/json.hpp>
 #include <sdbusplus/server.hpp>
 
 namespace sdbusplus
@@ -117,11 +119,22 @@
     void run();
 
   private:
+    /** @brief process the given JSON file
+     */
+    void processJSON();
+
     /** @brief Persistent sdbusplus DBus bus connection. */
     sdbusplus::bus::bus _bus;
 
     /** @brief sdbusplus org.freedesktop.DBus.ObjectManager reference. */
     sdbusplus::server::manager::manager _manager;
+
+    // file to store parsed json
+    nlohmann::json jsonFile;
+
+    // map to hold mapping to inventory path to vpd file path
+    // we need as map here as it is in reverse order to that of json
+    inventory::FrusMap frus;
 };
 
 } // namespace manager