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

Commit b4f666f1 authored by Wink Saville's avatar Wink Saville Committed by Android (Google) Code Review
Browse files

Merge "Promote ActiveApn and methods to DataConnectionTracker."

parents 7750c2ac dd97d83f
Loading
Loading
Loading
Loading
+37 −8
Original line number Diff line number Diff line
@@ -16,8 +16,6 @@

package com.android.internal.telephony;

import com.android.internal.telephony.cdma.CDMAPhone;

import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
@@ -231,6 +229,9 @@ public abstract class DataConnectionTracker extends Handler {
    protected HashMap<Integer, DataConnection> mDataConnections =
        new HashMap<Integer, DataConnection>();

    /* Currently active APN */
    protected ApnSetting mActiveApn;

    protected BroadcastReceiver mIntentReceiver = new BroadcastReceiver ()
    {
        @Override
@@ -343,6 +344,40 @@ public abstract class DataConnectionTracker extends Handler {
        return new ArrayList<DataConnection>(mDataConnections.values());
    }

    protected boolean isApnTypeActive(String type) {
        // TODO: support simultaneous with List instead
        return mActiveApn != null && mActiveApn.canHandleType(type);
    }

    public String[] getActiveApnTypes() {
        String[] result;
        if (mActiveApn != null) {
            result = mActiveApn.types;
        } else {
            result = new String[1];
            result[0] = Phone.APN_TYPE_DEFAULT;
        }
        return result;
    }

    public String getActiveApnType() {
        String result;
        if (mActiveApn != null) {
            result = apnIdToType(mActiveApn.id);
        } else {
            result = null;
        }
        return result;
    }

    protected String getActiveApnString() {
        String result = null;
        if (mActiveApn != null) {
            result = mActiveApn.apn;
        }
        return result;
    }

    /**
     * The data connection is expected to be setup while device
     *  1. has Icc card
@@ -533,14 +568,8 @@ public abstract class DataConnectionTracker extends Handler {
        }
    }

    protected abstract boolean isApnTypeActive(String type);

    protected abstract boolean isApnTypeAvailable(String type);

    protected abstract String[] getActiveApnTypes();

    protected abstract String getActiveApnString();

    protected abstract void setState(State s);

    protected LinkProperties getLinkProperties(String apnType) {
+0 −25
Original line number Diff line number Diff line
@@ -89,9 +89,6 @@ public final class CdmaDataConnectionTracker extends DataConnectionTracker {
            Phone.APN_TYPE_MMS,
            Phone.APN_TYPE_HIPRI };

    // if we have no active Apn this is null
    protected ApnSetting mActiveApn;

    /* Constructor */

    CdmaDataConnectionTracker(CDMAPhone p) {
@@ -157,11 +154,6 @@ public final class CdmaDataConnectionTracker extends DataConnectionTracker {
        }
    }

    @Override
    protected boolean isApnTypeActive(String type) {
        return mActiveApn != null && mActiveApn.canHandleType(type);
    }

    @Override
    protected boolean isApnTypeAvailable(String type) {
        for (String s : mSupportedApnTypes) {
@@ -172,23 +164,6 @@ public final class CdmaDataConnectionTracker extends DataConnectionTracker {
        return false;
    }

    @Override
    protected String[] getActiveApnTypes() {
        String[] result;
        if (mActiveApn != null) {
            result = mActiveApn.types;
        } else {
            result = new String[1];
            result[0] = Phone.APN_TYPE_DEFAULT;
        }
        return result;
    }

    @Override
    protected String getActiveApnString() {
        return null;
    }

    /**
     * The data connection is expected to be setup while device
     *  1. has ruim card or non-volatile data store
+0 −30
Original line number Diff line number Diff line
@@ -109,9 +109,6 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker {
    private int mWaitingApnsPermanentFailureCountDown = 0;
    private ApnSetting mPreferredApn = null;

    /* Currently active APN */
    protected ApnSetting mActiveApn;

      /** The DataConnection being setup */
    private GsmDataConnection mPendingDataConnection;

@@ -212,27 +209,6 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker {
        }
    }

    @Override
    public String[] getActiveApnTypes() {
        String[] result;
        if (mActiveApn != null) {
            result = mActiveApn.types;
        } else {
            result = new String[1];
            result[0] = Phone.APN_TYPE_DEFAULT;
        }
        return result;
    }

    @Override
    protected String getActiveApnString() {
        String result = null;
        if (mActiveApn != null) {
            result = mActiveApn.apn;
        }
        return result;
    }

    /**
     * The data connection is expected to be setup while device
     *  1. has sim card
@@ -256,12 +232,6 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker {
        return true;
    }

    @Override
    protected boolean isApnTypeActive(String type) {
        // TODO: support simultaneous with List instead
        return mActiveApn != null && mActiveApn.canHandleType(type);
    }

    @Override
    protected boolean isApnTypeAvailable(String type) {
        if (type.equals(Phone.APN_TYPE_DUN)) {