Revert "Removed old data stack"
Revert "Removed old data stack"
Revert submission 19477826-remove_old_data
Reason for revert: Pixel 4a needs it
Reverted Changes:
I4f58626b0:Removed old data stack
I798b17a59:Removed old data stack
I523b924c2:Removed old data stack
Change-Id: Ia834a6da389da4d5e5f8e8fb58a00b4222ae6537
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index f1f0a68..66cef64 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -184,6 +184,7 @@
import com.android.internal.telephony.TelephonyIntents;
import com.android.internal.telephony.TelephonyPermissions;
import com.android.internal.telephony.data.DataUtils;
+import com.android.internal.telephony.dataconnection.ApnSettingUtils;
import com.android.internal.telephony.emergency.EmergencyNumberTracker;
import com.android.internal.telephony.euicc.EuiccConnector;
import com.android.internal.telephony.ims.ImsResolver;
@@ -2860,8 +2861,13 @@
int subId = mSubscriptionController.getDefaultDataSubId();
final Phone phone = getPhone(subId);
if (phone != null) {
- phone.getDataSettingsManager().setDataEnabled(
- TelephonyManager.DATA_ENABLED_REASON_USER, true, callingPackage);
+ if (phone.isUsingNewDataStack()) {
+ phone.getDataSettingsManager().setDataEnabled(
+ TelephonyManager.DATA_ENABLED_REASON_USER, true, callingPackage);
+ } else {
+ phone.getDataEnabledSettings().setDataEnabled(
+ TelephonyManager.DATA_ENABLED_REASON_USER, true);
+ }
return true;
} else {
return false;
@@ -2881,8 +2887,13 @@
int subId = mSubscriptionController.getDefaultDataSubId();
final Phone phone = getPhone(subId);
if (phone != null) {
- phone.getDataSettingsManager().setDataEnabled(
- TelephonyManager.DATA_ENABLED_REASON_USER, false, callingPackage);
+ if (phone.isUsingNewDataStack()) {
+ phone.getDataSettingsManager().setDataEnabled(
+ TelephonyManager.DATA_ENABLED_REASON_USER, false, callingPackage);
+ } else {
+ phone.getDataEnabledSettings().setDataEnabled(
+ TelephonyManager.DATA_ENABLED_REASON_USER, false);
+ }
return true;
} else {
return false;
@@ -2998,7 +3009,10 @@
try {
final Phone phone = getPhone(subId);
if (phone != null) {
- return phone.getDataNetworkController().getInternetDataNetworkState();
+ if (phone.isUsingNewDataStack()) {
+ return phone.getDataNetworkController().getInternetDataNetworkState();
+ }
+ return PhoneConstantConversions.convertDataState(phone.getDataConnectionState());
} else {
return PhoneConstantConversions.convertDataState(
PhoneConstants.DataState.DISCONNECTED);
@@ -6634,7 +6648,11 @@
Phone phone = PhoneFactory.getPhone(phoneId);
if (phone != null) {
boolean retVal;
- retVal = phone.getDataSettingsManager().isDataEnabled();
+ if (phone.isUsingNewDataStack()) {
+ retVal = phone.getDataSettingsManager().isDataEnabled();
+ } else {
+ retVal = phone.getDataEnabledSettings().isDataEnabled();
+ }
if (DBG) log("isDataEnabled: " + retVal + ", subId=" + subId);
return retVal;
} else {
@@ -6686,7 +6704,15 @@
Phone phone = PhoneFactory.getPhone(phoneId);
if (phone != null) {
boolean retVal;
- retVal = phone.getDataSettingsManager().isDataEnabledForReason(reason);
+ if (phone.isUsingNewDataStack()) {
+ retVal = phone.getDataSettingsManager().isDataEnabledForReason(reason);
+ } else {
+ if (reason == TelephonyManager.DATA_ENABLED_REASON_USER) {
+ retVal = phone.isUserDataEnabled();
+ } else {
+ retVal = phone.getDataEnabledSettings().isDataEnabledForReason(reason);
+ }
+ }
if (DBG) log("isDataEnabledForReason: retVal=" + retVal);
return retVal;
} else {
@@ -8425,8 +8451,12 @@
if (reason == TelephonyManager.DATA_ENABLED_REASON_CARRIER) {
phone.carrierActionSetMeteredApnsEnabled(enabled);
} else {
- phone.getDataSettingsManager().setDataEnabled(
- reason, enabled, callingPackage);
+ if (phone.isUsingNewDataStack()) {
+ phone.getDataSettingsManager().setDataEnabled(
+ reason, enabled, callingPackage);
+ } else {
+ phone.getDataEnabledSettings().setDataEnabled(reason, enabled);
+ }
}
}
} finally {
@@ -9636,10 +9666,15 @@
boolean isMetered;
boolean isDataEnabled;
- isMetered = phone.getDataNetworkController().getDataConfigManager()
- .isMeteredCapability(DataUtils.apnTypeToNetworkCapability(apnType),
- phone.getServiceState().getDataRoaming());
- isDataEnabled = phone.getDataSettingsManager().isDataEnabled(apnType);
+ if (phone.isUsingNewDataStack()) {
+ isMetered = phone.getDataNetworkController().getDataConfigManager()
+ .isMeteredCapability(DataUtils.apnTypeToNetworkCapability(apnType),
+ phone.getServiceState().getDataRoaming());
+ isDataEnabled = phone.getDataSettingsManager().isDataEnabled(apnType);
+ } else {
+ isMetered = ApnSettingUtils.isMeteredApnType(apnType, phone);
+ isDataEnabled = phone.getDataEnabledSettings().isDataEnabled(apnType);
+ }
return !isMetered || isDataEnabled;
} finally {
Binder.restoreCallingIdentity(identity);
@@ -9655,9 +9690,13 @@
try {
Phone phone = getPhone(subId);
if (phone == null) return true; // By default return true.
- return phone.getDataNetworkController().getDataConfigManager().isMeteredCapability(
- DataUtils.apnTypeToNetworkCapability(apnType),
- phone.getServiceState().getDataRoaming());
+ if (phone.isUsingNewDataStack()) {
+ return phone.getDataNetworkController().getDataConfigManager().isMeteredCapability(
+ DataUtils.apnTypeToNetworkCapability(apnType),
+ phone.getServiceState().getDataRoaming());
+ }
+
+ return ApnSettingUtils.isMeteredApnType(apnType, phone);
} finally {
Binder.restoreCallingIdentity(identity);
}
@@ -9789,9 +9828,17 @@
switch (policy) {
case TelephonyManager.MOBILE_DATA_POLICY_DATA_ON_NON_DEFAULT_DURING_VOICE_CALL:
- return phone.getDataSettingsManager().isDataAllowedInVoiceCall();
+ if (phone.isUsingNewDataStack()) {
+ return phone.getDataSettingsManager().isDataAllowedInVoiceCall();
+ } else {
+ return phone.getDataEnabledSettings().isDataAllowedInVoiceCall();
+ }
case TelephonyManager.MOBILE_DATA_POLICY_MMS_ALWAYS_ALLOWED:
- return phone.getDataSettingsManager().isMmsAlwaysAllowed();
+ if (phone.isUsingNewDataStack()) {
+ return phone.getDataSettingsManager().isMmsAlwaysAllowed();
+ } else {
+ return phone.getDataEnabledSettings().isMmsAlwaysAllowed();
+ }
default:
throw new IllegalArgumentException(policy + " is not a valid policy");
}
@@ -9812,10 +9859,18 @@
switch (policy) {
case TelephonyManager.MOBILE_DATA_POLICY_DATA_ON_NON_DEFAULT_DURING_VOICE_CALL:
- phone.getDataSettingsManager().setAllowDataDuringVoiceCall(enabled);
+ if (phone.isUsingNewDataStack()) {
+ phone.getDataSettingsManager().setAllowDataDuringVoiceCall(enabled);
+ } else {
+ phone.getDataEnabledSettings().setAllowDataDuringVoiceCall(enabled);
+ }
break;
case TelephonyManager.MOBILE_DATA_POLICY_MMS_ALWAYS_ALLOWED:
- phone.getDataSettingsManager().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");
@@ -11192,6 +11247,12 @@
}
}
+ @Override
+ public boolean isUsingNewDataStack() {
+ TelephonyPermissions.enforceShellOnly(Binder.getCallingUid(), "isUsingNewDataStack");
+ return getDefaultPhone().isUsingNewDataStack();
+ }
+
/**
* Sets the modem service class Name that Telephony will bind to.
*