Merge "Generalize some PANS methods" am: fcbc6ff6b1

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1612258

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I7baa17a0f882ec21f766c9f7dc2c0694853fb467
This commit is contained in:
Chalard Jean
2021-03-05 05:47:57 +00:00
committed by Automerger Merge Worker

View File

@@ -7168,7 +7168,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
toUidRangeStableParcels(nri.getUids())); toUidRangeStableParcels(nri.getUids()));
} }
} catch (RemoteException | ServiceSpecificException e) { } catch (RemoteException | ServiceSpecificException e) {
loge("Exception setting OEM network preference default network", e); loge("Exception setting app default network", e);
} }
} }
@@ -9053,7 +9053,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
} }
final ArraySet<NetworkRequestInfo> nris = final ArraySet<NetworkRequestInfo> nris =
new OemNetworkRequestFactory().createNrisFromOemNetworkPreferences(preference); new OemNetworkRequestFactory().createNrisFromOemNetworkPreferences(preference);
updateDefaultNetworksForOemNetworkPreference(nris); replaceDefaultNetworkRequestsForPreference(nris);
mOemNetworkPreferences = preference; mOemNetworkPreferences = preference;
// TODO http://b/176496396 persist data to shared preferences. // TODO http://b/176496396 persist data to shared preferences.
@@ -9066,7 +9066,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
} }
} }
private void updateDefaultNetworksForOemNetworkPreference( private void replaceDefaultNetworkRequestsForPreference(
@NonNull final Set<NetworkRequestInfo> nris) { @NonNull final Set<NetworkRequestInfo> nris) {
// Pass in a defensive copy as this collection will be updated on remove. // Pass in a defensive copy as this collection will be updated on remove.
handleRemoveNetworkRequests(new ArraySet<>(mDefaultNetworkRequests)); handleRemoveNetworkRequests(new ArraySet<>(mDefaultNetworkRequests));
@@ -9152,6 +9152,14 @@ public class ConnectivityService extends IConnectivityManager.Stub
return callbackRequestsToRegister; return callbackRequestsToRegister;
} }
private static void setNetworkRequestUids(@NonNull final List<NetworkRequest> requests,
@NonNull final Set<UidRange> uids) {
final Set<UidRange> ranges = new ArraySet<>(uids);
for (final NetworkRequest req : requests) {
req.networkCapabilities.setUids(ranges);
}
}
/** /**
* Class used to generate {@link NetworkRequestInfo} based off of {@link OemNetworkPreferences}. * Class used to generate {@link NetworkRequestInfo} based off of {@link OemNetworkPreferences}.
*/ */
@@ -9228,7 +9236,11 @@ public class ConnectivityService extends IConnectivityManager.Stub
+ " called with invalid preference of " + preference); + " called with invalid preference of " + preference);
} }
setOemNetworkRequestUids(requests, uids); final ArraySet ranges = new ArraySet<Integer>();
for (final int uid : uids) {
ranges.add(new UidRange(uid, uid));
}
setNetworkRequestUids(requests, ranges);
return new NetworkRequestInfo(requests); return new NetworkRequestInfo(requests);
} }
@@ -9261,16 +9273,5 @@ public class ConnectivityService extends IConnectivityManager.Stub
netCap.setRequestorUidAndPackageName(Process.myUid(), mContext.getPackageName()); netCap.setRequestorUidAndPackageName(Process.myUid(), mContext.getPackageName());
return netCap; return netCap;
} }
private void setOemNetworkRequestUids(@NonNull final List<NetworkRequest> requests,
@NonNull final Set<Integer> uids) {
final Set<UidRange> ranges = new ArraySet<>();
for (final int uid : uids) {
ranges.add(new UidRange(uid, uid));
}
for (final NetworkRequest req : requests) {
req.networkCapabilities.setUids(ranges);
}
}
} }
} }