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

Commit 7fc1f9bb authored by Jason Monk's avatar Jason Monk
Browse files

Remove Dependency#get from ExtensionControllerImpl

Also deprecate Dependency#get.

Test: Updated existing tests
Change-Id: Ibdca61a4971e786c21f5a8bab215bc7a0b8ce7cb
parent 196d6398
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -531,10 +531,18 @@ public class Dependency extends SystemUI {
        sDependency.destroyDependency(cls, destroy);
    }

    /**
     * @deprecated see docs/dagger.md
     */
    @Deprecated
    public static <T> T get(Class<T> cls) {
        return sDependency.getDependency(cls);
    }

    /**
     * @deprecated see docs/dagger.md
     */
    @Deprecated
    public static <T> T get(DependencyKey<T> cls) {
        return sDependency.getDependency(cls);
    }
+21 −10
Original line number Diff line number Diff line
@@ -19,7 +19,6 @@ import android.content.res.Configuration;
import android.os.Handler;
import android.util.ArrayMap;

import com.android.systemui.Dependency;
import com.android.systemui.plugins.Plugin;
import com.android.systemui.plugins.PluginListener;
import com.android.systemui.shared.plugins.PluginManager;
@@ -49,12 +48,24 @@ public class ExtensionControllerImpl implements ExtensionController {
    public static final int SORT_ORDER_DEFAULT = 4;

    private final Context mDefaultContext;
    private final LeakDetector mLeakDetector;
    private final PluginManager mPluginManager;
    private final TunerService mTunerService;
    private final ConfigurationController mConfigurationController;

    /**
     */
    @Inject
    public ExtensionControllerImpl(Context context) {
    public ExtensionControllerImpl(Context context,
            LeakDetector leakDetector,
            PluginManager pluginManager,
            TunerService tunerService,
            ConfigurationController configurationController) {
        mDefaultContext = context;
        mLeakDetector = leakDetector;
        mPluginManager = pluginManager;
        mTunerService = tunerService;
        mConfigurationController = configurationController;
    }

    @Override
@@ -168,14 +179,14 @@ public class ExtensionControllerImpl implements ExtensionController {
        @Override
        public void clearItem(boolean isDestroyed) {
            if (isDestroyed && mItem != null) {
                Dependency.get(LeakDetector.class).trackGarbage(mItem);
                mLeakDetector.trackGarbage(mItem);
            }
            mItem = null;
        }

        private void notifyChanged() {
            if (mItem != null) {
                Dependency.get(LeakDetector.class).trackGarbage(mItem);
                mLeakDetector.trackGarbage(mItem);
            }
            mItem = null;
            for (int i = 0; i < mProducers.size(); i++) {
@@ -216,7 +227,7 @@ public class ExtensionControllerImpl implements ExtensionController {

            public PluginItem(String action, Class<P> cls, PluginConverter<T, P> converter) {
                mConverter = converter;
                Dependency.get(PluginManager.class).addPluginListener(action, this, cls);
                mPluginManager.addPluginListener(action, this, cls);
            }

            @Override
@@ -244,7 +255,7 @@ public class ExtensionControllerImpl implements ExtensionController {

            @Override
            public void destroy() {
                Dependency.get(PluginManager.class).removePluginListener(this);
                mPluginManager.removePluginListener(this);
            }

            @Override
@@ -260,7 +271,7 @@ public class ExtensionControllerImpl implements ExtensionController {

            public TunerItem(TunerFactory<T> factory, String... setting) {
                mFactory = factory;
                Dependency.get(TunerService.class).addTunable(this, setting);
                mTunerService.addTunable(this, setting);
            }

            @Override
@@ -270,7 +281,7 @@ public class ExtensionControllerImpl implements ExtensionController {

            @Override
            public void destroy() {
                Dependency.get(TunerService.class).removeTunable(this);
                mTunerService.removeTunable(this);
            }

            @Override
@@ -298,7 +309,7 @@ public class ExtensionControllerImpl implements ExtensionController {
                mSupplier = supplier;
                mUiMode = mDefaultContext.getResources().getConfiguration().uiMode
                        & Configuration.UI_MODE_TYPE_MASK;
                Dependency.get(ConfigurationController.class).addCallback(this);
                mConfigurationController.addCallback(this);
            }

            @Override
@@ -318,7 +329,7 @@ public class ExtensionControllerImpl implements ExtensionController {

            @Override
            public void destroy() {
                Dependency.get(ConfigurationController.class).removeCallback(this);
                mConfigurationController.removeCallback(this);
            }

            @Override
+3 −2
Original line number Diff line number Diff line
@@ -28,7 +28,6 @@ import android.testing.AndroidTestingRunner;
import android.testing.TestableLooper;
import android.testing.TestableLooper.RunWithLooper;

import com.android.systemui.Dependency;
import com.android.systemui.SysuiTestCase;
import com.android.systemui.plugins.OverlayPlugin;
import com.android.systemui.plugins.Plugin;
@@ -39,6 +38,7 @@ import com.android.systemui.statusbar.policy.ExtensionController.Extension;
import com.android.systemui.statusbar.policy.ExtensionController.TunerFactory;
import com.android.systemui.tuner.TunerService;
import com.android.systemui.tuner.TunerService.Tunable;
import com.android.systemui.util.leak.LeakDetector;

import org.junit.Before;
import org.junit.Test;
@@ -62,7 +62,8 @@ public class ExtensionControllerImplTest extends SysuiTestCase {
        mPluginManager = mDependency.injectMockDependency(PluginManager.class);
        mTunerService = mDependency.injectMockDependency(TunerService.class);
        mConfigurationController = mDependency.injectMockDependency(ConfigurationController.class);
        mExtensionController = Dependency.get(ExtensionController.class);
        mExtensionController = new ExtensionControllerImpl(mContext,
                mock(LeakDetector.class), mPluginManager, mTunerService, mConfigurationController);
    }

    @Test