Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7c933083 authored by Nazanin Bakhshi's avatar Nazanin Bakhshi Committed by Automerger Merge Worker
Browse files

Merge "Use cached SubscriptionInfo from active subInfos, so that for each...

Merge "Use cached SubscriptionInfo from active subInfos, so that for each carrierPrivilege permission check we are not making a db query, therefore reducing race condition" into rvc-dev am: 85fbc5a3

Change-Id: I9ecf6467133ca048a02e9732b1501d87e5d7f6fe
parents d2de385a 85fbc5a3
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -738,6 +738,19 @@ public class SubscriptionController extends ISub.Stub {
     * @hide
     */
    public SubscriptionInfo getSubscriptionInfo(int subId) {
        // check cache for active subscriptions first, before querying db
        for (SubscriptionInfo subInfo : mCacheActiveSubInfoList) {
            if (subInfo.getSubscriptionId() == subId) {
                return subInfo;
            }
        }
        // check cache for opportunistic subscriptions too, before querying db
        for (SubscriptionInfo subInfo : mCacheOpportunisticSubInfoList) {
            if (subInfo.getSubscriptionId() == subId) {
                return subInfo;
            }
        }

        List<SubscriptionInfo> subInfoList = getSubInfo(
                SubscriptionManager.UNIQUE_KEY_SUBSCRIPTION_ID + "=" + subId, null);
        if (subInfoList == null || subInfoList.isEmpty()) return null;