38 lines
932 B
Kotlin
38 lines
932 B
Kotlin
package core.di
|
|
|
|
import android.content.Context
|
|
import androidx.work.Configuration
|
|
import androidx.work.WorkManager
|
|
import dagger.Module
|
|
import dagger.Provides
|
|
import dagger.hilt.InstallIn
|
|
import dagger.hilt.android.qualifiers.ApplicationContext
|
|
import dagger.hilt.components.SingletonComponent
|
|
import javax.inject.Singleton
|
|
|
|
/**
|
|
* DI модуль для WorkManager
|
|
*/
|
|
@Module
|
|
@InstallIn(SingletonComponent::class)
|
|
object WorkManagerModule {
|
|
|
|
@Provides
|
|
@Singleton
|
|
fun provideWorkManager(
|
|
@ApplicationContext context: Context,
|
|
configuration: Configuration
|
|
): WorkManager {
|
|
WorkManager.initialize(context, configuration)
|
|
return WorkManager.getInstance(context)
|
|
}
|
|
|
|
@Provides
|
|
@Singleton
|
|
fun provideWorkManagerConfiguration(): Configuration {
|
|
return Configuration.Builder()
|
|
.setMinimumLoggingLevel(android.util.Log.INFO)
|
|
.build()
|
|
}
|
|
}
|