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

Commit 4e1b5c7b authored by Dave Mankoff's avatar Dave Mankoff
Browse files

Rem Dependency#get from WMShell and GarbageMonitor

Bug: 138786270
Test: manual
Change-Id: I6a24cc23c33722f0fbeb0e288ec718fa30a47706
parent 35216e02
Loading
Loading
Loading
Loading
+11 −16
Original line number Diff line number Diff line
@@ -26,8 +26,6 @@ import android.util.Log;

import androidx.core.content.FileProvider;

import com.android.systemui.Dependency;

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
@@ -35,7 +33,6 @@ import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
@@ -53,12 +50,14 @@ public class DumpTruck {
    private static final int BUFSIZ = 1024 * 1024; // 1MB

    private final Context context;
    private GarbageMonitor mGarbageMonitor;
    private Uri hprofUri;
    private long rss;
    final StringBuilder body = new StringBuilder();

    public DumpTruck(Context context) {
    public DumpTruck(Context context, GarbageMonitor garbageMonitor) {
        this.context = context;
        mGarbageMonitor = garbageMonitor;
    }

    /**
@@ -68,8 +67,6 @@ public class DumpTruck {
     * @return this, for chaining
     */
    public DumpTruck captureHeaps(List<Long> pids) {
        final GarbageMonitor gm = Dependency.get(GarbageMonitor.class);

        final File dumpDir = new File(context.getCacheDir(), FILEPROVIDER_PATH);
        dumpDir.mkdirs();
        hprofUri = null;
@@ -83,8 +80,7 @@ public class DumpTruck {
        for (Long pidL : pids) {
            final int pid = pidL.intValue();
            body.append("  pid ").append(pid);
            if (gm != null) {
                GarbageMonitor.ProcessMemInfo info = gm.getMemInfo(pid);
            GarbageMonitor.ProcessMemInfo info = mGarbageMonitor.getMemInfo(pid);
            if (info != null) {
                body.append(":")
                        .append(" up=")
@@ -93,7 +89,6 @@ public class DumpTruck {
                        .append(info.currentRss);
                rss = info.currentRss;
            }
            }
            if (pid == myPid) {
                final String path =
                        new File(dumpDir, String.format("heap-%d.ahprof", pid)).getPath();
+1 −1
Original line number Diff line number Diff line
@@ -150,7 +150,7 @@ public class GarbageMonitor implements Dumpable {
        mTrackedGarbage = leakDetector.getTrackedGarbage();
        mLeakReporter = leakReporter;

        mDumpTruck = new DumpTruck(mContext);
        mDumpTruck = new DumpTruck(mContext, this);

        dumpManager.registerDumpable(getClass().getSimpleName(), this);

+4 −3
Original line number Diff line number Diff line
@@ -41,7 +41,6 @@ import com.android.internal.annotations.VisibleForTesting;
import com.android.keyguard.KeyguardUpdateMonitor;
import com.android.keyguard.KeyguardUpdateMonitorCallback;
import com.android.systemui.CoreStartable;
import com.android.systemui.Dependency;
import com.android.systemui.dagger.SysUISingleton;
import com.android.systemui.dagger.WMComponent;
import com.android.systemui.dagger.qualifiers.Main;
@@ -125,6 +124,7 @@ public final class WMShell extends CoreStartable
    private final SysUiState mSysUiState;
    private final WakefulnessLifecycle mWakefulnessLifecycle;
    private final ProtoTracer mProtoTracer;
    private final UserInfoController mUserInfoController;
    private final Executor mSysUiMainExecutor;

    private boolean mIsSysUiStateValid;
@@ -153,6 +153,7 @@ public final class WMShell extends CoreStartable
            SysUiState sysUiState,
            ProtoTracer protoTracer,
            WakefulnessLifecycle wakefulnessLifecycle,
            UserInfoController userInfoController,
            @Main Executor sysUiMainExecutor) {
        super(context);
        mCommandQueue = commandQueue;
@@ -171,6 +172,7 @@ public final class WMShell extends CoreStartable
        mShellCommandHandler = shellCommandHandler;
        mCompatUIOptional = sizeCompatUIOptional;
        mDragAndDropOptional = dragAndDropOptional;
        mUserInfoController = userInfoController;
        mSysUiMainExecutor = sysUiMainExecutor;
    }

@@ -231,8 +233,7 @@ public final class WMShell extends CoreStartable
        });

        // The media session listener needs to be re-registered when switching users
        UserInfoController userInfoController = Dependency.get(UserInfoController.class);
        userInfoController.addCallback((String name, Drawable picture, String userAccount) ->
        mUserInfoController.addCallback((String name, Drawable picture, String userAccount) ->
                pip.registerSessionListenerForCurrentUser());
    }

+3 −1
Original line number Diff line number Diff line
@@ -32,6 +32,7 @@ import com.android.systemui.model.SysUiState;
import com.android.systemui.navigationbar.NavigationModeController;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.policy.ConfigurationController;
import com.android.systemui.statusbar.policy.UserInfoController;
import com.android.systemui.tracing.ProtoTracer;
import com.android.wm.shell.ShellCommandHandler;
import com.android.wm.shell.common.ShellExecutor;
@@ -79,6 +80,7 @@ public class WMShellTest extends SysuiTestCase {
    @Mock ProtoTracer mProtoTracer;
    @Mock ShellCommandHandler mShellCommandHandler;
    @Mock CompatUI mCompatUI;
    @Mock UserInfoController mUserInfoController;
    @Mock ShellExecutor mSysUiMainExecutor;
    @Mock DragAndDrop mDragAndDrop;

@@ -92,7 +94,7 @@ public class WMShellTest extends SysuiTestCase {
                Optional.of(mDragAndDrop),
                mCommandQueue, mConfigurationController, mKeyguardUpdateMonitor,
                mNavigationModeController, mScreenLifecycle, mSysUiState, mProtoTracer,
                mWakefulnessLifecycle, mSysUiMainExecutor);
                mWakefulnessLifecycle, mUserInfoController, mSysUiMainExecutor);
    }

    @Test