chromeos-dbus-bindings: Add bus parameter to adaptor constructor Take both an object manager and bus pointer For callers who wish not to use an object manager. BUG=chromium:426408 TEST=Unit tests + compile lorgnette Change-Id: I74d0405e0122ac058430c06d001076d3edcc1fde Reviewed-on: https://chromium-review.googlesource.com/225157 Reviewed-by: Alex Deymo <[email protected]> Tested-by: Paul Stewart <[email protected]> Commit-Queue: Paul Stewart <[email protected]>
diff --git a/chromeos-dbus-bindings/adaptor_generator.cc b/chromeos-dbus-bindings/adaptor_generator.cc index df77629..02c751e 100644 --- a/chromeos-dbus-bindings/adaptor_generator.cc +++ b/chromeos-dbus-bindings/adaptor_generator.cc
@@ -100,6 +100,7 @@ block.AddLine(StringPrintf("%s(", class_name.c_str())); block.PushOffset(kLineContinuationOffset); block.AddLine("chromeos::dbus_utils::ExportedObjectManager* object_manager,"); + block.AddLine("const scoped_refptr<dbus::Bus>& bus,"); block.AddLine("const std::string& object_path,"); block.AddLine("MethodInterface* interface) // Owned by caller."); block.AddLine(": interface_(interface),"); @@ -107,7 +108,7 @@ block.AddLine("dbus_object_("); block.PushOffset(kLineContinuationOffset); block.AddLine("object_manager,"); - block.AddLine("object_manager->GetBus(),"); + block.AddLine("bus,"); block.AddLine("dbus::ObjectPath(object_path)),"); block.PopOffset(); block.AddLine("dbus_interface_(");
diff --git a/chromeos-dbus-bindings/adaptor_generator_unittest.cc b/chromeos-dbus-bindings/adaptor_generator_unittest.cc index 58e0863..993091a 100644 --- a/chromeos-dbus-bindings/adaptor_generator_unittest.cc +++ b/chromeos-dbus-bindings/adaptor_generator_unittest.cc
@@ -66,12 +66,13 @@ }; TestInterfaceAdaptor( chromeos::dbus_utils::ExportedObjectManager* object_manager, + const scoped_refptr<dbus::Bus>& bus, const std::string& object_path, MethodInterface* interface) // Owned by caller. : interface_(interface), dbus_object_( object_manager, - object_manager->GetBus(), + bus, dbus::ObjectPath(object_path)), dbus_interface_( dbus_object_.AddOrGetInterface("org.chromium.TestInterface")) {