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

Commit a61966ac authored by Muralidhar Reddy Mule's avatar Muralidhar Reddy Mule Committed by Android (Google) Code Review
Browse files

Merge "[MEP] eSim profile is not enabled"

parents 8467dbea c2279410
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -968,23 +968,24 @@ public class EuiccController extends IEuiccController.Stub {
    public void switchToSubscription(int cardId, int subscriptionId, String callingPackage,
            PendingIntent callbackIntent) {
        // convert PendingIntent to callback if no callback provided
        switchToSubscription(cardId, 0, subscriptionId, false /* forceDeactivateSim */,
        switchToSubscription(cardId, subscriptionId, 0, false /* forceDeactivateSim */,
                callingPackage, callbackIntent, false);
    }

    @Override
    public void switchToSubscriptionWithPort(int cardId, int portIndex, int subscriptionId,
    public void switchToSubscriptionWithPort(int cardId, int subscriptionId, int portIndex,
            String callingPackage, PendingIntent callbackIntent) {
        switchToSubscription(cardId, portIndex, subscriptionId, false /* forceDeactivateSim */,
        switchToSubscription(cardId, subscriptionId, portIndex, false /* forceDeactivateSim */,
                callingPackage, callbackIntent, true);
    }

    void switchToSubscription(int cardId, int portIndex, int subscriptionId,
    void switchToSubscription(int cardId, int subscriptionId, int portIndex,
            boolean forceDeactivateSim, String callingPackage, PendingIntent callbackIntent,
            boolean usePortIndex) {
        boolean callerCanWriteEmbeddedSubscriptions = callerCanWriteEmbeddedSubscriptions();
        mAppOpsManager.checkPackage(Binder.getCallingUid(), callingPackage);

        Log.d(TAG, " subId: " + subscriptionId + " portIndex: " + portIndex
                + " forceDeactivateSim: " + forceDeactivateSim + " usePortIndex: " + usePortIndex);
        long token = Binder.clearCallingIdentity();
        try {
            if (callerCanWriteEmbeddedSubscriptions) {
+1 −1
Original line number Diff line number Diff line
@@ -508,8 +508,8 @@ public class EuiccOperation implements Parcelable {
            EuiccController euiccController = EuiccController.get();
            euiccController.switchToSubscription(
                    cardId,
                    portIndex,
                    mSubscriptionId,
                    portIndex,
                    true /* forceDeactivateSim */,
                    mCallingPackage,
                    callbackIntent,
+3 −13
Original line number Diff line number Diff line
@@ -931,19 +931,9 @@ public class UiccController extends Handler {
            List<UiccPortInfo> portInfos = new ArrayList<>();
            int[] portIndexes = slot.getPortList();
            for (int portIdx : portIndexes) {
                if (slot.isPortActive(portIdx)) {
                    UiccPort port = slot.getUiccCard().getUiccPort(portIdx);
                    portInfos.add(new UiccPortInfo(IccUtils.stripTrailingFs(port.getIccId()),
                            port.getPortIdx(),
                            port.getPhoneId(),
                            true));
                } else {
                    // If port is inactive, use slot.getIccId API to get iccid value.
                    portInfos.add(new UiccPortInfo(IccUtils.stripTrailingFs(slot.getIccId(portIdx)),
                            portIdx,
                            -1/*Invalid phoneId*/,
                            false));
                }
                String iccId = IccUtils.stripTrailingFs(slot.getIccId(portIdx));
                portInfos.add(new UiccPortInfo(iccId, portIdx,
                        slot.getPhoneIdFromPortIndex(portIdx), slot.isPortActive(portIdx)));
            }
            UiccCardInfo info = new UiccCardInfo(
                    isEuicc, cardId, eid, slotIndex, isRemovable,
+2 −5
Original line number Diff line number Diff line
@@ -273,12 +273,9 @@ public class UiccSlot extends Handler {
    }

    public boolean isPortActive(int portIdx) {
        UiccPort uiccPort = null;
        synchronized (mLock) {
            if (mUiccCard != null) {
                uiccPort = mUiccCard.getUiccPort(portIdx);
            }
            return uiccPort != null;
            return SubscriptionManager.isValidPhoneId(
                    mPortIdxToPhoneId.getOrDefault(portIdx, INVALID_PHONE_ID));
        }
    }

+4 −0
Original line number Diff line number Diff line
@@ -353,11 +353,13 @@ public class UiccControllerTest extends TelephonyTest {
        doReturn("A1B2C3D4").when(mMockCard).getCardId();
        doReturn(IccCardStatus.CardState.CARDSTATE_PRESENT).when(mMockCard).getCardState();
        doReturn(true).when(mMockSlot).isActive(); //TODO: use UICCPort when ready

        // Mock out UiccPort
        doReturn(new int[]{0}).when(mMockSlot).getPortList();
        doReturn(mMockPort).when(mMockCard).getUiccPort(0);
        doReturn("123451234567890").when(mMockPort).getIccId();
        doReturn(true).when(mMockSlot).isPortActive(0);
        doReturn("123451234567890").when(mMockSlot).getIccId(0);

        // simulate card status loaded so that the UiccController sets the card ID
        IccCardStatus ics = new IccCardStatus();
@@ -408,6 +410,7 @@ public class UiccControllerTest extends TelephonyTest {
        doReturn("123451234567890F").when(mMockPort).getIccId();
        doReturn(new int[]{0}).when(mMockSlot).getPortList();
        doReturn(true).when(mMockSlot).isPortActive(0);
        doReturn("123451234567890F").when(mMockSlot).getIccId(0);

        // simulate card status loaded so that the UiccController sets the card ID
        IccCardStatus ics = new IccCardStatus();
@@ -453,6 +456,7 @@ public class UiccControllerTest extends TelephonyTest {
        // Mock out Port Index and IccId
        doReturn(new int[]{0}).when(mMockSlot).getPortList();
        doReturn("123451234567890").when(mMockSlot).getIccId(0);
        doReturn(-1).when(mMockSlot).getPhoneIdFromPortIndex(0);

        // simulate card status loaded so that the UiccController sets the card ID
        IccCardStatus ics = new IccCardStatus();