From 02743b707e2743cd0f0916e3b405191a48fa3947 Mon Sep 17 00:00:00 2001 From: "dpapad@chromium.org" Date: Tue, 14 Feb 2012 20:22:53 +0000 Subject: Revert 121920 - dbus: add ObjectPath type Rather than use std::string for object paths, add a dbus::ObjectPath type that wraps one while allowing more type-safety. This solves all sorts of issues with confusing object paths for strings, and allows us to do Properties code using templates disambiguating them from strings. BUG=chromium:109194 TEST=built and run tests Change-Id: Icaf6f19daea4af23a9d2ec0ed76d2cbd379d680e Review URL: http://codereview.chromium.org/9378039 TBR=keybuk@chromium.org Review URL: https://chromiumcodereview.appspot.com/9363045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121923 0039d316-1c4b-4281-b951-d872f2087c98 --- dbus/bus.h | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) (limited to 'dbus/bus.h') diff --git a/dbus/bus.h b/dbus/bus.h index e045386..22c2218 100644 --- a/dbus/bus.h +++ b/dbus/bus.h @@ -17,7 +17,6 @@ #include "base/synchronization/waitable_event.h" #include "base/threading/platform_thread.h" #include "base/tracked_objects.h" -#include "dbus/object_path.h" class MessageLoop; @@ -113,7 +112,7 @@ class ObjectProxy; // } // // void OnExported(const std::string& interface_name, -// const ObjectPath& object_path, +// const std::string& object_path, // bool success) { // // success is true if the method was exported successfully. // } @@ -195,13 +194,13 @@ class Bus : public base::RefCountedThreadSafe { // // Must be called in the origin thread. virtual ObjectProxy* GetObjectProxy(const std::string& service_name, - const ObjectPath& object_path); + const std::string& object_path); // Same as above, but also takes a bitfield of ObjectProxy::Options. // See object_proxy.h for available options. virtual ObjectProxy* GetObjectProxyWithOptions( const std::string& service_name, - const ObjectPath& object_path, + const std::string& object_path, int options); // Gets the exported object for the given service name and the object @@ -220,7 +219,7 @@ class Bus : public base::RefCountedThreadSafe { // // Must be called in the origin thread. virtual ExportedObject* GetExportedObject(const std::string& service_name, - const ObjectPath& object_path); + const std::string& object_path); // Shuts down the bus and blocks until it's done. More specifically, this // function does the following: @@ -354,7 +353,7 @@ class Bus : public base::RefCountedThreadSafe { // http://dbus.freedesktop.org/doc/api/html/group__DBusConnection.html // // BLOCKING CALL. - virtual bool TryRegisterObjectPath(const ObjectPath& object_path, + virtual bool TryRegisterObjectPath(const std::string& object_path, const DBusObjectPathVTable* vtable, void* user_data, DBusError* error); @@ -362,7 +361,7 @@ class Bus : public base::RefCountedThreadSafe { // Unregister the object path. // // BLOCKING CALL. - virtual void UnregisterObjectPath(const ObjectPath& object_path); + virtual void UnregisterObjectPath(const std::string& object_path); // Posts the task to the message loop of the thread that created the bus. virtual void PostTaskToOriginThread( @@ -462,7 +461,7 @@ class Bus : public base::RefCountedThreadSafe { // The following sets are used to check if rules/object_paths/filters // are properly cleaned up before destruction of the bus object. std::set match_rules_added_; - std::set registered_object_paths_; + std::set registered_object_paths_; std::set > filter_functions_added_; -- cgit v1.1