Реализован UnlockManager
This commit is contained in:
@@ -3,7 +3,7 @@ package com.github.nullptroma.wallenc.app.di.modules.data
|
||||
import android.content.Context
|
||||
import com.github.nullptroma.wallenc.data.db.RoomFactory
|
||||
import com.github.nullptroma.wallenc.data.db.app.IAppDb
|
||||
import com.github.nullptroma.wallenc.data.db.app.dao.StorageKeyDao
|
||||
import com.github.nullptroma.wallenc.data.db.app.dao.StorageKeyMapDao
|
||||
import dagger.Module
|
||||
import dagger.Provides
|
||||
import dagger.hilt.InstallIn
|
||||
@@ -21,8 +21,8 @@ class RoomModule {
|
||||
|
||||
@Provides
|
||||
@Singleton
|
||||
fun provideStorageKeyDao(database: IAppDb): StorageKeyDao {
|
||||
return database.storageKeyDao
|
||||
fun provideStorageKeyDao(database: IAppDb): StorageKeyMapDao {
|
||||
return database.storageKeyMapDao
|
||||
}
|
||||
|
||||
@Provides
|
||||
|
||||
@@ -2,7 +2,8 @@ package com.github.nullptroma.wallenc.app.di.modules.data
|
||||
|
||||
import android.content.Context
|
||||
import com.github.nullptroma.wallenc.app.di.modules.app.IoDispatcher
|
||||
import com.github.nullptroma.wallenc.data.db.app.dao.StorageKeyDao
|
||||
import com.github.nullptroma.wallenc.data.db.app.dao.StorageKeyMapDao
|
||||
import com.github.nullptroma.wallenc.data.db.app.repository.StorageKeyMapRepository
|
||||
import com.github.nullptroma.wallenc.data.vaults.UnlockManager
|
||||
import com.github.nullptroma.wallenc.data.vaults.VaultsManager
|
||||
import com.github.nullptroma.wallenc.domain.interfaces.IUnlockManager
|
||||
@@ -25,13 +26,21 @@ class SingletonModule {
|
||||
return VaultsManager(ioDispatcher, context)
|
||||
}
|
||||
|
||||
@Provides
|
||||
@Singleton
|
||||
fun provideStorageKeyMapRepository(dao: StorageKeyMapDao): StorageKeyMapRepository {
|
||||
return StorageKeyMapRepository(dao)
|
||||
}
|
||||
|
||||
@Provides
|
||||
@Singleton
|
||||
fun provideUnlockManager(@IoDispatcher ioDispatcher: CoroutineDispatcher,
|
||||
dao: StorageKeyDao): IUnlockManager {
|
||||
repo: StorageKeyMapRepository,
|
||||
vaultsManager: IVaultsManager): IUnlockManager {
|
||||
return UnlockManager(
|
||||
dao = dao,
|
||||
ioDispatcher = ioDispatcher
|
||||
repo = repo,
|
||||
ioDispatcher = ioDispatcher,
|
||||
vaultsManager = vaultsManager
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,9 @@
|
||||
package com.github.nullptroma.wallenc.app.di.modules.domain
|
||||
|
||||
import com.github.nullptroma.wallenc.data.vaults.UnlockManager
|
||||
import com.github.nullptroma.wallenc.domain.interfaces.IUnlockManager
|
||||
import com.github.nullptroma.wallenc.domain.interfaces.IVaultsManager
|
||||
import com.github.nullptroma.wallenc.domain.usecases.GetAllRawStoragesUseCase
|
||||
import com.github.nullptroma.wallenc.domain.usecases.GetOpenedStoragesUseCase
|
||||
import com.github.nullptroma.wallenc.domain.usecases.ManageLocalVaultUseCase
|
||||
import com.github.nullptroma.wallenc.domain.usecases.StorageFileManagementUseCase
|
||||
import dagger.Module
|
||||
@@ -15,14 +17,14 @@ import javax.inject.Singleton
|
||||
class UseCasesModule {
|
||||
@Provides
|
||||
@Singleton
|
||||
fun provideGetAllRawStoragesUseCase(vaultsManager: IVaultsManager): GetAllRawStoragesUseCase {
|
||||
return GetAllRawStoragesUseCase(vaultsManager)
|
||||
fun provideGetOpenedStoragesUseCase(unlockManager: IUnlockManager): GetOpenedStoragesUseCase {
|
||||
return GetOpenedStoragesUseCase(unlockManager)
|
||||
}
|
||||
|
||||
@Provides
|
||||
@Singleton
|
||||
fun provideManageLocalVaultUseCase(vaultsManager: IVaultsManager): ManageLocalVaultUseCase {
|
||||
return ManageLocalVaultUseCase(vaultsManager)
|
||||
fun provideManageLocalVaultUseCase(vaultsManager: IVaultsManager, unlockManager: IUnlockManager): ManageLocalVaultUseCase {
|
||||
return ManageLocalVaultUseCase(vaultsManager, unlockManager)
|
||||
}
|
||||
|
||||
@Provides
|
||||
|
||||
Reference in New Issue
Block a user