@@ -2,25 +2,52 @@ package com.shifthackz.joyreactor.domain.di
2
2
3
3
import com.shifthackz.joyreactor.domain.usecase.comment.FetchPostCommentsUseCase
4
4
import com.shifthackz.joyreactor.domain.usecase.comment.FetchPostCommentsUseCaseImpl
5
+ import com.shifthackz.joyreactor.domain.usecase.nsfw.ObserveNsfwFilterUseCase
6
+ import com.shifthackz.joyreactor.domain.usecase.nsfw.ObserveNsfwFilterUseCaseImpl
5
7
import com.shifthackz.joyreactor.domain.usecase.post.FetchPostsPageUseCase
6
8
import com.shifthackz.joyreactor.domain.usecase.post.FetchPostsPageUseCaseImpl
7
9
import com.shifthackz.joyreactor.domain.usecase.post.GetFullPostUseCase
8
10
import com.shifthackz.joyreactor.domain.usecase.post.GetFullPostUseCaseImpl
9
11
import com.shifthackz.joyreactor.domain.usecase.sections.FetchSectionsUseCase
10
12
import com.shifthackz.joyreactor.domain.usecase.sections.FetchSectionsUseCaseImpl
13
+ import com.shifthackz.joyreactor.domain.usecase.settings.GetSettingsUseCase
14
+ import com.shifthackz.joyreactor.domain.usecase.settings.GetSettingsUseCaseImpl
15
+ import com.shifthackz.joyreactor.domain.usecase.settings.ObserveSettingsUseCase
16
+ import com.shifthackz.joyreactor.domain.usecase.settings.ObserveSettingsUseCaseImpl
17
+ import com.shifthackz.joyreactor.domain.usecase.settings.UpdateSettingsUseCase
18
+ import com.shifthackz.joyreactor.domain.usecase.settings.UpdateSettingsUseCaseImpl
11
19
import com.shifthackz.joyreactor.domain.usecase.tags.FetchTagsUseCase
12
20
import com.shifthackz.joyreactor.domain.usecase.tags.FetchTagsUseCaseImpl
13
21
import com.shifthackz.joyreactor.domain.usecase.tags.SearchTagsUseCase
14
22
import com.shifthackz.joyreactor.domain.usecase.tags.SearchTagsUseCaseImpl
23
+ import com.shifthackz.joyreactor.entity.postQualifier
24
+ import com.shifthackz.joyreactor.entity.sectionQualifier
25
+ import com.shifthackz.joyreactor.entity.tagQualifier
15
26
import org.koin.core.module.dsl.factoryOf
16
27
import org.koin.dsl.bind
17
28
import org.koin.dsl.module
18
29
19
30
val domainModule = module {
20
- factoryOf(::FetchPostsPageUseCaseImpl ) bind FetchPostsPageUseCase ::class
21
31
factoryOf(::GetFullPostUseCaseImpl ) bind GetFullPostUseCase ::class
22
32
factoryOf(::FetchPostCommentsUseCaseImpl ) bind FetchPostCommentsUseCase ::class
23
- factoryOf(::FetchSectionsUseCaseImpl ) bind FetchSectionsUseCase ::class
24
- factoryOf(::FetchTagsUseCaseImpl ) bind FetchTagsUseCase ::class
25
- factoryOf(::SearchTagsUseCaseImpl ) bind SearchTagsUseCase ::class
33
+ factoryOf(::GetSettingsUseCaseImpl ) bind GetSettingsUseCase ::class
34
+ factoryOf(::UpdateSettingsUseCaseImpl ) bind UpdateSettingsUseCase ::class
35
+ factoryOf(::ObserveSettingsUseCaseImpl ) bind ObserveSettingsUseCase ::class
36
+ factoryOf(::ObserveNsfwFilterUseCaseImpl ) bind ObserveNsfwFilterUseCase ::class
37
+
38
+ factory<SearchTagsUseCase > {
39
+ SearchTagsUseCaseImpl (get(), get(tagQualifier))
40
+ }
41
+
42
+ factory<FetchTagsUseCase > {
43
+ FetchTagsUseCaseImpl (get(), get(tagQualifier))
44
+ }
45
+
46
+ factory<FetchSectionsUseCase > {
47
+ FetchSectionsUseCaseImpl (get(), get(sectionQualifier))
48
+ }
49
+
50
+ factory<FetchPostsPageUseCase > {
51
+ FetchPostsPageUseCaseImpl (get(), get(postQualifier))
52
+ }
26
53
}
0 commit comments