Inject domain modules

pull/2064/head
lihenggui 1 year ago
parent a384f0ae95
commit d61a1f9329

@ -22,6 +22,7 @@ import com.google.samples.apps.nowinandroid.core.data.di.dataModule
import com.google.samples.apps.nowinandroid.core.database.di.databaseModule
import com.google.samples.apps.nowinandroid.core.datastore.di.dataStoreModule
import com.google.samples.apps.nowinandroid.core.di.commonModule
import com.google.samples.apps.nowinandroid.core.domain.di.domainModule
import com.google.samples.apps.nowinandroid.core.network.di.networkModule
import com.google.samples.apps.nowinandroid.core.notifications.di.notificationModule
import com.google.samples.apps.nowinandroid.feature.bookmarks.di.bookmarksModule
@ -65,6 +66,7 @@ internal val appModules = module {
databaseModule,
dataModule,
dataStoreModule(),
domainModule,
networkModule,
notificationModule,
)

@ -28,7 +28,6 @@ import org.koin.core.annotation.Factory
/**
* A use case which obtains a list of topics with their followed state.
*/
@Factory
class GetFollowableTopicsUseCase(
private val topicsRepository: TopicsRepository,
private val userDataRepository: UserDataRepository,

@ -24,7 +24,6 @@ import org.koin.core.annotation.Factory
/**
* A use case which returns the recent search queries.
*/
@Factory
class GetRecentSearchQueriesUseCase(
private val recentSearchRepository: RecentSearchRepository,
) {

@ -25,12 +25,10 @@ import com.google.samples.apps.nowinandroid.core.model.data.UserNewsResource
import com.google.samples.apps.nowinandroid.core.model.data.UserSearchResult
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.combine
import org.koin.core.annotation.Factory
/**
* A use case which returns the searched contents matched with the search query.
*/
@Factory
class GetSearchContentsUseCase(
private val searchContentsRepository: SearchContentsRepository,
private val userDataRepository: UserDataRepository,

@ -16,9 +16,14 @@
package com.google.samples.apps.nowinandroid.core.domain.di
import org.koin.core.annotation.ComponentScan
import org.koin.core.annotation.Module
import com.google.samples.apps.nowinandroid.core.domain.GetFollowableTopicsUseCase
import com.google.samples.apps.nowinandroid.core.domain.GetRecentSearchQueriesUseCase
import com.google.samples.apps.nowinandroid.core.domain.GetSearchContentsUseCase
import org.koin.core.module.dsl.factoryOf
import org.koin.dsl.module
@Module
@ComponentScan
class DomainModule
val domainModule = module {
factoryOf(::GetFollowableTopicsUseCase)
factoryOf(::GetRecentSearchQueriesUseCase)
factoryOf(::GetSearchContentsUseCase)
}

@ -35,6 +35,7 @@ kotlin {
api(projects.core.ui)
api(projects.core.designsystem)
api(projects.core.data)
api(projects.core.domain)
api(projects.core.model)
api(projects.core.analytics)
api(projects.core.notifications)

Loading…
Cancel
Save