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

Commit 9ce086e6 authored by Lorenzo Colitti's avatar Lorenzo Colitti Committed by android-build-merger
Browse files

Merge "Switch to using StringNetworkSpecifier." am: 03dab3d7

am: f04e68cc

Change-Id: I8fab4bded5b6944045d8f80b89b260dfd2d080cf
parents 3ede2787 f04e68cc
Loading
Loading
Loading
Loading
+16 −10
Original line number Original line Diff line number Diff line
@@ -23,9 +23,12 @@ import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Context;
import android.content.Intent;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.IntentFilter;
import android.net.MatchAllNetworkSpecifier;
import android.net.NetworkCapabilities;
import android.net.NetworkCapabilities;
import android.net.NetworkFactory;
import android.net.NetworkFactory;
import android.net.NetworkRequest;
import android.net.NetworkRequest;
import android.net.NetworkSpecifier;
import android.net.StringNetworkSpecifier;
import android.os.Handler;
import android.os.Handler;
import android.os.Looper;
import android.os.Looper;
import android.os.Message;
import android.os.Message;
@@ -33,22 +36,16 @@ import android.os.Registrant;
import android.os.RegistrantList;
import android.os.RegistrantList;
import android.os.RemoteException;
import android.os.RemoteException;
import android.telephony.Rlog;
import android.telephony.Rlog;
import android.text.TextUtils;
import android.util.LocalLog;
import android.util.LocalLog;


import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.telephony.CommandsInterface;
import com.android.internal.telephony.IOnSubscriptionsChangedListener;
import com.android.internal.telephony.ITelephonyRegistry;
import com.android.internal.telephony.dataconnection.DcRequest;
import com.android.internal.telephony.dataconnection.DcRequest;
import com.android.internal.util.IndentingPrintWriter;
import com.android.internal.util.IndentingPrintWriter;


import java.io.FileDescriptor;
import java.io.FileDescriptor;
import java.io.PrintWriter;
import java.io.PrintWriter;
import java.lang.IllegalArgumentException;
import java.util.ArrayList;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Calendar;
import java.util.Collection;
import java.util.Collections;
import java.util.Collections;
import java.util.List;
import java.util.List;


@@ -148,7 +145,7 @@ public class PhoneSwitcher extends Handler {
        netCap.addCapability(NetworkCapabilities.NET_CAPABILITY_EIMS);
        netCap.addCapability(NetworkCapabilities.NET_CAPABILITY_EIMS);
        netCap.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED);
        netCap.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED);
        netCap.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET);
        netCap.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET);
        netCap.setNetworkSpecifier(NetworkCapabilities.MATCH_ALL_REQUESTS_NETWORK_SPECIFIER);
        netCap.setNetworkSpecifier(new MatchAllNetworkSpecifier());


        NetworkFactory networkFactory = new PhoneSwitcherNetworkRequestListener(looper, context,
        NetworkFactory networkFactory = new PhoneSwitcherNetworkRequestListener(looper, context,
                netCap, this);
                netCap, this);
@@ -368,14 +365,23 @@ public class PhoneSwitcher extends Handler {
    }
    }


    private int phoneIdForRequest(NetworkRequest netRequest) {
    private int phoneIdForRequest(NetworkRequest netRequest) {
        String specifier = netRequest.networkCapabilities.getNetworkSpecifier();
        NetworkSpecifier specifier = netRequest.networkCapabilities.getNetworkSpecifier();
        int subId;
        int subId;


        if (TextUtils.isEmpty(specifier)) {
        if (specifier == null) {
            subId = mDefaultDataSubscription;
            subId = mDefaultDataSubscription;
        } else if (specifier instanceof StringNetworkSpecifier) {
            try {
                subId = Integer.parseInt(((StringNetworkSpecifier) specifier).specifier);
            } catch (NumberFormatException e) {
                Rlog.e(LOG_TAG, "NumberFormatException on "
                        + ((StringNetworkSpecifier) specifier).specifier);
                subId = INVALID_SUBSCRIPTION_ID;
            }
        } else {
        } else {
            subId = Integer.parseInt(specifier);
            subId = INVALID_SUBSCRIPTION_ID;
        }
        }

        int phoneId = INVALID_PHONE_INDEX;
        int phoneId = INVALID_PHONE_INDEX;
        if (subId == INVALID_SUBSCRIPTION_ID) return phoneId;
        if (subId == INVALID_SUBSCRIPTION_ID) return phoneId;


+2 −1
Original line number Original line Diff line number Diff line
@@ -25,6 +25,7 @@ import android.net.NetworkCapabilities;
import android.net.NetworkInfo;
import android.net.NetworkInfo;
import android.net.NetworkMisc;
import android.net.NetworkMisc;
import android.net.ProxyInfo;
import android.net.ProxyInfo;
import android.net.StringNetworkSpecifier;
import android.os.AsyncResult;
import android.os.AsyncResult;
import android.os.Looper;
import android.os.Looper;
import android.os.Message;
import android.os.Message;
@@ -963,7 +964,7 @@ public class DataConnection extends StateMachine {
        result.setLinkUpstreamBandwidthKbps(up);
        result.setLinkUpstreamBandwidthKbps(up);
        result.setLinkDownstreamBandwidthKbps(down);
        result.setLinkDownstreamBandwidthKbps(down);


        result.setNetworkSpecifier(Integer.toString(mPhone.getSubId()));
        result.setNetworkSpecifier(new StringNetworkSpecifier(Integer.toString(mPhone.getSubId())));


        return result;
        return result;
    }
    }
+4 −5
Original line number Original line Diff line number Diff line
@@ -22,18 +22,17 @@ import android.content.Context;
import android.net.NetworkCapabilities;
import android.net.NetworkCapabilities;
import android.net.NetworkFactory;
import android.net.NetworkFactory;
import android.net.NetworkRequest;
import android.net.NetworkRequest;
import android.net.StringNetworkSpecifier;
import android.os.Handler;
import android.os.Handler;
import android.os.Looper;
import android.os.Looper;
import android.os.Message;
import android.os.Message;
import android.telephony.Rlog;
import android.telephony.Rlog;
import android.text.TextUtils;
import android.util.LocalLog;
import android.util.LocalLog;


import com.android.internal.telephony.PhoneSwitcher;
import com.android.internal.telephony.PhoneSwitcher;
import com.android.internal.telephony.SubscriptionController;
import com.android.internal.telephony.SubscriptionController;
import com.android.internal.telephony.SubscriptionMonitor;
import com.android.internal.telephony.SubscriptionMonitor;
import com.android.internal.util.IndentingPrintWriter;
import com.android.internal.util.IndentingPrintWriter;
import com.android.internal.util.Protocol;


import java.io.FileDescriptor;
import java.io.FileDescriptor;
import java.io.PrintWriter;
import java.io.PrintWriter;
@@ -119,7 +118,7 @@ public class TelephonyNetworkFactory extends NetworkFactory {
        nc.addCapability(NetworkCapabilities.NET_CAPABILITY_EIMS);
        nc.addCapability(NetworkCapabilities.NET_CAPABILITY_EIMS);
        nc.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED);
        nc.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED);
        nc.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET);
        nc.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET);
        nc.setNetworkSpecifier(String.valueOf(subscriptionId));
        nc.setNetworkSpecifier(new StringNetworkSpecifier(String.valueOf(subscriptionId)));
        return nc;
        return nc;
    }
    }


@@ -223,7 +222,7 @@ public class TelephonyNetworkFactory extends NetworkFactory {
        NetworkRequest networkRequest = (NetworkRequest)msg.obj;
        NetworkRequest networkRequest = (NetworkRequest)msg.obj;
        boolean isApplicable = false;
        boolean isApplicable = false;
        LocalLog localLog = null;
        LocalLog localLog = null;
        if (TextUtils.isEmpty(networkRequest.networkCapabilities.getNetworkSpecifier())) {
        if (networkRequest.networkCapabilities.getNetworkSpecifier() == null) {
            // request only for the default network
            // request only for the default network
            localLog = mDefaultRequests.get(networkRequest);
            localLog = mDefaultRequests.get(networkRequest);
            if (localLog == null) {
            if (localLog == null) {
@@ -263,7 +262,7 @@ public class TelephonyNetworkFactory extends NetworkFactory {
        NetworkRequest networkRequest = (NetworkRequest)msg.obj;
        NetworkRequest networkRequest = (NetworkRequest)msg.obj;
        LocalLog localLog = null;
        LocalLog localLog = null;
        boolean isApplicable = false;
        boolean isApplicable = false;
        if (TextUtils.isEmpty(networkRequest.networkCapabilities.getNetworkSpecifier())) {
        if (networkRequest.networkCapabilities.getNetworkSpecifier() == null) {
            // request only for the default network
            // request only for the default network
            localLog = mDefaultRequests.remove(networkRequest);
            localLog = mDefaultRequests.remove(networkRequest);
            isApplicable = (localLog != null) && mIsDefault;
            isApplicable = (localLog != null) && mIsDefault;
+11 −14
Original line number Original line Diff line number Diff line
@@ -16,28 +16,25 @@


package com.android.internal.telephony;
package com.android.internal.telephony;


import com.android.internal.telephony.MccTable;
import com.android.internal.telephony.mocks.ConnectivityServiceMock;
import com.android.internal.telephony.mocks.SubscriptionControllerMock;
import com.android.internal.telephony.mocks.TelephonyRegistryMock;
import com.android.internal.telephony.test.SimulatedCommands;

import android.content.Context;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkCapabilities;
import android.net.NetworkRequest;
import android.net.StringNetworkSpecifier;
import android.os.AsyncResult;
import android.os.AsyncResult;
import android.os.Binder;
import android.os.Binder;
import android.os.Handler;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.HandlerThread;
import android.os.Looper;
import android.os.Looper;
import android.os.Message;
import android.os.Message;
import android.net.ConnectivityManager;
import android.telephony.Rlog;
import android.net.IConnectivityManager;
import android.net.NetworkCapabilities;
import android.net.NetworkRequest;

import android.test.AndroidTestCase;
import android.test.AndroidTestCase;
import android.test.suitebuilder.annotation.SmallTest;
import android.test.suitebuilder.annotation.SmallTest;


import android.telephony.Rlog;
import com.android.internal.telephony.mocks.ConnectivityServiceMock;
import com.android.internal.telephony.mocks.SubscriptionControllerMock;
import com.android.internal.telephony.mocks.TelephonyRegistryMock;
import com.android.internal.telephony.test.SimulatedCommands;


import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicReference;
import java.util.concurrent.atomic.AtomicReference;
@@ -159,7 +156,7 @@ public class PhoneSwitcherTest extends AndroidTestCase {
                addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET).
                addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET).
                addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED).
                addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED).
                addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
                addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
        netCap.setNetworkSpecifier(Integer.toString(subId));
        netCap.setNetworkSpecifier(new StringNetworkSpecifier(Integer.toString(subId)));
        return cs.requestNetwork(netCap, null, 0, new Binder(), -1);
        return cs.requestNetwork(netCap, null, 0, new Binder(), -1);
    }
    }


@@ -168,7 +165,7 @@ public class PhoneSwitcherTest extends AndroidTestCase {
                addCapability(NetworkCapabilities.NET_CAPABILITY_MMS).
                addCapability(NetworkCapabilities.NET_CAPABILITY_MMS).
                addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED).
                addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED).
                addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
                addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
        netCap.setNetworkSpecifier(Integer.toString(subId));
        netCap.setNetworkSpecifier(new StringNetworkSpecifier(Integer.toString(subId)));
        return cs.requestNetwork(netCap, null, 0, new Binder(), -1);
        return cs.requestNetwork(netCap, null, 0, new Binder(), -1);
    }
    }


+3 −2
Original line number Original line Diff line number Diff line
@@ -20,6 +20,7 @@ import android.content.Context;
import android.net.ConnectivityManager;
import android.net.ConnectivityManager;
import android.net.NetworkCapabilities;
import android.net.NetworkCapabilities;
import android.net.NetworkRequest;
import android.net.NetworkRequest;
import android.net.StringNetworkSpecifier;
import android.os.Binder;
import android.os.Binder;
import android.os.Handler;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.HandlerThread;
@@ -112,7 +113,7 @@ public class TelephonyNetworkFactoryTest extends AndroidTestCase {
                addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET).
                addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET).
                addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED).
                addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED).
                addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
                addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
        netCap.setNetworkSpecifier(Integer.toString(subId));
        netCap.setNetworkSpecifier(new StringNetworkSpecifier(Integer.toString(subId)));
        return ts.connectivityServiceMock.requestNetwork(netCap, null, 0, new Binder(), -1);
        return ts.connectivityServiceMock.requestNetwork(netCap, null, 0, new Binder(), -1);
    }
    }
    private NetworkRequest makeSubSpecificMmsRequest(TestSetup ts, int subId) {
    private NetworkRequest makeSubSpecificMmsRequest(TestSetup ts, int subId) {
@@ -120,7 +121,7 @@ public class TelephonyNetworkFactoryTest extends AndroidTestCase {
                addCapability(NetworkCapabilities.NET_CAPABILITY_MMS).
                addCapability(NetworkCapabilities.NET_CAPABILITY_MMS).
                addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED).
                addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED).
                addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
                addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
        netCap.setNetworkSpecifier(Integer.toString(subId));
        netCap.setNetworkSpecifier(new StringNetworkSpecifier(Integer.toString(subId)));
        return ts.connectivityServiceMock.requestNetwork(netCap, null, 0, new Binder(), -1);
        return ts.connectivityServiceMock.requestNetwork(netCap, null, 0, new Binder(), -1);
    }
    }