-
-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathGithubApplicationInitializer.kt
More file actions
41 lines (38 loc) · 1.7 KB
/
Copy pathGithubApplicationInitializer.kt
File metadata and controls
41 lines (38 loc) · 1.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/*
* Copyright (C) 2026 AniTrend
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
package co.anitrend.initializer
import android.content.Context
import androidx.startup.Initializer
import co.anitrend.android.core.koinOf
import co.anitrend.core.initializer.contract.AbstractCoreInitializer
import co.anitrend.core.koin.helper.DynamicFeatureModuleHelper.Companion.loadModules
import co.anitrend.koin.githubAppModules
import co.anitrend.push.PushRegistrationCoordinator
class GithubApplicationInitializer : AbstractCoreInitializer<Unit>() {
/**
* @return A list of dependencies that this [Initializer] depends on. This is
* used to determine initialization order of [Initializer]s.
*
* For e.g. if a [Initializer] `B` defines another [Initializer] `A` as its dependency,
* then `A` gets initialized before `B`.
*/
override fun dependencies(): List<Class<out Initializer<*>>> = listOf(ApplicationInitializer::class.java)
override fun create(context: Context) {
githubAppModules.loadModules()
koinOf<PushRegistrationCoordinator>()
}
}