Don't log meaningless caps change

The VPN events rotate very fast because the NC's estimate
of the bandwidth change a lot. Don't print these changes.

Test: manual
Bug: 238696406
(cherry picked from https://android-review.googlesource.com/q/commit:7ffb9b402c27163eba3d5193b4f9160e2929f9cf)
Merged-In: I70f0393fad90f43f827b94ac6bee236dff723b97
Change-Id: I70f0393fad90f43f827b94ac6bee236dff723b97
This commit is contained in:
Chalard Jean
2023-04-21 18:51:37 +09:00
committed by Chiachang Wang
parent 74ebaefe2f
commit f59aeb7cd1

View File

@@ -3828,10 +3828,27 @@ public class Vpn {
}, retryDelayMs, TimeUnit.MILLISECONDS); }, retryDelayMs, TimeUnit.MILLISECONDS);
} }
private boolean significantCapsChange(@Nullable final NetworkCapabilities left,
@Nullable final NetworkCapabilities right) {
if (left == right) return false;
return null == left
|| null == right
|| !Arrays.equals(left.getTransportTypes(), right.getTransportTypes())
|| !Arrays.equals(left.getCapabilities(), right.getCapabilities())
|| !Arrays.equals(left.getEnterpriseIds(), right.getEnterpriseIds())
|| !Objects.equals(left.getTransportInfo(), right.getTransportInfo())
|| !Objects.equals(left.getAllowedUids(), right.getAllowedUids())
|| !Objects.equals(left.getUnderlyingNetworks(), right.getUnderlyingNetworks())
|| !Objects.equals(left.getNetworkSpecifier(), right.getNetworkSpecifier());
}
/** Called when the NetworkCapabilities of underlying network is changed */ /** Called when the NetworkCapabilities of underlying network is changed */
public void onDefaultNetworkCapabilitiesChanged(@NonNull NetworkCapabilities nc) { public void onDefaultNetworkCapabilitiesChanged(@NonNull NetworkCapabilities nc) {
if (significantCapsChange(mUnderlyingNetworkCapabilities, nc)) {
// TODO : make this log terser
mEventChanges.log("[UnderlyingNW] Cap changed from " mEventChanges.log("[UnderlyingNW] Cap changed from "
+ mUnderlyingNetworkCapabilities + " to " + nc); + mUnderlyingNetworkCapabilities + " to " + nc);
}
final NetworkCapabilities oldNc = mUnderlyingNetworkCapabilities; final NetworkCapabilities oldNc = mUnderlyingNetworkCapabilities;
mUnderlyingNetworkCapabilities = nc; mUnderlyingNetworkCapabilities = nc;
if (oldNc == null || !nc.getSubscriptionIds().equals(oldNc.getSubscriptionIds())) { if (oldNc == null || !nc.getSubscriptionIds().equals(oldNc.getSubscriptionIds())) {