shill: Add support for saving wifi frequency in service object.
BUG=chromium-os:25882
TEST=Unit tests, network_WiFiManager (7/9)
Change-Id: Ia491ef6b240778781470d7ff820e23deb7aa28f0
Reviewed-on: https://gerrit.chromium.org/gerrit/15363
Commit-Ready: Thieu Le <thieule@chromium.org>
Reviewed-by: Thieu Le <thieule@chromium.org>
Tested-by: Thieu Le <thieule@chromium.org>
diff --git a/wifi_service.cc b/wifi_service.cc
index 6ef3dbb..8ef1722 100644
--- a/wifi_service.cc
+++ b/wifi_service.cc
@@ -55,6 +55,7 @@
security_(security),
mode_(mode),
hidden_ssid_(hidden_ssid),
+ frequency_(0),
task_factory_(this),
wifi_(device),
ssid_(ssid) {
@@ -170,6 +171,7 @@
void WiFiService::AddEndpoint(WiFiEndpointConstRefPtr endpoint) {
DCHECK(endpoint->ssid() == ssid());
endpoints_.insert(endpoint);
+ // TODO: Track signal strength (crosbug.com/16786).
}
void WiFiService::RemoveEndpoint(WiFiEndpointConstRefPtr endpoint) {
@@ -184,6 +186,16 @@
endpoints_.erase(i);
}
+void WiFiService::NotifyCurrentEndpoint(const WiFiEndpoint &endpoint) {
+ DCHECK(endpoints_.find(&endpoint) != endpoints_.end());
+ frequency_ = endpoint.frequency();
+ // TODO: Copy BSSID here (crosbug.com/22377).
+ // TODO: Copy signal strength (crosbug.com/16786).
+ // TODO(thieule): Update these values when supplicant signals that they
+ // have changed.
+ // (crosbug.com/16786)
+}
+
string WiFiService::GetStorageIdentifier() const {
return storage_identifier_;
}