10825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville/* 20825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Copyright (C) 2008 The Android Open Source Project 36f2a3e1ea86ae7ae2e04eb95582e54eec7a2f864Sukanya Rajkhowa * Copyright (c) 2013, The Linux Foundation. All rights reserved. 40825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 50825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Licensed under the Apache License, Version 2.0 (the "License"); 60825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * you may not use this file except in compliance with the License. 70825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * You may obtain a copy of the License at 80825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 90825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * http://www.apache.org/licenses/LICENSE-2.0 100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unless required by applicable law or agreed to in writing, software 120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * distributed under the License is distributed on an "AS IS" BASIS, 130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * See the License for the specific language governing permissions and 150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * limitations under the License. 160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 180825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepackage com.android.internal.telephony; 190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 210825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.app.ActivityManagerNative; 220825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.content.Context; 230825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.content.Intent; 240825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.net.LinkCapabilities; 250825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.net.LinkProperties; 260825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.os.AsyncResult; 270825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.os.Handler; 280825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.os.Message; 290825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.os.SystemProperties; 30cbbf6deee30d702e398939f4bb464f5e821f5e6cDianne Hackbornimport android.os.UserHandle; 31ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Savilleimport android.telephony.CellInfo; 320825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.telephony.CellLocation; 330825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.telephony.ServiceState; 340825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.telephony.SignalStrength; 35ded9c0af7fa49504c047275ed34c2d3b22bf0c3aWink Savilleimport android.telephony.Rlog; 360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 370825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport com.android.internal.telephony.test.SimulatedRadioControl; 38d720945f2be5ea5fe0faf67e67d9ea0e184eba67Alex Yakavenkaimport com.android.internal.telephony.uicc.IccCardProxy; 39d720945f2be5ea5fe0faf67e67d9ea0e184eba67Alex Yakavenkaimport com.android.internal.telephony.uicc.IsimRecords; 40d720945f2be5ea5fe0faf67e67d9ea0e184eba67Alex Yakavenkaimport com.android.internal.telephony.uicc.UsimServiceTable; 410825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport com.android.internal.telephony.CallManager; 420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 430825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport java.util.List; 440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 450825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepublic class PhoneProxy extends Handler implements Phone { 460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public final static Object lockForRadioTechnologyChange = new Object(); 470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private Phone mActivePhone; 490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private CommandsInterface mCommandsInterface; 506f2a3e1ea86ae7ae2e04eb95582e54eec7a2f864Sukanya Rajkhowa private IccSmsInterfaceManager mIccSmsInterfaceManager; 510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private IccPhoneBookInterfaceManagerProxy mIccPhoneBookInterfaceManagerProxy; 520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private PhoneSubInfoProxy mPhoneSubInfoProxy; 53e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka private IccCardProxy mIccCardProxy; 540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private boolean mResetModemOnRadioTechnologyChange = false; 560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private int mRilVersion; 580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private static final int EVENT_VOICE_RADIO_TECH_CHANGED = 1; 600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private static final int EVENT_RADIO_ON = 2; 610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private static final int EVENT_REQUEST_VOICE_RADIO_TECH_DONE = 3; 620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private static final int EVENT_RIL_CONNECTED = 4; 63b54cd09892e0676d719e6df00e60c77b663f993cWink Saville private static final int EVENT_UPDATE_PHONE_OBJECT = 5; 640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 65cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville private static final String LOG_TAG = "PhoneProxy"; 660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville //***** Class Methods 68e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka public PhoneProxy(PhoneBase phone) { 690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone = phone; 700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mResetModemOnRadioTechnologyChange = SystemProperties.getBoolean( 710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville TelephonyProperties.PROPERTY_RESET_ON_RADIO_TECH_CHANGE, false); 726f2a3e1ea86ae7ae2e04eb95582e54eec7a2f864Sukanya Rajkhowa mIccSmsInterfaceManager = 736f2a3e1ea86ae7ae2e04eb95582e54eec7a2f864Sukanya Rajkhowa new IccSmsInterfaceManager((PhoneBase) this.mActivePhone); 740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mIccPhoneBookInterfaceManagerProxy = new IccPhoneBookInterfaceManagerProxy( 750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville phone.getIccPhoneBookInterfaceManager()); 760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mPhoneSubInfoProxy = new PhoneSubInfoProxy(phone.getPhoneSubInfo()); 7722d85a8e3a575a6d01d2c788587971657dfe20c6Wink Saville mCommandsInterface = ((PhoneBase)mActivePhone).mCi; 780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mCommandsInterface.registerForRilConnected(this, EVENT_RIL_CONNECTED, null); 800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mCommandsInterface.registerForOn(this, EVENT_RADIO_ON, null); 810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mCommandsInterface.registerForVoiceRadioTechChanged( 820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville this, EVENT_VOICE_RADIO_TECH_CHANGED, null); 83e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka mIccCardProxy = new IccCardProxy(phone.getContext(), mCommandsInterface); 84e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka if (phone.getPhoneType() == PhoneConstants.PHONE_TYPE_GSM) { 85e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka // For the purpose of IccCardProxy we only care about the technology family 86e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka mIccCardProxy.setVoiceRadioTech(ServiceState.RIL_RADIO_TECHNOLOGY_UMTS); 87e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka } else if (phone.getPhoneType() == PhoneConstants.PHONE_TYPE_CDMA) { 88e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka mIccCardProxy.setVoiceRadioTech(ServiceState.RIL_RADIO_TECHNOLOGY_1xRTT); 89e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka } 900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville @Override 930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void handleMessage(Message msg) { 940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville AsyncResult ar = (AsyncResult) msg.obj; 950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville switch(msg.what) { 960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville case EVENT_RADIO_ON: 970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /* Proactively query voice radio technologies */ 980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mCommandsInterface.getVoiceRadioTechnology( 9922d85a8e3a575a6d01d2c788587971657dfe20c6Wink Saville obtainMessage(EVENT_REQUEST_VOICE_RADIO_TECH_DONE)); 1000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville break; 1010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville case EVENT_RIL_CONNECTED: 1030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (ar.exception == null && ar.result != null) { 1040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mRilVersion = (Integer) ar.result; 1050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } else { 1060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville logd("Unexpected exception on EVENT_RIL_CONNECTED"); 1070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mRilVersion = -1; 1080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville break; 1100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville case EVENT_VOICE_RADIO_TECH_CHANGED: 1120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville case EVENT_REQUEST_VOICE_RADIO_TECH_DONE: 113b54cd09892e0676d719e6df00e60c77b663f993cWink Saville String what = (msg.what == EVENT_VOICE_RADIO_TECH_CHANGED) ? 114b54cd09892e0676d719e6df00e60c77b663f993cWink Saville "EVENT_VOICE_RADIO_TECH_CHANGED" : "EVENT_REQUEST_VOICE_RADIO_TECH_DONE"; 1150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (ar.exception == null) { 1160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if ((ar.result != null) && (((int[]) ar.result).length != 0)) { 1170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int newVoiceTech = ((int[]) ar.result)[0]; 118b54cd09892e0676d719e6df00e60c77b663f993cWink Saville logd(what + ": newVoiceTech=" + newVoiceTech); 119b54cd09892e0676d719e6df00e60c77b663f993cWink Saville phoneObjectUpdater(newVoiceTech); 1200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } else { 121b54cd09892e0676d719e6df00e60c77b663f993cWink Saville loge(what + ": has no tech!"); 1220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } else { 124b54cd09892e0676d719e6df00e60c77b663f993cWink Saville loge(what + ": exception=" + ar.exception); 1250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville break; 1270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 128b54cd09892e0676d719e6df00e60c77b663f993cWink Saville case EVENT_UPDATE_PHONE_OBJECT: 129b54cd09892e0676d719e6df00e60c77b663f993cWink Saville phoneObjectUpdater(msg.arg1); 130b54cd09892e0676d719e6df00e60c77b663f993cWink Saville break; 131b54cd09892e0676d719e6df00e60c77b663f993cWink Saville 1320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville default: 1330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville loge("Error! This handler was not registered for this message type. Message: " 1340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville + msg.what); 1350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville break; 1360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville super.handleMessage(msg); 1380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private static void logd(String msg) { 141ded9c0af7fa49504c047275ed34c2d3b22bf0c3aWink Saville Rlog.d(LOG_TAG, "[PhoneProxy] " + msg); 1420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private void loge(String msg) { 145ded9c0af7fa49504c047275ed34c2d3b22bf0c3aWink Saville Rlog.e(LOG_TAG, "[PhoneProxy] " + msg); 1460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 148b54cd09892e0676d719e6df00e60c77b663f993cWink Saville private void phoneObjectUpdater(int newVoiceRadioTech) { 149b54cd09892e0676d719e6df00e60c77b663f993cWink Saville logd("phoneObjectUpdater: newVoiceRadioTech=" + newVoiceRadioTech); 1500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (mActivePhone != null) { 152b54cd09892e0676d719e6df00e60c77b663f993cWink Saville // Check for a voice over lte replacement 153b54cd09892e0676d719e6df00e60c77b663f993cWink Saville if ((newVoiceRadioTech == ServiceState.RIL_RADIO_TECHNOLOGY_LTE)) { 154b54cd09892e0676d719e6df00e60c77b663f993cWink Saville int volteReplacementRat = mActivePhone.getContext().getResources().getInteger( 155b54cd09892e0676d719e6df00e60c77b663f993cWink Saville com.android.internal.R.integer.config_volte_replacement_rat); 156b54cd09892e0676d719e6df00e60c77b663f993cWink Saville logd("phoneObjectUpdater: volteReplacementRat=" + volteReplacementRat); 157b54cd09892e0676d719e6df00e60c77b663f993cWink Saville if (volteReplacementRat != ServiceState.RIL_RADIO_TECHNOLOGY_UNKNOWN) { 158b54cd09892e0676d719e6df00e60c77b663f993cWink Saville newVoiceRadioTech = volteReplacementRat; 159b54cd09892e0676d719e6df00e60c77b663f993cWink Saville } 160b54cd09892e0676d719e6df00e60c77b663f993cWink Saville } 161b54cd09892e0676d719e6df00e60c77b663f993cWink Saville 1620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if(mRilVersion == 6 && getLteOnCdmaMode() == PhoneConstants.LTE_ON_CDMA_TRUE) { 1630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /* 1640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * On v6 RIL, when LTE_ON_CDMA is TRUE, always create CDMALTEPhone 1650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * irrespective of the voice radio tech reported. 1660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 1670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (mActivePhone.getPhoneType() == PhoneConstants.PHONE_TYPE_CDMA) { 168b54cd09892e0676d719e6df00e60c77b663f993cWink Saville logd("phoneObjectUpdater: LTE ON CDMA property is set. Use CDMA Phone" + 169b54cd09892e0676d719e6df00e60c77b663f993cWink Saville " newVoiceRadioTech=" + newVoiceRadioTech + 170b54cd09892e0676d719e6df00e60c77b663f993cWink Saville " mActivePhone=" + mActivePhone.getPhoneName()); 1710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return; 1720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } else { 173b54cd09892e0676d719e6df00e60c77b663f993cWink Saville logd("phoneObjectUpdater: LTE ON CDMA property is set. Switch to CDMALTEPhone" + 174b54cd09892e0676d719e6df00e60c77b663f993cWink Saville " newVoiceRadioTech=" + newVoiceRadioTech + 175b54cd09892e0676d719e6df00e60c77b663f993cWink Saville " mActivePhone=" + mActivePhone.getPhoneName()); 1760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville newVoiceRadioTech = ServiceState.RIL_RADIO_TECHNOLOGY_1xRTT; 1770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } else { 1790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if ((ServiceState.isCdma(newVoiceRadioTech) && 1800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getPhoneType() == PhoneConstants.PHONE_TYPE_CDMA) || 1810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville (ServiceState.isGsm(newVoiceRadioTech) && 1820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getPhoneType() == PhoneConstants.PHONE_TYPE_GSM)) { 1830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Nothing changed. Keep phone as it is. 184b54cd09892e0676d719e6df00e60c77b663f993cWink Saville logd("phoneObjectUpdater: No change ignore," + 185b54cd09892e0676d719e6df00e60c77b663f993cWink Saville " newVoiceRadioTech=" + newVoiceRadioTech + 186b54cd09892e0676d719e6df00e60c77b663f993cWink Saville " mActivePhone=" + mActivePhone.getPhoneName()); 1870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return; 1880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (newVoiceRadioTech == ServiceState.RIL_RADIO_TECHNOLOGY_UNKNOWN) { 1930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // We need some voice phone object to be active always, so never 1940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // delete the phone without anything to replace it with! 195b54cd09892e0676d719e6df00e60c77b663f993cWink Saville logd("phoneObjectUpdater: Unknown rat ignore, " 196b54cd09892e0676d719e6df00e60c77b663f993cWink Saville + " newVoiceRadioTech=Unknown. mActivePhone=" + mActivePhone.getPhoneName()); 1970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return; 1980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean oldPowerState = false; // old power state to off 2010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (mResetModemOnRadioTechnologyChange) { 2020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (mCommandsInterface.getRadioState().isOn()) { 2030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville oldPowerState = true; 204b54cd09892e0676d719e6df00e60c77b663f993cWink Saville logd("phoneObjectUpdater: Setting Radio Power to Off"); 2050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mCommandsInterface.setRadioPower(false, null); 2060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville deleteAndCreatePhone(newVoiceRadioTech); 2100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (mResetModemOnRadioTechnologyChange && oldPowerState) { // restore power state 212b54cd09892e0676d719e6df00e60c77b663f993cWink Saville logd("phoneObjectUpdater: Resetting Radio"); 2130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mCommandsInterface.setRadioPower(oldPowerState, null); 2140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Set the new interfaces in the proxy's 2176f2a3e1ea86ae7ae2e04eb95582e54eec7a2f864Sukanya Rajkhowa mIccSmsInterfaceManager.updatePhoneObject((PhoneBase) mActivePhone); 2180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mIccPhoneBookInterfaceManagerProxy.setmIccPhoneBookInterfaceManager(mActivePhone 2190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville .getIccPhoneBookInterfaceManager()); 22022d85a8e3a575a6d01d2c788587971657dfe20c6Wink Saville mPhoneSubInfoProxy.setmPhoneSubInfo(mActivePhone.getPhoneSubInfo()); 2210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 22222d85a8e3a575a6d01d2c788587971657dfe20c6Wink Saville mCommandsInterface = ((PhoneBase)mActivePhone).mCi; 223e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka mIccCardProxy.setVoiceRadioTech(newVoiceRadioTech); 2240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Send an Intent to the PhoneApp that we had a radio technology change 2260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Intent intent = new Intent(TelephonyIntents.ACTION_RADIO_TECHNOLOGY_CHANGED); 2270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville intent.addFlags(Intent.FLAG_RECEIVER_REPLACE_PENDING); 2280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville intent.putExtra(PhoneConstants.PHONE_NAME_KEY, mActivePhone.getPhoneName()); 229cbbf6deee30d702e398939f4bb464f5e821f5e6cDianne Hackborn ActivityManagerNative.broadcastStickyIntent(intent, null, UserHandle.USER_ALL); 2300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private void deleteAndCreatePhone(int newVoiceRadioTech) { 2340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String outgoingPhoneName = "Unknown"; 2360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Phone oldPhone = mActivePhone; 2370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (oldPhone != null) { 2390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville outgoingPhoneName = ((PhoneBase) oldPhone).getPhoneName(); 2400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville logd("Switching Voice Phone : " + outgoingPhoneName + " >>> " 2430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville + (ServiceState.isGsm(newVoiceRadioTech) ? "GSM" : "CDMA")); 2440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (oldPhone != null) { 2460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville CallManager.getInstance().unregisterPhone(oldPhone); 2470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville logd("Disposing old phone.."); 2480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville oldPhone.dispose(); 2490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Give the garbage collector a hint to start the garbage collection 2520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // asap NOTE this has been disabled since radio technology change could 2530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // happen during e.g. a multimedia playing and could slow the system. 2540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Tests needs to be done to see the effects of the GC call here when 2550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // system is busy. 2560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // System.gc(); 2570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (ServiceState.isCdma(newVoiceRadioTech)) { 2590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone = PhoneFactory.getCdmaPhone(); 2600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } else if (ServiceState.isGsm(newVoiceRadioTech)) { 2610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone = PhoneFactory.getGsmPhone(); 2620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if (oldPhone != null) { 2650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville oldPhone.removeReferences(); 2660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville if(mActivePhone != null) { 2690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville CallManager.getInstance().registerPhone(mActivePhone); 2700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville oldPhone = null; 2730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 275cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 276b54cd09892e0676d719e6df00e60c77b663f993cWink Saville public void updatePhoneObject(int voiceRadioTech) { 277b54cd09892e0676d719e6df00e60c77b663f993cWink Saville logd("updatePhoneObject: radioTechnology=" + voiceRadioTech); 278b54cd09892e0676d719e6df00e60c77b663f993cWink Saville sendMessage(obtainMessage(EVENT_UPDATE_PHONE_OBJECT, voiceRadioTech, 0, null)); 279b54cd09892e0676d719e6df00e60c77b663f993cWink Saville } 280b54cd09892e0676d719e6df00e60c77b663f993cWink Saville 281b54cd09892e0676d719e6df00e60c77b663f993cWink Saville @Override 2820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public ServiceState getServiceState() { 2830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getServiceState(); 2840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 286cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 2870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public CellLocation getCellLocation() { 2880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getCellLocation(); 2890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 291ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville /** 292ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville * @return all available cell information or null if none. 293ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville */ 294ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville @Override 295ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville public List<CellInfo> getAllCellInfo() { 296ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville return mActivePhone.getAllCellInfo(); 297ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville } 298ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville 2995fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville /** 3005fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville * {@inheritDoc} 3015fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville */ 3025fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville @Override 3035fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville public void setCellInfoListRate(int rateInMillis) { 3045fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville mActivePhone.setCellInfoListRate(rateInMillis); 3055fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville } 3065fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville 307cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public PhoneConstants.DataState getDataConnectionState() { 3090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getDataConnectionState(PhoneConstants.APN_TYPE_DEFAULT); 3100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 312cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public PhoneConstants.DataState getDataConnectionState(String apnType) { 3140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getDataConnectionState(apnType); 3150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 317cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public DataActivityState getDataActivityState() { 3190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getDataActivityState(); 3200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 322cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public Context getContext() { 3240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getContext(); 3250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 327cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void disableDnsCheck(boolean b) { 3290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.disableDnsCheck(b); 3300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 332cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean isDnsCheckDisabled() { 3340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.isDnsCheckDisabled(); 3350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 337cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public PhoneConstants.State getState() { 3390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getState(); 3400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 342cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getPhoneName() { 3440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getPhoneName(); 3450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 347cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public int getPhoneType() { 3490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getPhoneType(); 3500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 352cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String[] getActiveApnTypes() { 3540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getActiveApnTypes(); 3550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 357cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getActiveApnHost(String apnType) { 3590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getActiveApnHost(apnType); 3600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 362cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public LinkProperties getLinkProperties(String apnType) { 3640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getLinkProperties(apnType); 3650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 367cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public LinkCapabilities getLinkCapabilities(String apnType) { 3690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getLinkCapabilities(apnType); 3700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 372cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public SignalStrength getSignalStrength() { 3740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getSignalStrength(); 3750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 377cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForUnknownConnection(Handler h, int what, Object obj) { 3790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForUnknownConnection(h, what, obj); 3800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 382cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForUnknownConnection(Handler h) { 3840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForUnknownConnection(h); 3850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 387cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForPreciseCallStateChanged(Handler h, int what, Object obj) { 3890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForPreciseCallStateChanged(h, what, obj); 3900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 392cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForPreciseCallStateChanged(Handler h) { 3940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForPreciseCallStateChanged(h); 3950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 3960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 397cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 3980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForNewRingingConnection(Handler h, int what, Object obj) { 3990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForNewRingingConnection(h, what, obj); 4000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 402cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForNewRingingConnection(Handler h) { 4040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForNewRingingConnection(h); 4050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 407cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForIncomingRing(Handler h, int what, Object obj) { 4090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForIncomingRing(h, what, obj); 4100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 412cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForIncomingRing(Handler h) { 4140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForIncomingRing(h); 4150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 417cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForDisconnect(Handler h, int what, Object obj) { 4190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForDisconnect(h, what, obj); 4200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 422cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForDisconnect(Handler h) { 4240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForDisconnect(h); 4250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 427cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForMmiInitiate(Handler h, int what, Object obj) { 4290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForMmiInitiate(h, what, obj); 4300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 432cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForMmiInitiate(Handler h) { 4340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForMmiInitiate(h); 4350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 437cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForMmiComplete(Handler h, int what, Object obj) { 4390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForMmiComplete(h, what, obj); 4400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 442cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForMmiComplete(Handler h) { 4440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForMmiComplete(h); 4450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 447cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public List<? extends MmiCode> getPendingMmiCodes() { 4490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getPendingMmiCodes(); 4500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 452cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void sendUssdResponse(String ussdMessge) { 4540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.sendUssdResponse(ussdMessge); 4550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 457cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForServiceStateChanged(Handler h, int what, Object obj) { 4590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForServiceStateChanged(h, what, obj); 4600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 462cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForServiceStateChanged(Handler h) { 4640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForServiceStateChanged(h); 4650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 467cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForSuppServiceNotification(Handler h, int what, Object obj) { 4690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForSuppServiceNotification(h, what, obj); 4700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 472cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForSuppServiceNotification(Handler h) { 4740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForSuppServiceNotification(h); 4750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 477cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForSuppServiceFailed(Handler h, int what, Object obj) { 4790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForSuppServiceFailed(h, what, obj); 4800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 482cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForSuppServiceFailed(Handler h) { 4840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForSuppServiceFailed(h); 4850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 487cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForInCallVoicePrivacyOn(Handler h, int what, Object obj){ 4890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForInCallVoicePrivacyOn(h,what,obj); 4900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 492cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForInCallVoicePrivacyOn(Handler h){ 4940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForInCallVoicePrivacyOn(h); 4950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 4960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 497cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 4980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForInCallVoicePrivacyOff(Handler h, int what, Object obj){ 4990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForInCallVoicePrivacyOff(h,what,obj); 5000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 502cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForInCallVoicePrivacyOff(Handler h){ 5040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForInCallVoicePrivacyOff(h); 5050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 507cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForCdmaOtaStatusChange(Handler h, int what, Object obj) { 5090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForCdmaOtaStatusChange(h,what,obj); 5100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 512cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForCdmaOtaStatusChange(Handler h) { 5140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForCdmaOtaStatusChange(h); 5150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 517cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForSubscriptionInfoReady(Handler h, int what, Object obj) { 5190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForSubscriptionInfoReady(h, what, obj); 5200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 522cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForSubscriptionInfoReady(Handler h) { 5240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForSubscriptionInfoReady(h); 5250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 527cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForEcmTimerReset(Handler h, int what, Object obj) { 5290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForEcmTimerReset(h,what,obj); 5300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 532cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForEcmTimerReset(Handler h) { 5340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForEcmTimerReset(h); 5350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 537cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForRingbackTone(Handler h, int what, Object obj) { 5390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForRingbackTone(h,what,obj); 5400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 542cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForRingbackTone(Handler h) { 5440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForRingbackTone(h); 5450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 547cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForResendIncallMute(Handler h, int what, Object obj) { 5490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForResendIncallMute(h,what,obj); 5500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 552cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForResendIncallMute(Handler h) { 5540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForResendIncallMute(h); 5550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 557cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean getIccRecordsLoaded() { 559e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka return mIccCardProxy.getIccRecordsLoaded(); 5600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 562cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public IccCard getIccCard() { 564e287feac673ff68565b766e0e463d105fa9cef9dAlex Yakavenka return mIccCardProxy; 5650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 567cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void acceptCall() throws CallStateException { 5690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.acceptCall(); 5700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 572cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void rejectCall() throws CallStateException { 5740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.rejectCall(); 5750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 577cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void switchHoldingAndActive() throws CallStateException { 5790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.switchHoldingAndActive(); 5800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 582cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean canConference() { 5840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.canConference(); 5850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 587cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void conference() throws CallStateException { 5890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.conference(); 5900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 592cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void enableEnhancedVoicePrivacy(boolean enable, Message onComplete) { 5940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.enableEnhancedVoicePrivacy(enable, onComplete); 5950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 5960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 597cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 5980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void getEnhancedVoicePrivacy(Message onComplete) { 5990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getEnhancedVoicePrivacy(onComplete); 6000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 602cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean canTransfer() { 6040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.canTransfer(); 6050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 607cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void explicitCallTransfer() throws CallStateException { 6090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.explicitCallTransfer(); 6100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 612cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void clearDisconnected() { 6140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.clearDisconnected(); 6150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 617cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public Call getForegroundCall() { 6190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getForegroundCall(); 6200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 622cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public Call getBackgroundCall() { 6240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getBackgroundCall(); 6250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 627cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public Call getRingingCall() { 6290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getRingingCall(); 6300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 632cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public Connection dial(String dialString) throws CallStateException { 6340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.dial(dialString); 6350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 637cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public Connection dial(String dialString, UUSInfo uusInfo) throws CallStateException { 6390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.dial(dialString, uusInfo); 6400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 642cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean handlePinMmi(String dialString) { 6440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.handlePinMmi(dialString); 6450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 647cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean handleInCallMmiCommands(String command) throws CallStateException { 6490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.handleInCallMmiCommands(command); 6500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 652cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void sendDtmf(char c) { 6540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.sendDtmf(c); 6550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 657cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void startDtmf(char c) { 6590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.startDtmf(c); 6600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 662cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void stopDtmf() { 6640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.stopDtmf(); 6650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 667cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setRadioPower(boolean power) { 6690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setRadioPower(power); 6700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 672cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean getMessageWaitingIndicator() { 6740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getMessageWaitingIndicator(); 6750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 677cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean getCallForwardingIndicator() { 6790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getCallForwardingIndicator(); 6800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 682cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getLine1Number() { 6840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getLine1Number(); 6850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 687cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getCdmaMin() { 6890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getCdmaMin(); 6900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 692cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean isMinInfoReady() { 6940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.isMinInfoReady(); 6950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 6960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 697cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 6980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getCdmaPrlVersion() { 6990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getCdmaPrlVersion(); 7000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 702cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getLine1AlphaTag() { 7040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getLine1AlphaTag(); 7050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 707cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setLine1Number(String alphaTag, String number, Message onComplete) { 7090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setLine1Number(alphaTag, number, onComplete); 7100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 712cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getVoiceMailNumber() { 7140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getVoiceMailNumber(); 7150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 7170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** @hide */ 718cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public int getVoiceMessageCount(){ 7200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getVoiceMessageCount(); 7210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 723cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getVoiceMailAlphaTag() { 7250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getVoiceMailAlphaTag(); 7260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 728cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setVoiceMailNumber(String alphaTag,String voiceMailNumber, 7300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Message onComplete) { 7310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setVoiceMailNumber(alphaTag, voiceMailNumber, onComplete); 7320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 734cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void getCallForwardingOption(int commandInterfaceCFReason, 7360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Message onComplete) { 7370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getCallForwardingOption(commandInterfaceCFReason, 7380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville onComplete); 7390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 741cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setCallForwardingOption(int commandInterfaceCFReason, 7430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int commandInterfaceCFAction, String dialingNumber, 7440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int timerSeconds, Message onComplete) { 7450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setCallForwardingOption(commandInterfaceCFReason, 7460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville commandInterfaceCFAction, dialingNumber, timerSeconds, onComplete); 7470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 749cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void getOutgoingCallerIdDisplay(Message onComplete) { 7510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getOutgoingCallerIdDisplay(onComplete); 7520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 754cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setOutgoingCallerIdDisplay(int commandInterfaceCLIRMode, 7560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Message onComplete) { 7570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setOutgoingCallerIdDisplay(commandInterfaceCLIRMode, 7580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville onComplete); 7590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 761cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void getCallWaiting(Message onComplete) { 7630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getCallWaiting(onComplete); 7640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 766cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setCallWaiting(boolean enable, Message onComplete) { 7680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setCallWaiting(enable, onComplete); 7690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 771cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void getAvailableNetworks(Message response) { 7730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getAvailableNetworks(response); 7740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 776cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setNetworkSelectionModeAutomatic(Message response) { 7780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setNetworkSelectionModeAutomatic(response); 7790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 781cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void selectNetworkManually(OperatorInfo network, Message response) { 7830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.selectNetworkManually(network, response); 7840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 786cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setPreferredNetworkType(int networkType, Message response) { 7880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setPreferredNetworkType(networkType, response); 7890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 791cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void getPreferredNetworkType(Message response) { 7930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getPreferredNetworkType(response); 7940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 7950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 796cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 7970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void getNeighboringCids(Message response) { 7980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getNeighboringCids(response); 7990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 801cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setOnPostDialCharacter(Handler h, int what, Object obj) { 8030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setOnPostDialCharacter(h, what, obj); 8040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 806cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setMute(boolean muted) { 8080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setMute(muted); 8090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 811cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean getMute() { 8130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getMute(); 8140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 816cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setEchoSuppressionEnabled(boolean enabled) { 8180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setEchoSuppressionEnabled(enabled); 8190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 821cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void invokeOemRilRequestRaw(byte[] data, Message response) { 8230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.invokeOemRilRequestRaw(data, response); 8240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 826cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void invokeOemRilRequestStrings(String[] strings, Message response) { 8280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.invokeOemRilRequestStrings(strings, response); 8290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 831cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void getDataCallList(Message response) { 8330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getDataCallList(response); 8340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 836cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void updateServiceLocation() { 8380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.updateServiceLocation(); 8390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 841cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void enableLocationUpdates() { 8430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.enableLocationUpdates(); 8440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 846cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void disableLocationUpdates() { 8480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.disableLocationUpdates(); 8490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 851cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setUnitTestMode(boolean f) { 8530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setUnitTestMode(f); 8540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 856cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean getUnitTestMode() { 8580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getUnitTestMode(); 8590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 861cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setBandMode(int bandMode, Message response) { 8630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setBandMode(bandMode, response); 8640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 866cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void queryAvailableBandMode(Message response) { 8680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.queryAvailableBandMode(response); 8690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 871cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean getDataRoamingEnabled() { 8730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getDataRoamingEnabled(); 8740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 876cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setDataRoamingEnabled(boolean enable) { 8780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setDataRoamingEnabled(enable); 8790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 881cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void queryCdmaRoamingPreference(Message response) { 8830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.queryCdmaRoamingPreference(response); 8840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 886cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setCdmaRoamingPreference(int cdmaRoamingType, Message response) { 8880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setCdmaRoamingPreference(cdmaRoamingType, response); 8890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 891cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setCdmaSubscription(int cdmaSubscriptionType, Message response) { 8930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setCdmaSubscription(cdmaSubscriptionType, response); 8940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 8950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 896cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 8970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public SimulatedRadioControl getSimulatedRadioControl() { 8980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getSimulatedRadioControl(); 8990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 901cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public int enableApnType(String type) { 9030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.enableApnType(type); 9040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 906cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public int disableApnType(String type) { 9080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.disableApnType(type); 9090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 911cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean isDataConnectivityPossible() { 9130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.isDataConnectivityPossible(PhoneConstants.APN_TYPE_DEFAULT); 9140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 916cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean isDataConnectivityPossible(String apnType) { 9180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.isDataConnectivityPossible(apnType); 9190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 921cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getDeviceId() { 9230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getDeviceId(); 9240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 926cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getDeviceSvn() { 9280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getDeviceSvn(); 9290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 931cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getSubscriberId() { 9330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getSubscriberId(); 9340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 936cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9370e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi public String getGroupIdLevel1() { 9380e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi return mActivePhone.getGroupIdLevel1(); 9390e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi } 9400e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi 9410e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi @Override 9420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getIccSerialNumber() { 9430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getIccSerialNumber(); 9440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 946cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getEsn() { 9480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getEsn(); 9490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 951cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getMeid() { 9530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getMeid(); 9540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 956cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getMsisdn() { 9580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getMsisdn(); 9590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 961cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getImei() { 9630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getImei(); 9640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 966cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public PhoneSubInfo getPhoneSubInfo(){ 9680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getPhoneSubInfo(); 9690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 971cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public IccPhoneBookInterfaceManager getIccPhoneBookInterfaceManager(){ 9730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getIccPhoneBookInterfaceManager(); 9740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 976cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setTTYMode(int ttyMode, Message onComplete) { 9780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setTTYMode(ttyMode, onComplete); 9790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 981cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void queryTTYMode(Message onComplete) { 9830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.queryTTYMode(onComplete); 9840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 986cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void activateCellBroadcastSms(int activate, Message response) { 9880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.activateCellBroadcastSms(activate, response); 9890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 991cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void getCellBroadcastSmsConfig(Message response) { 9930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getCellBroadcastSmsConfig(response); 9940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 9950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 996cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 9970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setCellBroadcastSmsConfig(int[] configValuesArray, Message response) { 9980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setCellBroadcastSmsConfig(configValuesArray, response); 9990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1001cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void notifyDataActivity() { 10030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.notifyDataActivity(); 10040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1006cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void getSmscAddress(Message result) { 10080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.getSmscAddress(result); 10090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1011cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setSmscAddress(String address, Message result) { 10130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setSmscAddress(address, result); 10140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1016cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public int getCdmaEriIconIndex() { 10180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getCdmaEriIconIndex(); 10190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1021cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getCdmaEriText() { 10230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getCdmaEriText(); 10240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1026cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public int getCdmaEriIconMode() { 10280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getCdmaEriIconMode(); 10290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 10310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public Phone getActivePhone() { 10320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone; 10330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1035cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void sendBurstDtmf(String dtmfString, int on, int off, Message onComplete){ 10370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.sendBurstDtmf(dtmfString, on, off, onComplete); 10380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1040cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void exitEmergencyCallbackMode(){ 10420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.exitEmergencyCallbackMode(); 10430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1045cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean needsOtaServiceProvisioning(){ 10470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.needsOtaServiceProvisioning(); 10480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1050cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean isOtaSpNumber(String dialStr){ 10520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.isOtaSpNumber(dialStr); 10530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1055cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForCallWaiting(Handler h, int what, Object obj){ 10570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForCallWaiting(h,what,obj); 10580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1060cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForCallWaiting(Handler h){ 10620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForCallWaiting(h); 10630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1065cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForSignalInfo(Handler h, int what, Object obj) { 10670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForSignalInfo(h,what,obj); 10680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1070cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForSignalInfo(Handler h) { 10720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForSignalInfo(h); 10730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1075cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForDisplayInfo(Handler h, int what, Object obj) { 10770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForDisplayInfo(h,what,obj); 10780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1080cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForDisplayInfo(Handler h) { 10820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForDisplayInfo(h); 10830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1085cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForNumberInfo(Handler h, int what, Object obj) { 10870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForNumberInfo(h, what, obj); 10880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1090cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForNumberInfo(Handler h) { 10920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForNumberInfo(h); 10930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1095cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 10960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForRedirectedNumberInfo(Handler h, int what, Object obj) { 10970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForRedirectedNumberInfo(h, what, obj); 10980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 10990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1100cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForRedirectedNumberInfo(Handler h) { 11020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForRedirectedNumberInfo(h); 11030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1105cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForLineControlInfo(Handler h, int what, Object obj) { 11070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForLineControlInfo( h, what, obj); 11080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1110cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForLineControlInfo(Handler h) { 11120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForLineControlInfo(h); 11130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1115cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerFoT53ClirlInfo(Handler h, int what, Object obj) { 11170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerFoT53ClirlInfo(h, what, obj); 11180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1120cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForT53ClirInfo(Handler h) { 11220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForT53ClirInfo(h); 11230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1125cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForT53AudioControlInfo(Handler h, int what, Object obj) { 11270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.registerForT53AudioControlInfo( h, what, obj); 11280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1130cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForT53AudioControlInfo(Handler h) { 11320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unregisterForT53AudioControlInfo(h); 11330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1135cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setOnEcbModeExitResponse(Handler h, int what, Object obj){ 11370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setOnEcbModeExitResponse(h,what,obj); 11380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1140cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unsetOnEcbModeExitResponse(Handler h){ 11420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.unsetOnEcbModeExitResponse(h); 11430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1145cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public boolean isCspPlmnEnabled() { 11470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.isCspPlmnEnabled(); 11480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1150cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public IsimRecords getIsimRecords() { 11520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getIsimRecords(); 11530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1155cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void requestIsimAuthentication(String nonce, Message response) { 11570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.requestIsimAuthentication(nonce, response); 11580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 11610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@inheritDoc} 11620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 11630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville @Override 11640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public int getLteOnCdmaMode() { 11650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getLteOnCdmaMode(); 11660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville @Override 11690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setVoiceMessageWaiting(int line, int countWaiting) { 11700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone.setVoiceMessageWaiting(line, countWaiting); 11710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville @Override 11740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public UsimServiceTable getUsimServiceTable() { 11750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mActivePhone.getUsimServiceTable(); 11760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1178cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void dispose() { 11800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mCommandsInterface.unregisterForOn(this); 11810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mCommandsInterface.unregisterForVoiceRadioTechChanged(this); 11820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mCommandsInterface.unregisterForRilConnected(this); 11830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1185cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 11860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void removeReferences() { 11870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mActivePhone = null; 11880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mCommandsInterface = null; 11890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 11900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville} 1191