Chromium Code Reviews| Index: dbus/bus.h |
| diff --git a/dbus/bus.h b/dbus/bus.h |
| index 1bf07d9e05384ac3c57216cedc0ac73698f5c5cc..0f3e00968348721cb60ac925f407bba400c9279c 100644 |
| --- a/dbus/bus.h |
| +++ b/dbus/bus.h |
| @@ -201,6 +201,13 @@ class CHROME_DBUS_EXPORT Bus : public base::RefCountedThreadSafe<Bus> { |
| // - the requested service name. |
| // - whether ownership has been obtained or not. |
| typedef base::Callback<void (const std::string&, bool)> OnOwnershipCallback; |
| + |
| + // Called when the connection with dbus-daemon is closed. This function is |
| + // also called when the connection is closed by ShutdownAndBlock. |callback| |
| + // can be null callback. |
| + typedef base::Callback<void ()> OnDisconnectedCallback; |
|
satorux1
2013/02/13 08:06:53
I think you can just use base::Closure because thi
Seigo Nonaka
2013/02/13 09:45:29
Done.
|
| + void SetDisconnectedCallback(const OnDisconnectedCallback& callback); |
| + |
| // TODO(satorux): Remove the service name parameter as the caller of |
| // RequestOwnership() knows the service name. |
| @@ -491,6 +498,7 @@ class CHROME_DBUS_EXPORT Bus : public base::RefCountedThreadSafe<Bus> { |
| private: |
| friend class base::RefCountedThreadSafe<Bus>; |
| + friend class DisconnectableBusForTesting; |
|
satorux1
2013/02/13 08:06:53
This worries me because
1) 'friend' should be avo
Seigo Nonaka
2013/02/13 09:45:29
Sure, adding CloseConnection.
Thanks.
|
| // Helper function used for RemoveObjectProxy(). |
| void RemoveObjectProxyInternal(scoped_refptr<dbus::ObjectProxy> object_proxy, |
| @@ -601,6 +609,7 @@ class CHROME_DBUS_EXPORT Bus : public base::RefCountedThreadSafe<Bus> { |
| int num_pending_timeouts_; |
| std::string address_; |
| + OnDisconnectedCallback on_disconnected_callback_; |
| DISALLOW_COPY_AND_ASSIGN(Bus); |
| }; |