commit | 7de7e02e14074989757a4f9f220de2310cc05236 | [log] [tgz] |
---|---|---|
author | Paul Stewart <pstew@chromium.org> | Wed Aug 28 09:42:50 2013 -0700 |
committer | chrome-internal-fetch <chrome-internal-fetch@google.com> | Sat Aug 31 00:09:12 2013 +0000 |
tree | bbfa8aba65f33aebeb23db99b86e4c7d75243732 | |
parent | d3d0388d4c93e0f1f526671f3826c219cf438886 [diff] |
shill: Manager: Cache Geolocation Info Instead of polling devices for their current scan information when Manager::GetNetworksForGeolocation() is called, instead have devices notify the Manager when they have new (and complete) geolocation information to share. At this point in time the Manager caches this information in a per-technology map which it will return to callers asking for geolocation information. As a result, callers receive the most complete information from the last scan. The task of ensuring that this geolocation information is maintained at a desired "freshness" is left as a separate exercise. BUG=chromium:236418,chromium:217247 TEST=Unit tests; connect to AP and allow scan cache to expire ("list-services" only shows connected AP), call manager.GetNetworksForGeolocation() and ensure the data from the most recent scan is still available. Change-Id: I67316656168173ad3ed6c19a3368c9f75b7322f3 Reviewed-on: https://chromium-review.googlesource.com/167310 Reviewed-by: Wade Guthrie <wdg@chromium.org> Reviewed-by: Gaurav Shah <gauravsh@chromium.org> Tested-by: Paul Stewart <pstew@chromium.org> Commit-Queue: Paul Stewart <pstew@chromium.org>