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

Commit e7af59b3 authored by Alex Yakavenka's avatar Alex Yakavenka Committed by Wink Saville
Browse files

Telephony: Remove SimCard and RuimCard

Remove notions of SimCard and RuimCard since they don't make sense
in the world of Uicc cards where each card can have multiple
3gpp and 3gpp2 subscriptions.

This change prepares code for the introduction of Uicc cards.

Change-Id: Ibab13004604f829328b73c177669b89ef97d3f25
parent 0c9aa1b6
Loading
Loading
Loading
Loading
+20 −4
Original line number Diff line number Diff line
@@ -44,7 +44,7 @@ import com.android.internal.R;
/**
 * {@hide}
 */
public abstract class IccCard {
public class IccCard {
    protected String mLogTag;
    protected boolean mDbg;

@@ -68,6 +68,10 @@ public abstract class IccCard {
    private boolean mIccFdnEnabled = false; // Default to disabled.
                                            // Will be updated when SIM_READY.

    /* Parameter is3gpp's values to be passed to constructor */
    public final static boolean CARD_IS_3GPP = true;
    public final static boolean CARD_IS_NOT_3GPP = false;


    /* The extra data for broacasting intent INTENT_ICC_STATE_CHANGE */
    static public final String INTENT_KEY_ICC_STATE = "ss";
@@ -162,8 +166,11 @@ public abstract class IccCard {
        return State.UNKNOWN;
    }

    public IccCard(PhoneBase phone, String logTag, Boolean dbg) {
    public IccCard(PhoneBase phone, String logTag, Boolean is3gpp, Boolean dbg) {
        mPhone = phone;
        this.is3gpp = is3gpp;
        mCdmaSSM = CdmaSubscriptionSourceManager.getInstance(mPhone.getContext(),
                mPhone.mCM, mHandler, EVENT_CDMA_SUBSCRIPTION_SOURCE_CHANGED, null);
        mPhone.mCM.registerForOffOrNotAvailable(mHandler, EVENT_RADIO_OFF_OR_NOT_AVAILABLE, null);
        mPhone.mCM.registerForOn(mHandler, EVENT_RADIO_ON, null);
        mPhone.mCM.registerForIccStatusChanged(mHandler, EVENT_ICC_STATUS_CHANGED, null);
@@ -175,6 +182,7 @@ public abstract class IccCard {
        mPhone.mCM.unregisterForIccStatusChanged(mHandler);
        mPhone.mCM.unregisterForOffOrNotAvailable(mHandler);
        mPhone.mCM.unregisterForOn(mHandler);
        mCdmaSSM.dispose(mHandler);
    }

    protected void finalize() {
@@ -447,7 +455,9 @@ public abstract class IccCard {
     *         yet available
     *
     */
    public abstract String getServiceProviderName();
    public String getServiceProviderName () {
        return mPhone.mIccRecords.getServiceProviderName();
    }

    protected void updateStateProperty() {
        mPhone.setSystemProperty(TelephonyProperties.PROPERTY_SIM_STATE, getState().toString());
@@ -912,7 +922,13 @@ public abstract class IccCard {
        Log.d(mLogTag, "[IccCard] " + msg);
    }

    protected abstract int getCurrentApplicationIndex();
    protected int getCurrentApplicationIndex() {
        if (is3gpp) {
            return mIccCardStatus.getGsmUmtsSubscriptionAppIndex();
        } else {
            return mIccCardStatus.getCdmaSubscriptionAppIndex();
        }
    }

    public String getAid() {
        String aid = "";
+0 −1
Original line number Diff line number Diff line
@@ -41,7 +41,6 @@ import com.android.internal.telephony.gsm.UsimServiceTable;
import com.android.internal.telephony.ims.IsimRecords;
import com.android.internal.telephony.test.SimulatedRadioControl;
import com.android.internal.telephony.gsm.SIMRecords;
import com.android.internal.telephony.gsm.SimCard;

import java.util.Locale;

+2 −2
Original line number Diff line number Diff line
@@ -28,13 +28,13 @@ import android.provider.Telephony;
import android.util.Log;

import com.android.internal.telephony.CommandsInterface;
import com.android.internal.telephony.IccCard;
import com.android.internal.telephony.OperatorInfo;
import com.android.internal.telephony.Phone;
import com.android.internal.telephony.PhoneNotifier;
import com.android.internal.telephony.PhoneProxy;
import com.android.internal.telephony.SMSDispatcher;
import com.android.internal.telephony.gsm.GsmSMSDispatcher;
import com.android.internal.telephony.gsm.SimCard;
import com.android.internal.telephony.ims.IsimRecords;

public class CDMALTEPhone extends CDMAPhone {
@@ -79,7 +79,7 @@ public class CDMALTEPhone extends CDMAPhone {

    @Override
    protected void initSstIcc() {
        mIccCard = new SimCard(this, LOG_TAG, DBG);
        mIccCard = new IccCard(this, LOG_TAG, IccCard.CARD_IS_3GPP, DBG);
        mIccRecords = new CdmaLteUiccRecords(this);
        mIccFileHandler = new CdmaLteUiccFileHandler(this);
        // CdmaLteServiceStateTracker registers with IccCard to know
+2 −1
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ import com.android.internal.telephony.CallTracker;
import com.android.internal.telephony.CommandException;
import com.android.internal.telephony.CommandsInterface;
import com.android.internal.telephony.Connection;
import com.android.internal.telephony.IccCard;
import com.android.internal.telephony.IccException;
import com.android.internal.telephony.IccFileHandler;
import com.android.internal.telephony.IccPhoneBookInterfaceManager;
@@ -148,7 +149,7 @@ public class CDMAPhone extends PhoneBase {
    }

    protected void initSstIcc() {
        mIccCard = new RuimCard(this, LOG_TAG, DBG);
        mIccCard = new IccCard(this, LOG_TAG, IccCard.CARD_IS_NOT_3GPP, DBG);
        mIccRecords = new RuimRecords(this);
        mIccFileHandler = new RuimFileHandler(this);
        // CdmaServiceStateTracker registers with IccCard to know
+1 −1
Original line number Diff line number Diff line
@@ -432,7 +432,7 @@ public class CdmaConnection extends Connection {
                    return DisconnectCause.OUT_OF_SERVICE;
                } else if (phone.mCdmaSubscriptionSource ==
                               CdmaSubscriptionSourceManager.SUBSCRIPTION_FROM_RUIM
                           && phone.getIccCard().getState() != RuimCard.State.READY) {
                           && phone.getIccCard().getState() != IccCard.State.READY) {
                    return DisconnectCause.ICC_ERROR;
                } else if (causeCode==CallFailCause.NORMAL_CLEARING) {
                    return DisconnectCause.NORMAL;
Loading