Move over to upstream c++ style

This patchset moves bmcweb over to the upstream style naming
conventions for variables, classes, and functions, as well as imposes
the latest clang-format file.

This changeset was mostly built automatically by the included
.clang-tidy file, which has the ability to autoformat and auto rename
variables.  At some point in the future I would like to see this in
greater use, but for now, we will impose it on bmcweb, and see how it
goes.

Tested: Code still compiles, and appears to run, although other issues
are possible and likely.

Change-Id: If422a2e36df924e897736b3feffa89f411d9dac1
Signed-off-by: Ed Tanous <ed.tanous@intel.com>
diff --git a/redfish-core/lib/managers.hpp b/redfish-core/lib/managers.hpp
index c8609b4..daee36a 100644
--- a/redfish-core/lib/managers.hpp
+++ b/redfish-core/lib/managers.hpp
@@ -30,8 +30,8 @@
     Node::json["Description"] = "Baseboard Management Controller";
     Node::json["PowerState"] = "On";
     Node::json["UUID"] =
-        app.template get_middleware<crow::PersistentData::Middleware>()
-            .system_uuid;
+        app.template getMiddleware<crow::persistent_data::Middleware>()
+            .systemUuid;
     Node::json["Model"] = "OpenBmc";               // TODO(ed), get model
     Node::json["FirmwareVersion"] = "1234456789";  // TODO(ed), get fwversion
     Node::json["EthernetInterfaces"] = nlohmann::json(
@@ -52,10 +52,11 @@
   }
 
  private:
-  void doGet(crow::response& res, const crow::request& req,
+  void doGet(crow::Response& res, const crow::Request& req,
              const std::vector<std::string>& params) override {
     Node::json["DateTime"] = getDateTime();
-    res.json_value = Node::json;
+    // Copy over the static data to include the entries added by SubRoute
+    res.jsonValue = Node::json;
     res.end();
   }
 
@@ -96,9 +97,18 @@
   }
 
  private:
-  void doGet(crow::response& res, const crow::request& req,
+  void doGet(crow::Response& res, const crow::Request& req,
              const std::vector<std::string>& params) override {
-    res.json_value = Node::json;
+    // Collections don't include the static data added by SubRoute because it
+    // has a duplicate entry for members
+    res.jsonValue["@odata.id"] = "/redfish/v1/Managers";
+    res.jsonValue["@odata.type"] = "#ManagerCollection.ManagerCollection";
+    res.jsonValue["@odata.context"] =
+        "/redfish/v1/$metadata#ManagerCollection.ManagerCollection";
+    res.jsonValue["Name"] = "Manager Collection";
+    res.jsonValue["Members@odata.count"] = 1;
+    res.jsonValue["Members"] = {
+        {{"@odata.id", "/redfish/v1/Managers/openbmc"}}};
     res.end();
   }