Advertisement
Guest User

Untitled

a guest
Jun 9th, 2020
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Kotlin 1.00 KB | None | 0 0
  1. //DAGGER 2 MODULE
  2. @Module
  3. class NetworkModules{
  4.  
  5.     @Provides
  6.     @Singleton
  7.     fun provideApiServiceEndpoint() :ApiService{
  8.         return NetworkConfig.initRetrofit().create(ApiService::class.java)
  9.     }
  10.  
  11.     @Provides
  12.     @Singleton
  13.     fun provideNetworkScheduler() : ISchedulerProvider{
  14.         return SchedulerProvider()
  15.     }
  16. }
  17.  
  18.  
  19. //DAGGER 2 COMPONENT
  20. @Component(modules = [NetworkModules::class])
  21. @Singleton
  22. interface AppComponent {
  23.  
  24. }
  25.  
  26.  
  27. //MAIN
  28. abstract class BaseMvpPresenter<V : BaseMvpView> : MvpPresenter<V>() {
  29.     @Inject
  30.     lateinit var iSchedulerProvider: ISchedulerProvider
  31.     @Inject
  32.     lateinit var apiService: ApiService
  33. }
  34.  
  35. //BaseApp
  36. class BaseApplication : Application() {
  37.     companion object {
  38.         lateinit var contextApp: Context
  39.         lateinit var appComponent:AppComponent
  40.     }
  41.  
  42.     override fun onCreate() {
  43.         super.onCreate()
  44.         contextApp = applicationContext
  45.         appComponent= DaggerAppComponent.create()
  46.     }
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement