2023-09-10 20:35:22 -06:00
|
|
|
package com.isolaatti.images
|
|
|
|
|
|
2023-11-23 00:10:57 -06:00
|
|
|
import android.app.Application
|
|
|
|
|
import android.content.ContentResolver
|
|
|
|
|
import android.content.Context
|
|
|
|
|
import com.isolaatti.MyApplication
|
2023-09-10 20:35:22 -06:00
|
|
|
import com.isolaatti.connectivity.RetrofitClient
|
2023-11-23 00:10:57 -06:00
|
|
|
import com.isolaatti.images.common.data.remote.ImagesApi
|
|
|
|
|
import com.isolaatti.images.common.data.repository.ImagesRepositoryImpl
|
|
|
|
|
import com.isolaatti.images.common.domain.repository.ImagesRepository
|
2023-09-10 20:35:22 -06:00
|
|
|
import dagger.Module
|
|
|
|
|
import dagger.Provides
|
|
|
|
|
import dagger.hilt.InstallIn
|
2023-11-23 00:10:57 -06:00
|
|
|
import dagger.hilt.android.qualifiers.ApplicationContext
|
2023-09-10 20:35:22 -06:00
|
|
|
import dagger.hilt.components.SingletonComponent
|
|
|
|
|
|
|
|
|
|
@Module
|
|
|
|
|
@InstallIn(SingletonComponent::class)
|
|
|
|
|
class Module {
|
|
|
|
|
@Provides
|
|
|
|
|
fun provideImagesApi(retrofitClient: RetrofitClient): ImagesApi {
|
|
|
|
|
return retrofitClient.client.create(ImagesApi::class.java)
|
|
|
|
|
}
|
2023-11-20 22:53:14 -06:00
|
|
|
|
|
|
|
|
@Provides
|
2023-11-23 00:10:57 -06:00
|
|
|
fun provideContentResolver(@ApplicationContext application: Context): ContentResolver {
|
|
|
|
|
return application.contentResolver
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Provides
|
|
|
|
|
fun provideImagesRepository(imagesApi: ImagesApi, contentResolver: ContentResolver): ImagesRepository {
|
|
|
|
|
return ImagesRepositoryImpl(imagesApi, contentResolver)
|
2023-11-20 22:53:14 -06:00
|
|
|
}
|
2023-09-10 20:35:22 -06:00
|
|
|
}
|