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

Commit 7abe2077 authored by lucaslin's avatar lucaslin
Browse files

Remove INetworkManagementService from ConnectivityService

Remove INetworkManagementService from ConnectivityService and
related files.

Bug: 174837473
Test: atest FrameworksNetTests FrameworksNetIntegrationTests
Change-Id: Ie6cfd77bbd64a8fd7539b0ea7fd15bf970e40c3d
parent 1f110f67
Loading
Loading
Loading
Loading
+5 −9
Original line number Diff line number Diff line
@@ -154,7 +154,6 @@ import android.os.Bundle;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.IBinder;
import android.os.INetworkManagementService;
import android.os.Looper;
import android.os.Message;
import android.os.Messenger;
@@ -323,7 +322,6 @@ public class ConnectivityService extends IConnectivityManager.Stub
    // 0 is full bad, 100 is full good
    private int mDefaultInetConditionPublished = 0;

    private INetworkManagementService mNMS;
    @VisibleForTesting
    protected IDnsResolver mDnsResolver;
    @VisibleForTesting
@@ -1039,15 +1037,14 @@ public class ConnectivityService extends IConnectivityManager.Stub
        }
    }

    public ConnectivityService(Context context, INetworkManagementService netManager,
            INetworkStatsService statsService) {
        this(context, netManager, statsService, getDnsResolver(context), new IpConnectivityLog(),
    public ConnectivityService(Context context, INetworkStatsService statsService) {
        this(context, statsService, getDnsResolver(context), new IpConnectivityLog(),
                NetdService.getInstance(), new Dependencies());
    }

    @VisibleForTesting
    protected ConnectivityService(Context context, INetworkManagementService netManager,
            INetworkStatsService statsService, IDnsResolver dnsresolver, IpConnectivityLog logger,
    protected ConnectivityService(Context context, INetworkStatsService statsService,
            IDnsResolver dnsresolver, IpConnectivityLog logger,
            INetd netd, Dependencies deps) {
        if (DBG) log("ConnectivityService starting up");

@@ -1094,7 +1091,6 @@ public class ConnectivityService extends IConnectivityManager.Stub
        // TODO: Consider making the timer customizable.
        mNascentDelayMs = DEFAULT_NASCENT_DELAY_MS;

        mNMS = Objects.requireNonNull(netManager, "missing INetworkManagementService");
        mStatsService = Objects.requireNonNull(statsService, "missing INetworkStatsService");
        mPolicyManager = mContext.getSystemService(NetworkPolicyManager.class);
        mPolicyManagerInternal = Objects.requireNonNull(
@@ -8183,7 +8179,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
            TestNetworkService.enforceTestNetworkPermissions(mContext);

            if (mTNS == null) {
                mTNS = new TestNetworkService(mContext, mNMS);
                mTNS = new TestNetworkService(mContext);
            }

            return mTNS;
+1 −8
Original line number Diff line number Diff line
@@ -21,7 +21,6 @@ import static android.os.IServiceManager.DUMP_FLAG_PRIORITY_NORMAL;

import android.content.Context;
import android.net.INetworkStatsService;
import android.os.INetworkManagementService;
import android.os.ServiceManager;
import android.util.Log;

@@ -38,8 +37,7 @@ public final class ConnectivityServiceInitializer extends SystemService {
        // Load JNI libraries used by ConnectivityService and its dependencies
        System.loadLibrary("service-connectivity");
        // TODO: Define formal APIs to get the needed services.
        mConnectivity = new ConnectivityService(context, getNetworkManagementService(),
                getNetworkStatsService());
        mConnectivity = new ConnectivityService(context, getNetworkStatsService());
    }

    @Override
@@ -49,11 +47,6 @@ public final class ConnectivityServiceInitializer extends SystemService {
                /* allowIsolated= */ false, DUMP_FLAG_PRIORITY_HIGH | DUMP_FLAG_PRIORITY_NORMAL);
    }

    private INetworkManagementService getNetworkManagementService() {
        return INetworkManagementService.Stub.asInterface(
               ServiceManager.getService(Context.NETWORKMANAGEMENT_SERVICE));
    }

    private INetworkStatsService getNetworkStatsService() {
        return INetworkStatsService.Stub.asInterface(
                ServiceManager.getService(Context.NETWORK_STATS_SERVICE));
+1 −5
Original line number Diff line number Diff line
@@ -41,7 +41,6 @@ import android.os.Binder;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.IBinder;
import android.os.INetworkManagementService;
import android.os.Looper;
import android.os.ParcelFileDescriptor;
import android.os.RemoteException;
@@ -69,7 +68,6 @@ class TestNetworkService extends ITestNetworkManager.Stub {
    @NonNull private static final AtomicInteger sTestTunIndex = new AtomicInteger();

    @NonNull private final Context mContext;
    @NonNull private final INetworkManagementService mNMS;
    @NonNull private final INetd mNetd;

    @NonNull private final HandlerThread mHandlerThread;
@@ -82,14 +80,12 @@ class TestNetworkService extends ITestNetworkManager.Stub {
    private static native int jniCreateTunTap(boolean isTun, @NonNull String iface);

    @VisibleForTesting
    protected TestNetworkService(
            @NonNull Context context, @NonNull INetworkManagementService netManager) {
    protected TestNetworkService(@NonNull Context context) {
        mHandlerThread = new HandlerThread("TestNetworkServiceThread");
        mHandlerThread.start();
        mHandler = new Handler(mHandlerThread.getLooper());

        mContext = Objects.requireNonNull(context, "missing Context");
        mNMS = Objects.requireNonNull(netManager, "missing INetworkManagementService");
        mNetd = Objects.requireNonNull(NetdService.getInstance(), "could not get netd instance");
        mCm = mContext.getSystemService(ConnectivityManager.class);
        mNetworkProvider = new NetworkProvider(mContext, mHandler.getLooper(),
+1 −1
Original line number Diff line number Diff line
@@ -177,7 +177,7 @@ class ConnectivityServiceIntegrationTest {
    }

    private inner class TestConnectivityService(deps: Dependencies) : ConnectivityService(
            context, netManager, statsService, dnsResolver, log, netd, deps)
            context, statsService, dnsResolver, log, netd, deps)

    private fun makeDependencies(): ConnectivityService.Dependencies {
        val deps = spy(ConnectivityService.Dependencies())
+0 −5
Original line number Diff line number Diff line
@@ -1463,7 +1463,6 @@ public class ConnectivityServiceTest {
        mDeps = makeDependencies();
        returnRealCallingUid();
        mService = new ConnectivityService(mServiceContext,
                mNetworkManagementService,
                mStatsService,
                mMockDnsResolver,
                mock(IpConnectivityLog.class),
@@ -7855,7 +7854,6 @@ public class ConnectivityServiceTest {
        cellLp.addRoute(defaultRoute);
        cellLp.addRoute(ipv6Subnet);
        mCellNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_CELLULAR, cellLp);
        reset(mNetworkManagementService);
        reset(mMockDnsResolver);
        reset(mMockNetd);
        reset(mBatteryStatsService);
@@ -7895,7 +7893,6 @@ public class ConnectivityServiceTest {
        verifyNoMoreInteractions(mMockNetd);
        verifyNoMoreInteractions(mMockDnsResolver);
        reset(mNetworkManagementService);
        reset(mMockNetd);
        reset(mMockDnsResolver);
        when(mMockNetd.interfaceGetCfg(CLAT_PREFIX + MOBILE_IFNAME))
@@ -7995,7 +7992,6 @@ public class ConnectivityServiceTest {
        verify(mMockNetd, times(1)).networkRemoveInterface(cellNetId, CLAT_PREFIX + MOBILE_IFNAME);
        verifyNoMoreInteractions(mMockNetd);
        verifyNoMoreInteractions(mMockDnsResolver);
        reset(mNetworkManagementService);
        reset(mMockNetd);
        reset(mMockDnsResolver);
        when(mMockNetd.interfaceGetCfg(CLAT_PREFIX + MOBILE_IFNAME))
@@ -8232,7 +8228,6 @@ public class ConnectivityServiceTest {
        final LinkProperties cellLp = new LinkProperties();
        cellLp.setInterfaceName(MOBILE_IFNAME);
        mCellNetworkAgent.sendLinkProperties(cellLp);
        reset(mNetworkManagementService);
        mCellNetworkAgent.connect(true);
        networkCallback.expectAvailableThenValidatedCallbacks(mCellNetworkAgent);
        verify(mMockNetd, times(1)).idletimerAddInterface(eq(MOBILE_IFNAME), anyInt(),