summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--service/java/com/android/server/wifi/ExternalScoreEvaluator.java7
-rw-r--r--service/java/com/android/server/wifi/WifiConnectivityManager.java7
-rw-r--r--service/java/com/android/server/wifi/WifiInjector.java8
-rw-r--r--tests/wifitests/src/com/android/server/wifi/ExternalScoreEvaluatorTest.java18
-rw-r--r--tests/wifitests/src/com/android/server/wifi/WifiConnectivityManagerTest.java3
5 files changed, 17 insertions, 26 deletions
diff --git a/service/java/com/android/server/wifi/ExternalScoreEvaluator.java b/service/java/com/android/server/wifi/ExternalScoreEvaluator.java
index 2cd4755de..ec0d46bea 100644
--- a/service/java/com/android/server/wifi/ExternalScoreEvaluator.java
+++ b/service/java/com/android/server/wifi/ExternalScoreEvaluator.java
@@ -46,19 +46,18 @@ public class ExternalScoreEvaluator implements WifiNetworkSelector.NetworkEvalua
private final NetworkScoreManager mScoreManager;
private final WifiNetworkScoreCache mScoreCache;
- ExternalScoreEvaluator(Context context, WifiConfigManager configManager, Clock clock,
- LocalLog localLog) {
+ ExternalScoreEvaluator(Context context, WifiConfigManager configManager,
+ WifiNetworkScoreCache scoreCache, Clock clock, LocalLog localLog) {
mWifiConfigManager = configManager;
mClock = clock;
mLocalLog = localLog;
+ mScoreCache = scoreCache;
mScoreManager =
(NetworkScoreManager) context.getSystemService(Context.NETWORK_SCORE_SERVICE);
if (mScoreManager != null) {
- mScoreCache = new WifiNetworkScoreCache(context);
mScoreManager.registerNetworkScoreCache(NetworkKey.TYPE_WIFI, mScoreCache);
} else {
localLog("Couldn't get NETWORK_SCORE_SERVICE.");
- mScoreCache = null;
}
}
diff --git a/service/java/com/android/server/wifi/WifiConnectivityManager.java b/service/java/com/android/server/wifi/WifiConnectivityManager.java
index 2f7081dab..fa4ee077c 100644
--- a/service/java/com/android/server/wifi/WifiConnectivityManager.java
+++ b/service/java/com/android/server/wifi/WifiConnectivityManager.java
@@ -467,8 +467,9 @@ public class WifiConnectivityManager {
*/
WifiConnectivityManager(Context context, WifiStateMachine stateMachine,
WifiScanner scanner, WifiConfigManager configManager, WifiInfo wifiInfo,
- WifiNetworkSelector networkSelector, WifiLastResortWatchdog wifiLastResortWatchdog,
- WifiMetrics wifiMetrics, Looper looper, Clock clock, boolean enable) {
+ WifiNetworkSelector networkSelector, WifiNetworkScoreCache scoreCache,
+ WifiLastResortWatchdog wifiLastResortWatchdog, WifiMetrics wifiMetrics,
+ Looper looper, Clock clock, boolean enable) {
mStateMachine = stateMachine;
mScanner = scanner;
mConfigManager = configManager;
@@ -519,7 +520,7 @@ public class WifiConnectivityManager {
SAVED_NETWORK_EVALUATOR_PRIORITY);
ExternalScoreEvaluator externalScoreEvaluator = new ExternalScoreEvaluator(context,
- mConfigManager, mClock, mLocalLog);
+ mConfigManager, scoreCache, mClock, mLocalLog);
mNetworkSelector.registerNetworkEvaluator(externalScoreEvaluator,
EXTERNAL_SCORE_EVALUATOR_PRIORITY);
diff --git a/service/java/com/android/server/wifi/WifiInjector.java b/service/java/com/android/server/wifi/WifiInjector.java
index 48e0b98e8..baf75a7f0 100644
--- a/service/java/com/android/server/wifi/WifiInjector.java
+++ b/service/java/com/android/server/wifi/WifiInjector.java
@@ -90,6 +90,7 @@ public class WifiInjector {
private final WifiConfigStoreLegacy mWifiConfigStoreLegacy;
private final WifiConfigManager mWifiConfigManager;
private final WifiNetworkSelector mWifiNetworkSelector;
+ private final WifiNetworkScoreCache mWifiNetworkScoreCache;
private WifiScanner mWifiScanner;
private final WifiPermissionsWrapper mWifiPermissionsWrapper;
private final WifiPermissionsUtil mWifiPermissionsUtil;
@@ -175,6 +176,7 @@ public class WifiInjector {
mSimAccessor = new SIMAccessor(mContext);
mPasspointManager = new PasspointManager(mContext, mWifiNative, mWifiKeyStore, mClock,
mSimAccessor, new PasspointObjectFactory());
+ mWifiNetworkScoreCache = new WifiNetworkScoreCache(mContext);
}
/**
@@ -372,9 +374,9 @@ public class WifiInjector {
boolean hasConnectionRequests) {
return new WifiConnectivityManager(mContext, mWifiStateMachine, getWifiScanner(),
mWifiConfigManager, wifiInfo, mWifiNetworkSelector,
- mWifiLastResortWatchdog, mWifiMetrics,
- mWifiStateMachineHandlerThread.getLooper(), mClock,
- hasConnectionRequests);
+ mWifiNetworkScoreCache, mWifiLastResortWatchdog,
+ mWifiMetrics, mWifiStateMachineHandlerThread.getLooper(),
+ mClock, hasConnectionRequests);
}
public WifiPermissionsUtil getWifiPermissionsUtil() {
diff --git a/tests/wifitests/src/com/android/server/wifi/ExternalScoreEvaluatorTest.java b/tests/wifitests/src/com/android/server/wifi/ExternalScoreEvaluatorTest.java
index ada21461f..238930d1b 100644
--- a/tests/wifitests/src/com/android/server/wifi/ExternalScoreEvaluatorTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/ExternalScoreEvaluatorTest.java
@@ -22,10 +22,8 @@ import static com.android.server.wifi.WifiConfigurationTestUtil.SECURITY_PSK;
import static org.junit.Assert.*;
import static org.mockito.Mockito.*;
-import android.app.test.MockAnswerUtil.AnswerWithArguments;
import android.content.Context;
import android.content.res.Resources;
-import android.net.INetworkScoreCache;
import android.net.NetworkScoreManager;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
@@ -51,8 +49,9 @@ public class ExternalScoreEvaluatorTest {
@Before
public void setUp() throws Exception {
mResource = getResource();
- mScoreManager = getScoreManager();
+ mScoreManager = mock(NetworkScoreManager.class);
mContext = getContext();
+ mScoreCache = new WifiNetworkScoreCache(mContext);
mWifiConfigManager = getWifiConfigManager();
when(mClock.getElapsedSinceBootMillis()).thenReturn(SystemClock.elapsedRealtime());
@@ -62,7 +61,7 @@ public class ExternalScoreEvaluatorTest {
R.integer.config_wifi_framework_wifi_score_low_rssi_threshold_5GHz);
mExternalScoreEvaluator = new ExternalScoreEvaluator(mContext, mWifiConfigManager,
- mClock, null);
+ mScoreCache, mClock, null);
}
/** Cleans up test. */
@@ -82,17 +81,6 @@ public class ExternalScoreEvaluatorTest {
private int mThresholdQualifiedRssi5G;
private static final String TAG = "External Score Evaluator Unit Test";
- NetworkScoreManager getScoreManager() {
- NetworkScoreManager scoreManager = mock(NetworkScoreManager.class);
-
- doAnswer(new AnswerWithArguments() {
- public void answer(int networkType, INetworkScoreCache scoreCache) {
- mScoreCache = (WifiNetworkScoreCache) scoreCache;
- }}).when(scoreManager).registerNetworkScoreCache(anyInt(), anyObject());
-
- return scoreManager;
- }
-
Context getContext() {
Context context = mock(Context.class);
diff --git a/tests/wifitests/src/com/android/server/wifi/WifiConnectivityManagerTest.java b/tests/wifitests/src/com/android/server/wifi/WifiConnectivityManagerTest.java
index 2a57a6a78..cb50471d2 100644
--- a/tests/wifitests/src/com/android/server/wifi/WifiConnectivityManagerTest.java
+++ b/tests/wifitests/src/com/android/server/wifi/WifiConnectivityManagerTest.java
@@ -105,6 +105,7 @@ public class WifiConnectivityManagerTest {
@Mock private Clock mClock;
@Mock private WifiLastResortWatchdog mWifiLastResortWatchdog;
@Mock private WifiMetrics mWifiMetrics;
+ @Mock private WifiNetworkScoreCache mScoreCache;
private MockResources mResources;
private static final int CANDIDATE_NETWORK_ID = 0;
@@ -252,7 +253,7 @@ public class WifiConnectivityManagerTest {
WifiConnectivityManager createConnectivityManager() {
return new WifiConnectivityManager(mContext, mWifiStateMachine, mWifiScanner,
- mWifiConfigManager, mWifiInfo, mWifiNS, mWifiLastResortWatchdog,
+ mWifiConfigManager, mWifiInfo, mWifiNS, mScoreCache, mWifiLastResortWatchdog,
mWifiMetrics, mLooper.getLooper(), mClock, true);
}