Merge "Determine the multipath hint from data usage."
This commit is contained in:
committed by
Android (Google) Code Review
commit
f5082af9fa
@@ -140,6 +140,7 @@ import com.android.server.connectivity.IpConnectivityMetrics;
|
||||
import com.android.server.connectivity.KeepaliveTracker;
|
||||
import com.android.server.connectivity.LingerMonitor;
|
||||
import com.android.server.connectivity.MockableSystemProperties;
|
||||
import com.android.server.connectivity.MultipathPolicyTracker;
|
||||
import com.android.server.connectivity.NetworkAgentInfo;
|
||||
import com.android.server.connectivity.NetworkDiagnostics;
|
||||
import com.android.server.connectivity.NetworkMonitor;
|
||||
@@ -511,6 +512,9 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
@VisibleForTesting
|
||||
final MultinetworkPolicyTracker mMultinetworkPolicyTracker;
|
||||
|
||||
@VisibleForTesting
|
||||
final MultipathPolicyTracker mMultipathPolicyTracker;
|
||||
|
||||
/**
|
||||
* Implements support for the legacy "one network per network type" model.
|
||||
*
|
||||
@@ -894,6 +898,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
mContext, mHandler, () -> rematchForAvoidBadWifiUpdate());
|
||||
mMultinetworkPolicyTracker.start();
|
||||
|
||||
mMultipathPolicyTracker = new MultipathPolicyTracker(mContext, mHandler);
|
||||
|
||||
mDnsManager = new DnsManager(mContext, mNetd, mSystemProperties);
|
||||
registerPrivateDnsSettingsCallbacks();
|
||||
}
|
||||
@@ -1974,6 +1980,9 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
pw.println();
|
||||
dumpAvoidBadWifiSettings(pw);
|
||||
|
||||
pw.println();
|
||||
mMultipathPolicyTracker.dump(pw);
|
||||
|
||||
if (argsContain(args, SHORT_ARG) == false) {
|
||||
pw.println();
|
||||
synchronized (mValidationLogs) {
|
||||
@@ -2891,6 +2900,11 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
return ConnectivityManager.MULTIPATH_PREFERENCE_UNMETERED;
|
||||
}
|
||||
|
||||
Integer networkPreference = mMultipathPolicyTracker.getMultipathPreference(network);
|
||||
if (networkPreference != null) {
|
||||
return networkPreference;
|
||||
}
|
||||
|
||||
return mMultinetworkPolicyTracker.getMeteredMultipathPreference();
|
||||
}
|
||||
|
||||
@@ -2984,6 +2998,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
for (NetworkAgentInfo nai : mNetworkAgentInfos.values()) {
|
||||
nai.networkMonitor.systemReady = true;
|
||||
}
|
||||
mMultipathPolicyTracker.start();
|
||||
break;
|
||||
}
|
||||
case EVENT_REVALIDATE_NETWORK: {
|
||||
|
||||
@@ -122,6 +122,7 @@ public class MultinetworkPolicyTracker {
|
||||
return mAvoidBadWifi;
|
||||
}
|
||||
|
||||
// TODO: move this to MultipathPolicyTracker.
|
||||
public int getMeteredMultipathPreference() {
|
||||
return mMeteredMultipathPreference;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user