diff --git a/src/main.cpp b/src/main.cpp
index 37f216f..d4709b4 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1,5 +1,3 @@
-#include "config.h"
-
 #include "associations.hpp"
 #include "processing.hpp"
 #include "src/argument.hpp"
@@ -76,8 +74,8 @@
     // introspect right now.  Find out how to register signals in
     // sdbusplus
     sdbusplus::message::message m = system_bus->new_signal(
-        MAPPER_PATH, "xyz.openbmc_project.ObjectMapper.Private",
-        "IntrospectionComplete");
+        "/xyz/openbmc_project/object_mapper",
+        "xyz.openbmc_project.ObjectMapper.Private", "IntrospectionComplete");
     m.append(process_name);
     m.signal_send();
 }
@@ -590,7 +588,7 @@
                     // association path.
                     if ((connection_map->second.size() == 1) &&
                         (connection_map->second.begin()->first ==
-                         MAPPER_BUSNAME))
+                         "xyz.openbmc_project.ObjectMapper"))
                     {
                         // Remove the 2 association D-Bus paths and move the
                         // association to pending.
@@ -647,7 +645,8 @@
         associationChangedHandler);
 
     std::shared_ptr<sdbusplus::asio::dbus_interface> iface =
-        server.add_interface(MAPPER_PATH, MAPPER_INTERFACE);
+        server.add_interface("/xyz/openbmc_project/object_mapper",
+                             "xyz.openbmc_project.ObjectMapper");
 
     iface->register_method(
         "GetAncestors", [&interface_map](std::string& req_path,
@@ -857,7 +856,7 @@
                     associationMaps, server);
     });
 
-    system_bus->request_name(MAPPER_BUSNAME);
+    system_bus->request_name("xyz.openbmc_project.ObjectMapper");
 
     io.run();
 }
diff --git a/src/processing.cpp b/src/processing.cpp
index 229f417..f144b77 100644
--- a/src/processing.cpp
+++ b/src/processing.cpp
@@ -1,5 +1,3 @@
-#include "config.h"
-
 #include "processing.hpp"
 
 #include <boost/algorithm/string/predicate.hpp>
@@ -77,7 +75,8 @@
             // we own this path as well, which would be because of an
             // association.
             if ((pathIt->second.size() == 2) &&
-                (pathIt->second.find(MAPPER_BUSNAME) != pathIt->second.end()))
+                (pathIt->second.find("xyz.openbmc_project.ObjectMapper") !=
+                 pathIt->second.end()))
             {
                 // Remove the 2 association D-Bus paths and move the
                 // association to pending.
