Loading src/java/com/android/internal/telephony/SubscriptionController.java +31 −23 Original line number Diff line number Diff line Loading @@ -577,6 +577,7 @@ public class SubscriptionController extends ISub.Stub { * @hide */ public SubscriptionInfo getSubscriptionInfo(int subId) { synchronized (mSubInfoListLock) { // check cache for active subscriptions first, before querying db for (SubscriptionInfo subInfo : mCacheActiveSubInfoList) { if (subInfo.getSubscriptionId() == subId) { Loading @@ -589,6 +590,7 @@ public class SubscriptionController extends ISub.Stub { return subInfo; } } } List<SubscriptionInfo> subInfoList = getSubInfo( SubscriptionManager.UNIQUE_KEY_SUBSCRIPTION_ID + "=" + subId, null); Loading Loading @@ -1364,6 +1366,7 @@ public class SubscriptionController extends ISub.Stub { // validate the given info - does it exist in the active subscription list int subId = SubscriptionManager.INVALID_SUBSCRIPTION_ID; int slotIndex = SubscriptionManager.INVALID_SIM_SLOT_INDEX; synchronized (mSubInfoListLock) { for (SubscriptionInfo info : mCacheActiveSubInfoList) { if ((info.getSubscriptionType() == subscriptionType) && info.getIccId().equalsIgnoreCase(uniqueId)) { Loading @@ -1372,6 +1375,7 @@ public class SubscriptionController extends ISub.Stub { break; } } } if (subId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) { if (DBG) { logd("Invalid subscription details: subscriptionType = " + subscriptionType Loading Loading @@ -2608,13 +2612,15 @@ public class SubscriptionController extends ISub.Stub { } private boolean isSubscriptionVisible(int subId) { synchronized (mSubInfoListLock) { for (SubscriptionInfo info : mCacheOpportunisticSubInfoList) { if (info.getSubscriptionId() == subId) { // If group UUID is null, it's stand alone opportunistic profile. So it's visible. // otherwise, it's bundled opportunistic profile, and is not visible. // If group UUID is null, it's stand alone opportunistic profile. So it's // visible. Otherwise, it's bundled opportunistic profile, and is not visible. return info.getGroupUuid() == null; } } } return true; } Loading Loading @@ -3898,11 +3904,13 @@ public class SubscriptionController extends ISub.Stub { private boolean shouldDisableSubGroup(ParcelUuid groupUuid) { if (groupUuid == null) return false; synchronized (mSubInfoListLock) { for (SubscriptionInfo activeInfo : mCacheActiveSubInfoList) { if (!activeInfo.isOpportunistic() && groupUuid.equals(activeInfo.getGroupUuid())) { return false; } } } return true; } Loading Loading
src/java/com/android/internal/telephony/SubscriptionController.java +31 −23 Original line number Diff line number Diff line Loading @@ -577,6 +577,7 @@ public class SubscriptionController extends ISub.Stub { * @hide */ public SubscriptionInfo getSubscriptionInfo(int subId) { synchronized (mSubInfoListLock) { // check cache for active subscriptions first, before querying db for (SubscriptionInfo subInfo : mCacheActiveSubInfoList) { if (subInfo.getSubscriptionId() == subId) { Loading @@ -589,6 +590,7 @@ public class SubscriptionController extends ISub.Stub { return subInfo; } } } List<SubscriptionInfo> subInfoList = getSubInfo( SubscriptionManager.UNIQUE_KEY_SUBSCRIPTION_ID + "=" + subId, null); Loading Loading @@ -1364,6 +1366,7 @@ public class SubscriptionController extends ISub.Stub { // validate the given info - does it exist in the active subscription list int subId = SubscriptionManager.INVALID_SUBSCRIPTION_ID; int slotIndex = SubscriptionManager.INVALID_SIM_SLOT_INDEX; synchronized (mSubInfoListLock) { for (SubscriptionInfo info : mCacheActiveSubInfoList) { if ((info.getSubscriptionType() == subscriptionType) && info.getIccId().equalsIgnoreCase(uniqueId)) { Loading @@ -1372,6 +1375,7 @@ public class SubscriptionController extends ISub.Stub { break; } } } if (subId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) { if (DBG) { logd("Invalid subscription details: subscriptionType = " + subscriptionType Loading Loading @@ -2608,13 +2612,15 @@ public class SubscriptionController extends ISub.Stub { } private boolean isSubscriptionVisible(int subId) { synchronized (mSubInfoListLock) { for (SubscriptionInfo info : mCacheOpportunisticSubInfoList) { if (info.getSubscriptionId() == subId) { // If group UUID is null, it's stand alone opportunistic profile. So it's visible. // otherwise, it's bundled opportunistic profile, and is not visible. // If group UUID is null, it's stand alone opportunistic profile. So it's // visible. Otherwise, it's bundled opportunistic profile, and is not visible. return info.getGroupUuid() == null; } } } return true; } Loading Loading @@ -3898,11 +3904,13 @@ public class SubscriptionController extends ISub.Stub { private boolean shouldDisableSubGroup(ParcelUuid groupUuid) { if (groupUuid == null) return false; synchronized (mSubInfoListLock) { for (SubscriptionInfo activeInfo : mCacheActiveSubInfoList) { if (!activeInfo.isOpportunistic() && groupUuid.equals(activeInfo.getGroupUuid())) { return false; } } } return true; } Loading