Merge "Some fixes in ConnectivityService event logging" into nyc-dev am: 7261fb27de

am: eb8372d38c

* commit 'eb8372d38c31af196285d2fee60ae53adb113eca':
  Some fixes in ConnectivityService event logging

Change-Id: Ie356b2df2b84b36e6a2a52d3246ff434557ee89b
This commit is contained in:
Hugo Benichi
2016-04-21 04:15:10 +00:00
committed by android-build-merger

View File

@@ -71,7 +71,7 @@ import android.net.ProxyInfo;
import android.net.RouteInfo;
import android.net.UidRange;
import android.net.Uri;
import android.net.metrics.ConnectivityServiceChangeEvent;
import android.net.metrics.DefaultNetworkEvent;
import android.os.Binder;
import android.os.Build;
import android.os.Bundle;
@@ -2217,7 +2217,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
rematchAllNetworksAndRequests(null, 0);
if (wasDefault && getDefaultNetwork() == null) {
// Log that we lost the default network and there is no replacement.
logConnectivityServiceChangeEvent(null, nai);
logDefaultNetworkEvent(null, nai);
}
if (nai.created) {
// Tell netd to clean up the configuration for this network
@@ -4452,8 +4452,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
handleApplyDefaultProxy(newNetwork.linkProperties.getHttpProxy());
updateTcpBufferSizes(newNetwork);
setDefaultDnsSystemProperties(newNetwork.linkProperties.getDnsServers());
logConnectivityServiceChangeEvent(newNetwork, prevNetwork);
logDefaultNetworkEvent(newNetwork, prevNetwork);
}
// Handles a network appearing or improving its score.
@@ -5075,21 +5074,24 @@ public class ConnectivityService extends IConnectivityManager.Stub
return new NetworkMonitor(context, handler, nai, defaultRequest);
}
private static void logConnectivityServiceChangeEvent(
NetworkAgentInfo next, NetworkAgentInfo prev) {
final int newNetId = (next == null) ? NETID_UNSET : next.network.netId;
final int[] newTransportTypes = (next == null)
? new int[0]
: next.networkCapabilities.getTransportTypes();
private static void logDefaultNetworkEvent(NetworkAgentInfo newNai, NetworkAgentInfo prevNai) {
int newNetid = NETID_UNSET;
int prevNetid = NETID_UNSET;
int[] transports = new int[0];
boolean hadIPv4 = false;
boolean hadIPv6 = false;
final int oldNetId = (prev == null) ? NETID_UNSET : prev.network.netId;
final boolean hadIPv4 = (prev != null) &&
prev.linkProperties.hasIPv4Address() &&
prev.linkProperties.hasIPv4DefaultRoute();
final boolean hadIPv6 = (prev != null) &&
prev.linkProperties.hasGlobalIPv6Address() &&
prev.linkProperties.hasIPv6DefaultRoute();
ConnectivityServiceChangeEvent.logEvent(newNetId, newTransportTypes,
oldNetId, hadIPv4, hadIPv6);
if (newNai != null) {
newNetid = newNai.network.netId;
transports = newNai.networkCapabilities.getTransportTypes();
}
if (prevNai != null) {
prevNetid = prevNai.network.netId;
final LinkProperties lp = prevNai.linkProperties;
hadIPv4 = lp.hasIPv4Address() && lp.hasIPv4DefaultRoute();
hadIPv6 = lp.hasGlobalIPv6Address() && lp.hasIPv6DefaultRoute();
}
DefaultNetworkEvent.logEvent(newNetid, transports, prevNetid, hadIPv4, hadIPv6);
}
}