Hook DataSettingsManager to the new telephony data stack
Use DataSettingsManager instead of DataEnabledSettings if
running new data stack is enabled.
Test: Manual
Bug: 204309297
Change-Id: I3b9f712fe23919ab6fb5a2c5b92dac64589fe4a6
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index 161690d..9dae962 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -2803,8 +2803,13 @@
int subId = mSubscriptionController.getDefaultDataSubId();
final Phone phone = getPhone(subId);
if (phone != null) {
- phone.getDataEnabledSettings().setDataEnabled(
- TelephonyManager.DATA_ENABLED_REASON_USER, true);
+ if (phone.isUsingNewDataStack()) {
+ phone.getDataSettingsManager().setDataEnabled(
+ TelephonyManager.DATA_ENABLED_REASON_USER, true);
+ } else {
+ phone.getDataEnabledSettings().setDataEnabled(
+ TelephonyManager.DATA_ENABLED_REASON_USER, true);
+ }
return true;
} else {
return false;
@@ -2824,8 +2829,13 @@
int subId = mSubscriptionController.getDefaultDataSubId();
final Phone phone = getPhone(subId);
if (phone != null) {
- phone.getDataEnabledSettings().setDataEnabled(
- TelephonyManager.DATA_ENABLED_REASON_USER, false);
+ if (phone.isUsingNewDataStack()) {
+ phone.getDataSettingsManager().setDataEnabled(
+ TelephonyManager.DATA_ENABLED_REASON_USER, false);
+ } else {
+ phone.getDataEnabledSettings().setDataEnabled(
+ TelephonyManager.DATA_ENABLED_REASON_USER, false);
+ }
return true;
} else {
return false;
@@ -6764,10 +6774,14 @@
Phone phone = PhoneFactory.getPhone(phoneId);
if (phone != null) {
boolean retVal;
- if (reason == TelephonyManager.DATA_ENABLED_REASON_USER) {
- retVal = phone.isUserDataEnabled();
+ if (phone.isUsingNewDataStack()) {
+ retVal = phone.getDataSettingsManager().isDataEnabledForReason(reason);
} else {
- retVal = phone.getDataEnabledSettings().isDataEnabledForReason(reason);
+ if (reason == TelephonyManager.DATA_ENABLED_REASON_USER) {
+ retVal = phone.isUserDataEnabled();
+ } else {
+ retVal = phone.getDataEnabledSettings().isDataEnabledForReason(reason);
+ }
}
if (DBG) log("isDataEnabledForReason: retVal=" + retVal);
return retVal;
@@ -8497,7 +8511,11 @@
if (reason == TelephonyManager.DATA_ENABLED_REASON_CARRIER) {
phone.carrierActionSetMeteredApnsEnabled(enabled);
} else {
- phone.getDataEnabledSettings().setDataEnabled(reason, enabled);
+ if (phone.isUsingNewDataStack()) {
+ phone.getDataSettingsManager().setDataEnabled(reason, enabled);
+ } else {
+ phone.getDataEnabledSettings().setDataEnabled(reason, enabled);
+ }
}
}
} finally {
@@ -9704,7 +9722,13 @@
if (phone == null) return false;
boolean isMetered = ApnSettingUtils.isMeteredApnType(apnType, phone);
- return !isMetered || phone.getDataEnabledSettings().isDataEnabled(apnType);
+ boolean isDataEnabled;
+ if (phone.isUsingNewDataStack()) {
+ isDataEnabled = phone.getDataSettingsManager().isDataEnabled(apnType);
+ } else {
+ isDataEnabled = phone.getDataEnabledSettings().isDataEnabled(apnType);
+ }
+ return !isMetered || isDataEnabled;
} finally {
Binder.restoreCallingIdentity(identity);
}
@@ -9858,9 +9882,17 @@
switch (policy) {
case TelephonyManager.MOBILE_DATA_POLICY_DATA_ON_NON_DEFAULT_DURING_VOICE_CALL:
- return phone.getDataEnabledSettings().isDataAllowedInVoiceCall();
+ if (phone.isUsingNewDataStack()) {
+ return phone.getDataSettingsManager().isDataAllowedInVoiceCall();
+ } else {
+ return phone.getDataEnabledSettings().isDataAllowedInVoiceCall();
+ }
case TelephonyManager.MOBILE_DATA_POLICY_MMS_ALWAYS_ALLOWED:
- return phone.getDataEnabledSettings().isMmsAlwaysAllowed();
+ if (phone.isUsingNewDataStack()) {
+ return phone.getDataSettingsManager().isMmsAlwaysAllowed();
+ } else {
+ return phone.getDataEnabledSettings().isMmsAlwaysAllowed();
+ }
default:
throw new IllegalArgumentException(policy + " is not a valid policy");
}
@@ -9881,10 +9913,18 @@
switch (policy) {
case TelephonyManager.MOBILE_DATA_POLICY_DATA_ON_NON_DEFAULT_DURING_VOICE_CALL:
- phone.getDataEnabledSettings().setAllowDataDuringVoiceCall(enabled);
+ if (phone.isUsingNewDataStack()) {
+ phone.getDataSettingsManager().setAllowDataDuringVoiceCall(enabled);
+ } else {
+ phone.getDataEnabledSettings().setAllowDataDuringVoiceCall(enabled);
+ }
break;
case TelephonyManager.MOBILE_DATA_POLICY_MMS_ALWAYS_ALLOWED:
- phone.getDataEnabledSettings().setAlwaysAllowMmsData(enabled);
+ if (phone.isUsingNewDataStack()) {
+ phone.getDataSettingsManager().setAlwaysAllowMmsData(enabled);
+ } else {
+ phone.getDataEnabledSettings().setAlwaysAllowMmsData(enabled);
+ }
break;
default:
throw new IllegalArgumentException(policy + " is not a valid policy");