diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2020-02-28 02:05:30 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2020-02-28 02:05:30 +0000 |
commit | 52cc2af533bd19e4891aba26e429f7a99f5afee3 (patch) | |
tree | 83605b809070b497aeab65d1fa6dfafc28689c86 | |
parent | b5d978a1b9698eef8f0d10c7f208883ea7ec23f8 (diff) | |
parent | f29a3a3430741f03f7be6e9879b7152d57ef3787 (diff) | |
download | telephony-android10-d4-s1-release.tar.gz |
Snap for 6245392 from f29a3a3430741f03f7be6e9879b7152d57ef3787 to qt-d4-releaseandroid-10.0.0_r42android10-d4-s1-release
Change-Id: Icec02c14373cdd54a9ec81dad19668f4b4763dd4
5 files changed, 44 insertions, 26 deletions
diff --git a/src/java/com/android/internal/telephony/DefaultPhoneNotifier.java b/src/java/com/android/internal/telephony/DefaultPhoneNotifier.java index 20a3dd2716..a887f9d2d8 100644 --- a/src/java/com/android/internal/telephony/DefaultPhoneNotifier.java +++ b/src/java/com/android/internal/telephony/DefaultPhoneNotifier.java @@ -255,18 +255,6 @@ public class DefaultPhoneNotifier implements PhoneNotifier { } } - @Override - public void notifyOtaspChanged(Phone sender, int otaspMode) { - int subId = sender.getSubId(); - try { - if (mRegistry != null) { - mRegistry.notifyOtaspChanged(subId, otaspMode); - } - } catch (RemoteException ex) { - // system process is dead - } - } - public void notifyPreciseCallState(Phone sender) { Call ringingCall = sender.getRingingCall(); Call foregroundCall = sender.getForegroundCall(); diff --git a/src/java/com/android/internal/telephony/GsmCdmaPhone.java b/src/java/com/android/internal/telephony/GsmCdmaPhone.java index b7744a43b7..46bcb210da 100644 --- a/src/java/com/android/internal/telephony/GsmCdmaPhone.java +++ b/src/java/com/android/internal/telephony/GsmCdmaPhone.java @@ -3441,6 +3441,11 @@ public class GsmCdmaPhone extends Phone { } @Override + public int getOtasp() { + return mSST.getOtasp(); + } + + @Override public int getCdmaEriIconIndex() { if (isPhoneTypeGsm()) { return super.getCdmaEriIconIndex(); diff --git a/src/java/com/android/internal/telephony/Phone.java b/src/java/com/android/internal/telephony/Phone.java index e4b4b02218..96c0b73333 100644 --- a/src/java/com/android/internal/telephony/Phone.java +++ b/src/java/com/android/internal/telephony/Phone.java @@ -380,6 +380,8 @@ public abstract class Phone extends Handler implements PhoneInternalInterface { private final RegistrantList mCellInfoRegistrants = new RegistrantList(); + private final RegistrantList mOtaspRegistrants = new RegistrantList(); + protected Registrant mPostDialHandler; protected final LocalLog mLocalLog; @@ -2356,7 +2358,7 @@ public abstract class Phone extends Handler implements PhoneInternalInterface { @UnsupportedAppUsage public void notifyOtaspChanged(int otaspMode) { - mNotifier.notifyOtaspChanged(this, otaspMode); + mOtaspRegistrants.notifyRegistrants(new AsyncResult(null, otaspMode, null)); } public void notifyVoiceActivationStateChanged(int state) { @@ -2754,6 +2756,42 @@ public abstract class Phone extends Handler implements PhoneInternalInterface { } /** + * Register for notifications when OTA Service Provisioning mode has changed. + * + * <p>The mode is integer. {@link TelephonyManager#OTASP_UNKNOWN} + * means the value is currently unknown and the system should wait until + * {@link TelephonyManager#OTASP_NEEDED} or {@link TelephonyManager#OTASP_NOT_NEEDED} is + * received before making the decision to perform OTASP or not. + * + * @param h Handler that receives the notification message. + * @param what User-defined message code. + * @param obj User object. + */ + public void registerForOtaspChange(Handler h, int what, Object obj) { + checkCorrectThread(h); + mOtaspRegistrants.addUnique(h, what, obj); + // notify first + new Registrant(h, what, obj).notifyRegistrant(new AsyncResult(null, getOtasp(), null)); + } + + /** + * Unegister for notifications when OTA Service Provisioning mode has changed. + * @param h Handler to be removed from the registrant list. + */ + public void unregisterForOtaspChange(Handler h) { + mOtaspRegistrants.remove(h); + } + + /** + * Returns the current OTA Service Provisioning mode. + * + * @see registerForOtaspChange + */ + public int getOtasp() { + return TelephonyManager.OTASP_UNKNOWN; + } + + /** * Register for notifications when CDMA call waiting comes * * @param h Handler that receives the notification message. diff --git a/src/java/com/android/internal/telephony/PhoneNotifier.java b/src/java/com/android/internal/telephony/PhoneNotifier.java index 2e7b46112e..7840379506 100644 --- a/src/java/com/android/internal/telephony/PhoneNotifier.java +++ b/src/java/com/android/internal/telephony/PhoneNotifier.java @@ -54,8 +54,6 @@ public interface PhoneNotifier { void notifyDataActivity(Phone sender); - void notifyOtaspChanged(Phone sender, int otaspMode); - void notifyCellInfo(Phone sender, List<CellInfo> cellInfo); /** Notify of change to PhysicalChannelConfiguration. */ diff --git a/tests/telephonytests/src/com/android/internal/telephony/DefaultPhoneNotifierTest.java b/tests/telephonytests/src/com/android/internal/telephony/DefaultPhoneNotifierTest.java index 3e1ecbe9f4..be94c4773b 100644 --- a/tests/telephonytests/src/com/android/internal/telephony/DefaultPhoneNotifierTest.java +++ b/tests/telephonytests/src/com/android/internal/telephony/DefaultPhoneNotifierTest.java @@ -265,15 +265,4 @@ public class DefaultPhoneNotifierTest extends TelephonyTest { assertEquals(3, cellLocationCapture.getValue().getInt("cid")); assertEquals(5, cellLocationCapture.getValue().getInt("psc")); } - - @Test @SmallTest - public void testNotifyOtaspChanged() throws Exception { - mDefaultPhoneNotifierUT.notifyOtaspChanged(mPhone, TelephonyManager.OTASP_NEEDED); - verify(mTelephonyRegisteryMock).notifyOtaspChanged(eq(mPhone.getSubId()), - eq(TelephonyManager.OTASP_NEEDED)); - - mDefaultPhoneNotifierUT.notifyOtaspChanged(mPhone, TelephonyManager.OTASP_UNKNOWN); - verify(mTelephonyRegisteryMock).notifyOtaspChanged(eq(mPhone.getSubId()), - eq(TelephonyManager.OTASP_UNKNOWN)); - } } |