summaryrefslogtreecommitdiffstats
path: root/service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java
diff options
context:
space:
mode:
authorMitchell Wills <mwills@google.com>2016-02-11 17:20:39 -0800
committerMitchell Wills <mwills@google.com>2016-02-16 10:25:31 -0800
commit798a997d2e5bf8b3278bfeaa7ca841394e2db4b9 (patch)
tree9aa428fe8379d247e935efb5337abb6d5c1a2a64 /service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java
parentf2d417a69e52898d976ea01334794357ecdcfcd8 (diff)
downloadandroid_frameworks_opt_net_wifi-798a997d2e5bf8b3278bfeaa7ca841394e2db4b9.tar.gz
android_frameworks_opt_net_wifi-798a997d2e5bf8b3278bfeaa7ca841394e2db4b9.tar.bz2
android_frameworks_opt_net_wifi-798a997d2e5bf8b3278bfeaa7ca841394e2db4b9.zip
Add final bits of required functionality for ChannelHelper
Add support for getting the list of available channels for a band if available. Add support for estimating the duration of a scan. Change-Id: I8abe6d857400775f72969abd4b15e8763ec772c5
Diffstat (limited to 'service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java')
-rw-r--r--service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java23
1 files changed, 23 insertions, 0 deletions
diff --git a/service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java b/service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java
index 0d4296ab3..ea1f999ce 100644
--- a/service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java
+++ b/service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java
@@ -29,6 +29,15 @@ import java.util.Set;
*/
public class NoBandChannelHelper extends ChannelHelper {
+ private static final WifiScanner.ChannelSpec[] NO_CHANNELS = new WifiScanner.ChannelSpec[0];
+
+ /**
+ * These parameters are used to estimate the scan duration.
+ * This is a guess at the number of channels the device supports for use when a ScanSettings
+ * specifies a band instead of a list of channels.
+ */
+ private static final int ALL_BAND_CHANNEL_COUNT_ESTIMATE = 36;
+
@Override
public boolean settingsContainChannel(WifiScanner.ScanSettings settings, int channel) {
if (settings.band == WifiScanner.WIFI_BAND_UNSPECIFIED) {
@@ -43,6 +52,20 @@ public class NoBandChannelHelper extends ChannelHelper {
}
}
+ @Override
+ public WifiScanner.ChannelSpec[] getAvailableScanChannels(int band) {
+ return NO_CHANNELS; // not supported
+ }
+
+ @Override
+ public int estimateScanDuration(WifiScanner.ScanSettings settings) {
+ if (settings.band == WifiScanner.WIFI_BAND_UNSPECIFIED) {
+ return settings.channels.length * SCAN_PERIOD_PER_CHANNEL_MS;
+ } else {
+ return ALL_BAND_CHANNEL_COUNT_ESTIMATE * SCAN_PERIOD_PER_CHANNEL_MS;
+ }
+ }
+
/**
* ChannelCollection that merges channels without knowing which channels are in each band. In
* order to do this if any band is added or the maxChannels is exceeded then all channels will