package com.dl7.mvp.injector.modules; import com.dl7.mvp.adapter.BaseVideoDLAdapter; import com.dl7.mvp.adapter.VideoCacheAdapter; import com.dl7.mvp.injector.PerFragment; import com.dl7.mvp.local.table.DaoSession; import com.dl7.mvp.module.base.IRxBusPresenter; import com.dl7.mvp.module.manage.download.cache.VideoCacheFragment; import com.dl7.mvp.module.manage.download.cache.VideoCachePresenter; import com.dl7.mvp.rxbus.RxBus; import dagger.Module; import dagger.Provides; /** * Created by long on 2016/12/16. * video缓存Module */ @Module public class VideoCacheModule { private final VideoCacheFragment mView; public VideoCacheModule(VideoCacheFragment view) { this.mView = view; } @PerFragment @Provides public IRxBusPresenter providePresenter(DaoSession daoSession, RxBus rxBus) { return new VideoCachePresenter(mView, daoSession.getVideoInfoDao(), rxBus); } @PerFragment @Provides public BaseVideoDLAdapter provideAdapter(RxBus rxBus) { return new VideoCacheAdapter(mView.getContext(), rxBus); } }