Index: dbus/bus.cc |
diff --git a/dbus/bus.cc b/dbus/bus.cc |
index 0c6a4217235790b3315e1583a31193af49dfa900..3b2f059c5975cad4ac06e92245e758320db1a52a 100644 |
--- a/dbus/bus.cc |
+++ b/dbus/bus.cc |
@@ -16,6 +16,7 @@ |
#include "base/threading/thread_restrictions.h" |
#include "base/time.h" |
#include "dbus/exported_object.h" |
+#include "dbus/object_path.h" |
#include "dbus/object_proxy.h" |
#include "dbus/scoped_dbus_error.h" |
@@ -207,18 +208,19 @@ Bus::~Bus() { |
} |
ObjectProxy* Bus::GetObjectProxy(const std::string& service_name, |
- const std::string& object_path) { |
+ const ObjectPath& object_path) { |
return GetObjectProxyWithOptions(service_name, object_path, |
ObjectProxy::DEFAULT_OPTIONS); |
} |
ObjectProxy* Bus::GetObjectProxyWithOptions(const std::string& service_name, |
- const std::string& object_path, |
+ const dbus::ObjectPath& object_path, |
int options) { |
AssertOnOriginThread(); |
// Check if we already have the requested object proxy. |
- const ObjectProxyTable::key_type key(service_name + object_path, options); |
+ const ObjectProxyTable::key_type key(service_name + object_path.value(), |
+ options); |
ObjectProxyTable::iterator iter = object_proxy_table_.find(key); |
if (iter != object_proxy_table_.end()) { |
return iter->second; |
@@ -232,11 +234,11 @@ ObjectProxy* Bus::GetObjectProxyWithOptions(const std::string& service_name, |
} |
ExportedObject* Bus::GetExportedObject(const std::string& service_name, |
- const std::string& object_path) { |
+ const ObjectPath& object_path) { |
AssertOnOriginThread(); |
// Check if we already have the requested exported object. |
- const std::string key = service_name + object_path; |
+ const std::string key = service_name + object_path.value(); |
ExportedObjectTable::iterator iter = exported_object_table_.find(key); |
if (iter != exported_object_table_.end()) { |
return iter->second; |
@@ -521,7 +523,7 @@ void Bus::RemoveMatch(const std::string& match_rule, DBusError* error) { |
match_rules_added_.erase(match_rule); |
} |
-bool Bus::TryRegisterObjectPath(const std::string& object_path, |
+bool Bus::TryRegisterObjectPath(const ObjectPath& object_path, |
const DBusObjectPathVTable* vtable, |
void* user_data, |
DBusError* error) { |
@@ -530,13 +532,13 @@ bool Bus::TryRegisterObjectPath(const std::string& object_path, |
if (registered_object_paths_.find(object_path) != |
registered_object_paths_.end()) { |
- LOG(ERROR) << "Object path already registered: " << object_path; |
+ LOG(ERROR) << "Object path already registered: " << object_path.value(); |
return false; |
} |
const bool success = dbus_connection_try_register_object_path( |
connection_, |
- object_path.c_str(), |
+ object_path.value().c_str(), |
vtable, |
user_data, |
error); |
@@ -545,20 +547,20 @@ bool Bus::TryRegisterObjectPath(const std::string& object_path, |
return success; |
} |
-void Bus::UnregisterObjectPath(const std::string& object_path) { |
+void Bus::UnregisterObjectPath(const ObjectPath& object_path) { |
DCHECK(connection_); |
AssertOnDBusThread(); |
if (registered_object_paths_.find(object_path) == |
registered_object_paths_.end()) { |
LOG(ERROR) << "Requested to unregister an unknown object path: " |
- << object_path; |
+ << object_path.value(); |
return; |
} |
const bool success = dbus_connection_unregister_object_path( |
connection_, |
- object_path.c_str()); |
+ object_path.value().c_str()); |
CHECK(success) << "Unable to allocate memory"; |
registered_object_paths_.erase(object_path); |
} |