summaryrefslogtreecommitdiffstats
path: root/dbus/mock_bus.h
diff options
context:
space:
mode:
authorkeybuk@chromium.org <keybuk@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-03-10 01:12:52 +0000
committerkeybuk@chromium.org <keybuk@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-03-10 01:12:52 +0000
commit15e7b16ff24684e2678fe1b4964125b42a4c4018 (patch)
tree5f53e19b8a27e5af437e342d5464b110f4980a48 /dbus/mock_bus.h
parent093fcf536f77186f754119854ab729e68c31f784 (diff)
downloadchromium_src-15e7b16ff24684e2678fe1b4964125b42a4c4018.zip
chromium_src-15e7b16ff24684e2678fe1b4964125b42a4c4018.tar.gz
chromium_src-15e7b16ff24684e2678fe1b4964125b42a4c4018.tar.bz2
dbus: remove service name from ExportedObject
Well-known names in D-Bus are merely aliases to unique connection ids maintained by the bus, they have no purpose in qualifying object paths or interfaces and it's perfectly legimiate for a client to make requests to the unique connection id (e.g. in response to a signal, which does not reference the well-known name of the origin connection). Remove the service_name member from dbus::ExportedObject, from its constructor and from dbus::Bus::GetExportedObject and require code to call dbus::Bus::RequestOwnership if a well-known name is desired. This requires making that function callable from the origin thread with a callback for the return value. BUG=chromium-os:27101 TEST=dbus_unittests Change-Id: Ib91de8b68ad9c3b432e224a2c715f0c2ca1af463 Review URL: http://codereview.chromium.org/9668018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@125970 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'dbus/mock_bus.h')
-rw-r--r--dbus/mock_bus.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/dbus/mock_bus.h b/dbus/mock_bus.h
index 463790a..88fc084 100644
--- a/dbus/mock_bus.h
+++ b/dbus/mock_bus.h
@@ -26,13 +26,15 @@ class MockBus : public Bus {
ObjectProxy*(const std::string& service_name,
const ObjectPath& object_path,
int options));
- MOCK_METHOD2(GetExportedObject, ExportedObject*(
- const std::string& service_name,
+ MOCK_METHOD1(GetExportedObject, ExportedObject*(
const ObjectPath& object_path));
MOCK_METHOD0(ShutdownAndBlock, void());
MOCK_METHOD0(ShutdownOnDBusThreadAndBlock, void());
MOCK_METHOD0(Connect, bool());
- MOCK_METHOD1(RequestOwnership, bool(const std::string& service_name));
+ MOCK_METHOD2(RequestOwnership, void(
+ const std::string& service_name,
+ OnOwnershipCallback on_ownership_callback));
+ MOCK_METHOD1(RequestOwnershipAndBlock, bool(const std::string& service_name));
MOCK_METHOD1(ReleaseOwnership, bool(const std::string& service_name));
MOCK_METHOD0(SetUpAsyncOperations, bool());
MOCK_METHOD3(SendWithReplyAndBlock, DBusMessage*(DBusMessage* request,