[mainline] Decouple ServiceState.bitmaskHasTech and getBitmaskForTech
Bug: 146314969
Test: Build pass.
make RunSettingsRoboTests ROBOTEST_FILTER=ApnEditorTest
Change-Id: I1e9eeab9d886a2910c7db8b59cfe267c51c5920c
Merged-In: I1600a96a729fc3b555eab5bc80b069663c8eb00a
diff --git a/src/com/android/settings/network/ApnEditor.java b/src/com/android/settings/network/ApnEditor.java
index 1451a40..62673ab 100644
--- a/src/com/android/settings/network/ApnEditor.java
+++ b/src/com/android/settings/network/ApnEditor.java
@@ -29,7 +29,6 @@
import android.os.PersistableBundle;
import android.provider.Telephony;
import android.telephony.CarrierConfigManager;
-import android.telephony.ServiceState;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
@@ -1000,7 +999,7 @@
bearerBitmask = 0;
break;
} else {
- bearerBitmask |= ServiceState.getBitmaskForTech(Integer.parseInt(bearer));
+ bearerBitmask |= getBitmaskForTech(Integer.parseInt(bearer));
}
}
callUpdate = setIntValueAndCheckIfDiff(values,
@@ -1012,7 +1011,7 @@
int bearerVal;
if (bearerBitmask == 0 || mBearerInitialVal == 0) {
bearerVal = 0;
- } else if (ServiceState.bitmaskHasTech(bearerBitmask, mBearerInitialVal)) {
+ } else if (bitmaskHasTech(bearerBitmask, mBearerInitialVal)) {
bearerVal = mBearerInitialVal;
} else {
// bearer field was being used but bitmask has changed now and does not include the
@@ -1304,4 +1303,20 @@
return (String) mData[index];
}
}
+
+ private static int getBitmaskForTech(int radioTech) {
+ if (radioTech >= 1) {
+ return (1 << (radioTech - 1));
+ }
+ return 0;
+ }
+
+ private static boolean bitmaskHasTech(int bearerBitmask, int radioTech) {
+ if (bearerBitmask == 0) {
+ return true;
+ } else if (radioTech >= 1) {
+ return ((bearerBitmask & (1 << (radioTech - 1))) != 0);
+ }
+ return false;
+ }
}