shill: add chromeos DBus adaptor for Manager

Add RegisterAsync method to ManagerAdaptorInterface to allow
DBus service daemon to request the ownership of the DBus service
only after Manager interface registration is completed.  The same
requirement is not needed for other DBus adaptors.

BUG=chromium:503753
TEST=USE="chromeos_dbus asan clang" FEATURES=test emerge-$BOARD shill

Change-Id: I7f5e6fe58014dd20187897cb230a210b9b0b22e4
Reviewed-on: https://chromium-review.googlesource.com/283150
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Zeping Qiu <zqiu@chromium.org>
Tested-by: Zeping Qiu <zqiu@chromium.org>
diff --git a/manager.h b/manager.h
index b9f8181..73b0b68 100644
--- a/manager.h
+++ b/manager.h
@@ -34,6 +34,14 @@
 #include "shill/upstart/upstart.h"
 #include "shill/wimax/wimax_provider.h"
 
+#ifndef DISABLE_CHROMEOS_DBUS
+namespace chromeos {
+namespace dbus_utils {
+class AsyncEventSequencer;
+}  // namespace dbus_utils
+}  // namespace chromeos
+#endif  // DISABLE_CHROMEOS_DBUS
+
 namespace shill {
 
 class ControlInterface;
@@ -103,6 +111,10 @@
           const std::string& user_storage_directory);
   virtual ~Manager();
 
+#ifndef DISABLE_CHROMEOS_DBUS
+  void RegisterAsync(chromeos::dbus_utils::AsyncEventSequencer* sequencer);
+#endif  // DISABLE_CHROMEOS_DBUS
+
   virtual void AddDeviceToBlackList(const std::string& device_name);
 
   virtual void Start();