Handle D-Bus exceptions

Remove the usage of is_method_error()[1].

Also, add try-catch to handle D-Bus exceptions around mapper call.

[1]https://github.com/openbmc/sdbusplus/blob/master/include/sdbusplus/bus.hpp#L282-L286

Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: Id2b5234009e62e6c003f24a25c726317646b582b
diff --git a/fault-monitor/fru-fault-monitor.cpp b/fault-monitor/fru-fault-monitor.cpp
index 885c020..047994f 100644
--- a/fault-monitor/fru-fault-monitor.cpp
+++ b/fault-monitor/fru-fault-monitor.cpp
@@ -54,26 +54,18 @@
     auto mapper = bus.new_method_call(MAPPER_BUSNAME, MAPPER_OBJ_PATH,
                                       MAPPER_IFACE, "GetObject");
     mapper.append(path.c_str(), std::vector<std::string>({OBJMGR_IFACE}));
-    auto mapperResponseMsg = bus.call(mapper);
-    if (mapperResponseMsg.is_method_error())
-    {
-        using namespace xyz::openbmc_project::Led::Mapper;
-        elog<MethodErr>(MethodError::METHOD_NAME("GetObject"),
-                        MethodError::PATH(path.c_str()),
-                        MethodError::INTERFACE(OBJMGR_IFACE));
-    }
 
     std::map<std::string, std::vector<std::string>> mapperResponse;
     try
     {
+        auto mapperResponseMsg = bus.call(mapper);
         mapperResponseMsg.read(mapperResponse);
     }
     catch (const sdbusplus::exception::exception& e)
     {
         log<level::ERR>(
-            "Failed to parse getService mapper response",
-            entry("ERROR=%s", e.what()),
-            entry("REPLY_SIG=%s", mapperResponseMsg.get_signature()));
+            "Failed to GetObject or parse getService mapper response",
+            entry("ERROR=%s", e.what()));
         using namespace xyz::openbmc_project::Led::Mapper;
         elog<ObjectNotFoundErr>(ObjectNotFoundError::METHOD_NAME("GetObject"),
                                 ObjectNotFoundError::PATH(path.c_str()),
@@ -215,30 +207,12 @@
     try
     {
         auto mapperResponseMsg = bus.call(mapperCall);
-        if (mapperResponseMsg.is_method_error())
-        {
-            using namespace xyz::openbmc_project::Led::Mapper;
-            report<MethodErr>(MethodError::METHOD_NAME("GetSubTree"),
-                              MethodError::PATH(MAPPER_OBJ_PATH),
-                              MethodError::INTERFACE(OBJMGR_IFACE));
-            return;
-        }
-
-        try
-        {
-            mapperResponseMsg.read(subtree);
-        }
-        catch (const sdbusplus::exception::exception& e)
-        {
-            log<level::ERR>(
-                "Failed to parse existing callouts subtree message",
-                entry("ERROR=%s", e.what()),
-                entry("REPLY_SIG=%s", mapperResponseMsg.get_signature()));
-        }
+        mapperResponseMsg.read(subtree);
     }
     catch (const sdbusplus::exception::exception& e)
     {
-        // Just means no log entries at the moment
+        log<level::ERR>("Failed to parse existing callouts subtree message",
+                        entry("ERROR=%s", e.what()));
     }
 }
 
@@ -275,10 +249,9 @@
         }
         catch (const sdbusplus::exception::exception& e)
         {
-            log<level::ERR>(
-                "Failed to parse existing callouts associations message",
-                entry("ERROR=%s", e.what()),
-                entry("REPLY_SIG=%s", reply.get_signature()));
+            log<level::ERR>("Failed to get Associations or  parse existing "
+                            "callouts associations message",
+                            entry("ERROR=%s", e.what()));
             continue;
         }
         auto& assocs = std::get<AssociationList>(assoc);