shill: implement manager.RequestScan (for WiFi only)
BUG=chromium-os:19831
TEST=unittests, WiFiManager/000_SSID_Length_Limit
note that 000_SSID_Length_Limit does not pass yet,
because we don't do IP configuration yet. but it
does get scan results.
Change-Id: I8993b3c646eda705271d1f7ad7d7341c692ae06b
Reviewed-on: http://gerrit.chromium.org/gerrit/7407
Reviewed-by: mukesh agrawal <quiche@chromium.org>
Tested-by: mukesh agrawal <quiche@chromium.org>
diff --git a/manager_dbus_adaptor.cc b/manager_dbus_adaptor.cc
index fa58416..8a9ecb4 100644
--- a/manager_dbus_adaptor.cc
+++ b/manager_dbus_adaptor.cc
@@ -11,6 +11,7 @@
#include <base/logging.h>
#include <dbus-c++/dbus.h>
+#include "shill/device.h"
#include "shill/error.h"
#include "shill/manager.h"
@@ -54,6 +55,18 @@
PropertyChanged(name, DBusAdaptor::StringToVariant(value));
}
+void ManagerDBusAdaptor::EmitRpcIdentifierArrayChanged(
+ const string &name,
+ const vector<string> &value) {
+ vector< ::DBus::Path> paths;
+ vector<string>::const_iterator it;
+ for (it = value.begin(); it != value.end(); ++it) {
+ paths.push_back(*it);
+ }
+
+ PropertyChanged(name, DBusAdaptor::PathArrayToVariant(paths));
+}
+
void ManagerDBusAdaptor::EmitStateChanged(const string &new_state) {
StateChanged(new_state);
}
@@ -101,8 +114,11 @@
void ManagerDBusAdaptor::PopAnyProfile(::DBus::Error &error) {
}
-void ManagerDBusAdaptor::RequestScan(const string &,
+void ManagerDBusAdaptor::RequestScan(const string &technology,
::DBus::Error &error) {
+ Error e;
+ manager_->RequestScan(technology, &e);
+ e.ToDBusError(&error);
}
void ManagerDBusAdaptor::EnableTechnology(const string &,