Revert "Handle emergency registration failure case"
This reverts commit b43e3703687c7f4c6249ac78916dd21606961689.
Reason for revert: CP shall handle this failure.
Bug: 298375302
Bug: 278183420
Change-Id: I049363530be18fbd2c565b0651cd6ceb15e3ed03
diff --git a/src/com/android/services/telephony/domainselection/EmergencyCallDomainSelector.java b/src/com/android/services/telephony/domainselection/EmergencyCallDomainSelector.java
index 3388c97..02cef12 100644
--- a/src/com/android/services/telephony/domainselection/EmergencyCallDomainSelector.java
+++ b/src/com/android/services/telephony/domainselection/EmergencyCallDomainSelector.java
@@ -83,7 +83,6 @@
import android.telephony.emergency.EmergencyNumber;
import android.telephony.ims.ImsManager;
import android.telephony.ims.ImsMmTelManager;
-import android.telephony.ims.ImsReasonInfo;
import android.telephony.ims.ProvisioningManager;
import android.text.TextUtils;
import android.util.LocalLog;
@@ -694,8 +693,7 @@
mCancelSignal = new CancellationSignal();
// In case dialing over Wi-Fi has failed, do not the change the domain preference.
if (!wifiFailed) {
- mLastPreferredNetworks = getNextPreferredNetworks(csPreferred, mTryEpsFallback,
- !startVoWifiTimer);
+ mLastPreferredNetworks = getNextPreferredNetworks(csPreferred, mTryEpsFallback);
}
mTryEpsFallback = false;
@@ -733,13 +731,11 @@
*
* @param csPreferred Indicates whether CS preferred scan is requested.
* @param tryEpsFallback Indicates whether scan requested for EPS fallback.
- * @param lastScanFailed Indicates whether this a scan request due to the failure of last scan
- * request.
* @return The list of preferred network types.
*/
@VisibleForTesting
public @RadioAccessNetworkType List<Integer> getNextPreferredNetworks(boolean csPreferred,
- boolean tryEpsFallback, boolean lastScanFailed) {
+ boolean tryEpsFallback) {
if (mRequiresVoLteEnabled && !isAdvancedCallingSettingEnabled()) {
// Emergency call over IMS is not supported.
logi("getNextPreferredNetworks VoLte setting is not enabled.");
@@ -809,23 +805,6 @@
}
}
- // There can be cases that dialing IMS call failed but the modem doesn't know this
- // situation with some vendor solutions. For example, dialing failure due to the
- // emergency registration failure.
- // Remove the current RAT from the scan list to avoid modem select current PLMN.
- // If the scan fails, the next scan will include this RAT again.
- //
- // TODO (b/278183420) Replace this with a better solution by adding indication
- // of call setup failure to the scan request.
- ImsReasonInfo reasonInfo = mSelectionAttributes.getPsDisconnectCause();
- if (!lastScanFailed && reasonInfo != null
- && reasonInfo.getCode() == ImsReasonInfo.CODE_LOCAL_NOT_REGISTERED) {
- logi("getNextPreferredNetworks remove " + mLastNetworkType);
- if (preferredNetworks.size() > 1) {
- preferredNetworks.remove(Integer.valueOf(mLastNetworkType));
- }
- }
-
return preferredNetworks;
}
diff --git a/tests/src/com/android/services/telephony/domainselection/EmergencyCallDomainSelectorTest.java b/tests/src/com/android/services/telephony/domainselection/EmergencyCallDomainSelectorTest.java
index 9be85ed..14df0b1 100644
--- a/tests/src/com/android/services/telephony/domainselection/EmergencyCallDomainSelectorTest.java
+++ b/tests/src/com/android/services/telephony/domainselection/EmergencyCallDomainSelectorTest.java
@@ -99,7 +99,6 @@
import android.telephony.WwanSelectorCallback;
import android.telephony.ims.ImsManager;
import android.telephony.ims.ImsMmTelManager;
-import android.telephony.ims.ImsReasonInfo;
import android.telephony.ims.ProvisioningManager;
import android.test.suitebuilder.annotation.SmallTest;
import android.testing.TestableLooper;
@@ -1271,7 +1270,7 @@
setupForScanListTest(bundle);
- verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(false, false, false));
+ verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(false, false));
}
@Test
@@ -1285,7 +1284,7 @@
setupForScanListTest(bundle);
- verifyPsPreferredScanList(mDomainSelector.getNextPreferredNetworks(false, false, false));
+ verifyPsPreferredScanList(mDomainSelector.getNextPreferredNetworks(false, false));
}
@Test
@@ -1300,7 +1299,7 @@
setupForScanListTest(bundle);
- verifyPsOnlyScanList(mDomainSelector.getNextPreferredNetworks(false, false, false));
+ verifyPsOnlyScanList(mDomainSelector.getNextPreferredNetworks(false, false));
}
@Test
@@ -1315,7 +1314,7 @@
setupForScanListTest(bundle);
- verifyCsOnlyScanList(mDomainSelector.getNextPreferredNetworks(false, false, false));
+ verifyCsOnlyScanList(mDomainSelector.getNextPreferredNetworks(false, false));
}
@@ -1330,7 +1329,7 @@
setupForScanListTest(bundle);
- verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(true, false, false));
+ verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(true, false));
}
@Test
@@ -1344,7 +1343,7 @@
setupForScanListTest(bundle);
- verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(true, false, false));
+ verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(true, false));
}
@Test
@@ -1360,7 +1359,7 @@
setupForScanListTest(bundle);
- verifyPsOnlyScanList(mDomainSelector.getNextPreferredNetworks(true, false, false));
+ verifyPsOnlyScanList(mDomainSelector.getNextPreferredNetworks(true, false));
}
@Test
@@ -1375,7 +1374,7 @@
setupForScanListTest(bundle);
- verifyCsOnlyScanList(mDomainSelector.getNextPreferredNetworks(true, false, false));
+ verifyCsOnlyScanList(mDomainSelector.getNextPreferredNetworks(true, false));
}
@Test
@@ -1392,7 +1391,7 @@
bindImsService();
processAllMessages();
- verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(false, false, false));
+ verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(false, false));
}
@Test
@@ -1409,7 +1408,7 @@
bindImsService();
processAllMessages();
- verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(false, false, false));
+ verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(false, false));
}
@Test
@@ -1427,7 +1426,7 @@
bindImsService();
processAllMessages();
- verifyPsOnlyScanList(mDomainSelector.getNextPreferredNetworks(false, false, false));
+ verifyPsOnlyScanList(mDomainSelector.getNextPreferredNetworks(false, false));
}
@Test
@@ -1444,7 +1443,7 @@
bindImsService();
processAllMessages();
- verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(true, false, false));
+ verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(true, false));
}
@Test
@@ -1461,7 +1460,7 @@
bindImsService();
processAllMessages();
- verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(true, false, false));
+ verifyCsPreferredScanList(mDomainSelector.getNextPreferredNetworks(true, false));
}
@Test
@@ -1480,7 +1479,7 @@
bindImsService();
processAllMessages();
- verifyPsOnlyScanList(mDomainSelector.getNextPreferredNetworks(true, false, false));
+ verifyPsOnlyScanList(mDomainSelector.getNextPreferredNetworks(true, false));
}
@Test
@@ -1496,7 +1495,7 @@
setupForScanListTest(bundle);
- List<Integer> networks = mDomainSelector.getNextPreferredNetworks(false, true, false);
+ List<Integer> networks = mDomainSelector.getNextPreferredNetworks(false, true);
assertFalse(networks.isEmpty());
assertTrue(networks.contains(EUTRAN));
@@ -1652,36 +1651,6 @@
}
@Test
- public void testDefaultEpsImsRegisteredSelectPsEmergencyRegFailed() throws Exception {
- createSelector(SLOT_0_SUB_ID);
- unsolBarringInfoChanged(false);
-
- EmergencyRegResult regResult = getEmergencyRegResult(EUTRAN, REGISTRATION_STATE_HOME,
- NetworkRegistrationInfo.DOMAIN_PS,
- true, true, 0, 0, "", "");
- SelectionAttributes attr = getSelectionAttributes(SLOT_0, SLOT_0_SUB_ID, regResult);
- mDomainSelector.selectDomain(attr, mTransportSelectorCallback);
- processAllMessages();
-
- bindImsService();
-
- verifyPsDialed();
-
- attr = new SelectionAttributes.Builder(SLOT_0, SLOT_0_SUB_ID, SELECTOR_TYPE_CALLING)
- .setEmergency(true)
- .setEmergencyRegResult(regResult)
- .setPsDisconnectCause(
- new ImsReasonInfo(ImsReasonInfo.CODE_LOCAL_NOT_REGISTERED, 0, null))
- .build();
- mDomainSelector.reselectDomain(attr);
- processAllMessages();
-
- verify(mWwanSelectorCallback, times(1)).onRequestEmergencyNetworkScan(
- any(), anyInt(), any(), any());
- assertFalse(mAccessNetwork.contains(EUTRAN));
- }
-
- @Test
public void testMaxCellularTimeout() throws Exception {
PersistableBundle bundle = getDefaultPersistableBundle();
bundle.putBoolean(KEY_EMERGENCY_CALL_OVER_EMERGENCY_PDN_BOOL, true);