aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2020-02-28 02:05:30 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2020-02-28 02:05:30 +0000
commit52cc2af533bd19e4891aba26e429f7a99f5afee3 (patch)
tree83605b809070b497aeab65d1fa6dfafc28689c86
parentb5d978a1b9698eef8f0d10c7f208883ea7ec23f8 (diff)
parentf29a3a3430741f03f7be6e9879b7152d57ef3787 (diff)
downloadtelephony-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
-rw-r--r--src/java/com/android/internal/telephony/DefaultPhoneNotifier.java12
-rw-r--r--src/java/com/android/internal/telephony/GsmCdmaPhone.java5
-rw-r--r--src/java/com/android/internal/telephony/Phone.java40
-rw-r--r--src/java/com/android/internal/telephony/PhoneNotifier.java2
-rw-r--r--tests/telephonytests/src/com/android/internal/telephony/DefaultPhoneNotifierTest.java11
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));
- }
}