Start using sdbusplus::message::filename()

Lots of code gets checked in that does this path checking incorrectly.
So much so, that we have it documented in COMMON_ERRORS.md, yet, we
persist.  This patchset starts using the new object_path::filename()
method that was added recently to sdbusplus.  Overall, it deletes code,
and makes for a much better developer experience.

Tested:
Pulled down several endpoints and verified that filename() method works
properly, and the collections are returned as expected.

curl -vvvv --insecure --user root:0penBmc https://192.168.7.2/redfish/v1/AccountService/Accounts

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ief1e0584394fb139678d3453265f7011bc931f3c
diff --git a/redfish-core/lib/ethernet.hpp b/redfish-core/lib/ethernet.hpp
index e73d338..159eda2 100644
--- a/redfish-core/lib/ethernet.hpp
+++ b/redfish-core/lib/ethernet.hpp
@@ -968,14 +968,13 @@
                     if (interface.first ==
                         "xyz.openbmc_project.Network.EthernetInterface")
                     {
-                        // Cut out everything until last "/", ...
-                        const std::string& ifaceId = objpath.first.str;
-                        std::size_t lastPos = ifaceId.rfind('/');
-                        if (lastPos != std::string::npos)
+                        std::string ifaceId = objpath.first.filename();
+                        if (ifaceId.empty())
                         {
-                            // and put it into output vector.
-                            ifaceList.emplace(ifaceId.substr(lastPos + 1));
+                            continue;
                         }
+                        // and put it into output vector.
+                        ifaceList.emplace(ifaceId);
                     }
                 }
             }