aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornchalko <nchalko@google.com>2019-01-31 16:01:09 -0800
committerNick Chalko <nchalko@google.com>2019-02-12 22:19:38 -0800
commitf1aa8211e42d6a0f9052fad31a5e8c9b6fcab8d4 (patch)
treedee526582f530f6e4b0a41b265a0544b189e9495
parenta807f42d4ff61c00a426bcdff6466bf59c622920 (diff)
downloadTV-f1aa8211e42d6a0f9052fad31a5e8c9b6fcab8d4.tar.gz
Inject TvInputManagerHelper
PiperOrigin-RevId: 231871950 Change-Id: Ic081166eb50d0f45ef8d268571a437473380ded1
-rw-r--r--src/com/android/tv/TvApplication.java9
-rw-r--r--src/com/android/tv/modules/TvApplicationModule.java11
-rw-r--r--src/com/android/tv/modules/TvSingletonsModule.java6
3 files changed, 14 insertions, 12 deletions
diff --git a/src/com/android/tv/TvApplication.java b/src/com/android/tv/TvApplication.java
index 1cb05c0f..5f25a24b 100644
--- a/src/com/android/tv/TvApplication.java
+++ b/src/com/android/tv/TvApplication.java
@@ -67,6 +67,7 @@ import com.android.tv.util.SetupUtils;
import com.android.tv.util.TvInputManagerHelper;
import com.android.tv.util.Utils;
import com.google.common.base.Optional;
+import dagger.Lazy;
import java.util.List;
import java.util.concurrent.Executor;
import javax.inject.Inject;
@@ -114,7 +115,7 @@ public abstract class TvApplication extends BaseApplication implements TvSinglet
// STOP-SHIP: Remove this variable when Tuner Process is split to another application.
// When this variable is null, we don't know in which process TvApplication runs.
private Boolean mRunningInMainProcess;
- private TvInputManagerHelper mTvInputManagerHelper;
+ @Inject Lazy<TvInputManagerHelper> mLazyTvInputManagerHelper;
private boolean mStarted;
private EpgFetcher mEpgFetcher;
@@ -359,11 +360,7 @@ public abstract class TvApplication extends BaseApplication implements TvSinglet
/** Returns {@link TvInputManagerHelper}. */
@Override
public TvInputManagerHelper getTvInputManagerHelper() {
- if (mTvInputManagerHelper == null) {
- mTvInputManagerHelper = new TvInputManagerHelper(this);
- mTvInputManagerHelper.start();
- }
- return mTvInputManagerHelper;
+ return mLazyTvInputManagerHelper.get();
}
@Override
diff --git a/src/com/android/tv/modules/TvApplicationModule.java b/src/com/android/tv/modules/TvApplicationModule.java
index d54427d2..45383ae1 100644
--- a/src/com/android/tv/modules/TvApplicationModule.java
+++ b/src/com/android/tv/modules/TvApplicationModule.java
@@ -15,12 +15,15 @@
*/
package com.android.tv.modules;
+import android.content.Context;
import com.android.tv.MainActivity;
import com.android.tv.TvApplication;
import com.android.tv.common.concurrent.NamedThreadFactory;
import com.android.tv.common.dagger.ApplicationModule;
+import com.android.tv.common.dagger.annotations.ApplicationContext;
import com.android.tv.onboarding.OnboardingActivity;
import com.android.tv.util.AsyncDbTask;
+import com.android.tv.util.TvInputManagerHelper;
import dagger.Module;
import dagger.Provides;
import java.util.concurrent.Executor;
@@ -44,4 +47,12 @@ public class TvApplicationModule {
Executor providesDbExecutor() {
return Executors.newSingleThreadExecutor(THREAD_FACTORY);
}
+
+ @Provides
+ @Singleton
+ TvInputManagerHelper providesTvInputManagerHelper(@ApplicationContext Context context) {
+ TvInputManagerHelper tvInputManagerHelper = new TvInputManagerHelper(context);
+ tvInputManagerHelper.start();
+ return tvInputManagerHelper;
+ }
}
diff --git a/src/com/android/tv/modules/TvSingletonsModule.java b/src/com/android/tv/modules/TvSingletonsModule.java
index b149492b..f998c08b 100644
--- a/src/com/android/tv/modules/TvSingletonsModule.java
+++ b/src/com/android/tv/modules/TvSingletonsModule.java
@@ -18,7 +18,6 @@ package com.android.tv.modules;
import com.android.tv.TvSingletons;
import com.android.tv.data.ChannelDataManager;
import com.android.tv.data.ProgramDataManager;
-import com.android.tv.util.TvInputManagerHelper;
import dagger.Module;
import dagger.Provides;
@@ -45,9 +44,4 @@ public class TvSingletonsModule {
ProgramDataManager providesProgramDataManager() {
return mTvSingletons.getProgramDataManager();
}
-
- @Provides
- TvInputManagerHelper providesTvInputManagerHelper() {
- return mTvSingletons.getTvInputManagerHelper();
- }
}