Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c23975da authored by Amit Mahajan's avatar Amit Mahajan Committed by Android Git Automerger
Browse files

am 13a98b6c: Support for bearer_bitmask.

* commit '13a98b6c':
  Support for bearer_bitmask.
parents 3b342179 13a98b6c
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -27164,7 +27164,8 @@ package android.provider {
  public static final class Telephony.Carriers implements android.provider.BaseColumns {
    field public static final java.lang.String APN = "apn";
    field public static final java.lang.String AUTH_TYPE = "authtype";
    field public static final java.lang.String BEARER = "bearer";
    field public static final deprecated java.lang.String BEARER = "bearer";
    field public static final java.lang.String BEARER_BITMASK = "bearer_bitmask";
    field public static final java.lang.String CARRIER_ENABLED = "carrier_enabled";
    field public static final android.net.Uri CONTENT_URI;
    field public static final java.lang.String CURRENT = "current";
+2 −1
Original line number Diff line number Diff line
@@ -29177,7 +29177,8 @@ package android.provider {
  public static final class Telephony.Carriers implements android.provider.BaseColumns {
    field public static final java.lang.String APN = "apn";
    field public static final java.lang.String AUTH_TYPE = "authtype";
    field public static final java.lang.String BEARER = "bearer";
    field public static final deprecated java.lang.String BEARER = "bearer";
    field public static final java.lang.String BEARER_BITMASK = "bearer_bitmask";
    field public static final java.lang.String CARRIER_ENABLED = "carrier_enabled";
    field public static final android.net.Uri CONTENT_URI;
    field public static final java.lang.String CURRENT = "current";
+52 −0
Original line number Diff line number Diff line
@@ -1104,6 +1104,58 @@ public class ServiceState implements Parcelable {
                || radioTechnology == RIL_RADIO_TECHNOLOGY_EHRPD;
    }

    /** @hide */
    public static boolean hasCdma(int radioTechnologyBitmask) {
        int cdmaBitmask = (RIL_RADIO_TECHNOLOGY_IS95A
                | RIL_RADIO_TECHNOLOGY_IS95B
                | RIL_RADIO_TECHNOLOGY_1xRTT
                | RIL_RADIO_TECHNOLOGY_EVDO_0
                | RIL_RADIO_TECHNOLOGY_EVDO_A
                | RIL_RADIO_TECHNOLOGY_EVDO_B
                | RIL_RADIO_TECHNOLOGY_EHRPD);

        return ((radioTechnologyBitmask & cdmaBitmask) != 0);
    }

    /** @hide */
    public static boolean bitmaskHasTech(int bearerBitmask, int radioTech) {
        if (bearerBitmask == 0) {
            return true;
        } else if (radioTech >= 1) {
            return ((bearerBitmask & (1 << (radioTech - 1))) != 0);
        }
        return false;
    }

    /** @hide */
    public static int getBitmaskForTech(int radioTech) {
        if (radioTech >= 1) {
            return (1 << (radioTech - 1));
        }
        return 0;
    }

    /** @hide */
    public static int getBitmaskFromString(String bearerList) {
        String[] bearers = bearerList.split("\\|");
        int bearerBitmask = 0;
        for (String bearer : bearers) {
            int bearerInt = 0;
            try {
                bearerInt = Integer.parseInt(bearer.trim());
            } catch (NumberFormatException nfe) {
                return 0;
            }

            if (bearerInt == 0) {
                return 0;
            }

            bearerBitmask |= getBitmaskForTech(bearerInt);
        }
        return bearerBitmask;
    }

    /**
     * Returns a merged ServiceState consisting of the base SS with voice settings from the
     * voice SS. The voice SS is only used if it is IN_SERVICE (otherwise the base SS is returned).