aboutsummaryrefslogtreecommitdiff
path: root/src/java/com/android/internal/telephony/data/DataUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/java/com/android/internal/telephony/data/DataUtils.java')
-rw-r--r--src/java/com/android/internal/telephony/data/DataUtils.java71
1 files changed, 23 insertions, 48 deletions
diff --git a/src/java/com/android/internal/telephony/data/DataUtils.java b/src/java/com/android/internal/telephony/data/DataUtils.java
index 2693902099..0dda7b53e5 100644
--- a/src/java/com/android/internal/telephony/data/DataUtils.java
+++ b/src/java/com/android/internal/telephony/data/DataUtils.java
@@ -41,7 +41,6 @@ import android.telephony.ims.feature.ImsFeature;
import android.util.ArrayMap;
import com.android.internal.telephony.data.DataNetworkController.NetworkRequestList;
-import com.android.internal.telephony.flags.FeatureFlags;
import com.android.telephony.Rlog;
import java.text.SimpleDateFormat;
@@ -407,59 +406,35 @@ public class DataUtils {
* Group the network requests into several list that contains the same network capabilities.
*
* @param networkRequestList The provided network requests.
- * @param featureFlags The feature flag.
- *
* @return The network requests after grouping.
*/
public static @NonNull List<NetworkRequestList> getGroupedNetworkRequestList(
- @NonNull NetworkRequestList networkRequestList, @NonNull FeatureFlags featureFlags) {
+ @NonNull NetworkRequestList networkRequestList) {
+ // Key is the capabilities set.
+ Map<Set<Integer>, NetworkRequestList> requestsMap = new ArrayMap<>();
+ for (TelephonyNetworkRequest networkRequest : networkRequestList) {
+ requestsMap.computeIfAbsent(Arrays.stream(networkRequest.getCapabilities())
+ .boxed().collect(Collectors.toSet()),
+ v -> new NetworkRequestList()).add(networkRequest);
+ }
List<NetworkRequestList> requests = new ArrayList<>();
- if (featureFlags.carrierEnabledSatelliteFlag()) {
- record NetworkCapabilitiesKey(Set<Integer> caps, Set<Integer> enterpriseIds,
- Set<Integer> transportTypes) { }
-
- // Key is the combination of capabilities, enterprise ids, and transport types.
- Map<NetworkCapabilitiesKey, NetworkRequestList> requestsMap = new ArrayMap<>();
- for (TelephonyNetworkRequest networkRequest : networkRequestList) {
- requestsMap.computeIfAbsent(new NetworkCapabilitiesKey(
- Arrays.stream(networkRequest.getCapabilities())
- .boxed().collect(Collectors.toSet()),
- Arrays.stream(networkRequest.getNativeNetworkRequest()
- .getEnterpriseIds())
- .boxed().collect(Collectors.toSet()),
- Arrays.stream(networkRequest.getNativeNetworkRequest()
- .getTransportTypes())
- .boxed().collect(Collectors.toSet())
- ),
- v -> new NetworkRequestList()).add(networkRequest);
- }
- requests.addAll(requestsMap.values());
- } else {
- // Key is the capabilities set.
- Map<Set<Integer>, NetworkRequestList> requestsMap = new ArrayMap<>();
- for (TelephonyNetworkRequest networkRequest : networkRequestList) {
- requestsMap.computeIfAbsent(Arrays.stream(networkRequest.getCapabilities())
- .boxed().collect(Collectors.toSet()),
- v -> new NetworkRequestList()).add(networkRequest);
+ // Create separate groups for enterprise requests with different enterprise IDs.
+ for (NetworkRequestList requestList : requestsMap.values()) {
+ List<TelephonyNetworkRequest> enterpriseRequests = requestList.stream()
+ .filter(request ->
+ request.hasCapability(NetworkCapabilities.NET_CAPABILITY_ENTERPRISE))
+ .collect(Collectors.toList());
+ if (enterpriseRequests.isEmpty()) {
+ requests.add(requestList);
+ continue;
}
- // Create separate groups for enterprise requests with different enterprise IDs.
- for (NetworkRequestList requestList : requestsMap.values()) {
- List<TelephonyNetworkRequest> enterpriseRequests = requestList.stream()
- .filter(request -> request.hasCapability(
- NetworkCapabilities.NET_CAPABILITY_ENTERPRISE))
- .toList();
- if (enterpriseRequests.isEmpty()) {
- requests.add(requestList);
- continue;
- }
- // Key is the enterprise ID
- Map<Integer, NetworkRequestList> enterpriseRequestsMap = new ArrayMap<>();
- for (TelephonyNetworkRequest request : enterpriseRequests) {
- enterpriseRequestsMap.computeIfAbsent(request.getCapabilityDifferentiator(),
- v -> new NetworkRequestList()).add(request);
- }
- requests.addAll(enterpriseRequestsMap.values());
+ // Key is the enterprise ID
+ Map<Integer, NetworkRequestList> enterpriseRequestsMap = new ArrayMap<>();
+ for (TelephonyNetworkRequest request : enterpriseRequests) {
+ enterpriseRequestsMap.computeIfAbsent(request.getCapabilityDifferentiator(),
+ v -> new NetworkRequestList()).add(request);
}
+ requests.addAll(enterpriseRequestsMap.values());
}
// Sort the requests so the network request list with higher priority will be at the front.
return requests.stream()