Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2598)

Unified Diff: dbus/bus.h

Issue 510863002: dbus::ObjectManager: Add a match rule for properties before GetManagedObjects. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased; updated BUILD.gn; fixed crash from latest RunLoop changes Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « dbus/BUILD.gn ('k') | dbus/bus.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: dbus/bus.h
diff --git a/dbus/bus.h b/dbus/bus.h
index 647b1b72607012585481d7b875e59ed4d016c3da..544d31fc169bdf0038e1943af28f7823d1776b7d 100644
--- a/dbus/bus.h
+++ b/dbus/bus.h
@@ -354,9 +354,15 @@ class CHROME_DBUS_EXPORT Bus : public base::RefCountedThreadSafe<Bus> {
// will return a new object, method calls on any remaining copies of the
// previous object are not permitted.
//
+ // This method will asynchronously clean up any match rules that have been
+ // added for the object manager and invoke |callback| when the operation is
+ // complete. If this method returns false, then |callback| is never called.
+ // The |callback| argument must not be null.
+ //
// Must be called in the origin thread.
- virtual void RemoveObjectManager(const std::string& service_name,
- const ObjectPath& object_path);
+ virtual bool RemoveObjectManager(const std::string& service_name,
+ const ObjectPath& object_path,
+ const base::Closure& callback);
// Instructs all registered object managers to retrieve their set of managed
// objects from their respective remote objects. There is no need to call this
@@ -601,6 +607,14 @@ class CHROME_DBUS_EXPORT Bus : public base::RefCountedThreadSafe<Bus> {
void RemoveObjectProxyInternal(scoped_refptr<dbus::ObjectProxy> object_proxy,
const base::Closure& callback);
+ // Helper functions used for RemoveObjectManager().
+ void RemoveObjectManagerInternal(
+ scoped_refptr<dbus::ObjectManager> object_manager,
+ const base::Closure& callback);
+ void RemoveObjectManagerInternalHelper(
+ scoped_refptr<dbus::ObjectManager> object_manager,
+ const base::Closure& callback);
+
// Helper function used for UnregisterExportedObject().
void UnregisterExportedObjectInternal(
scoped_refptr<dbus::ExportedObject> exported_object);
« no previous file with comments | « dbus/BUILD.gn ('k') | dbus/bus.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698