shill: make dbus adaptors introspectable
BUG=chromium-os:20090
TEST=manual: run "dbusxx-introspect --system / org.chromium.flimflam",
check output for methods and signals
note that there is one bug with the introspection data generated by
shill with this patch. namely, the introspection data for path '/'
lists the methods+signals of the manager object. but it does not list
the names of other object classes (device, ipconfig, profile, service),
as flimflam does.
for other object classes, shill behaves as flimflam does. e.g.
introspecting /device lists device instances, and introspecting
/device/<id> lists the methods+signals of the device class.
i'd like to merge this as is, and worry about the lack of object class
names in the top-level introspection later, if/when it becomes an issue.
Change-Id: I40a5f5c6188b7e93da92f073ce554a36a8b5837d
Reviewed-on: http://gerrit.chromium.org/gerrit/7298
Tested-by: mukesh agrawal <quiche@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
diff --git a/dbus_adaptor.h b/dbus_adaptor.h
index d15e2e0..11de9fb 100644
--- a/dbus_adaptor.h
+++ b/dbus_adaptor.h
@@ -22,7 +22,8 @@
class PropertyStore;
// Superclass for all DBus-backed Adaptor objects
-class DBusAdaptor : public DBus::ObjectAdaptor {
+class DBusAdaptor : public DBus::ObjectAdaptor,
+ public DBus::IntrospectableAdaptor {
public:
DBusAdaptor(DBus::Connection* conn, const std::string &object_path);
virtual ~DBusAdaptor();