diff options
Diffstat (limited to 'app/k9mail/src/debug/java')
| -rw-r--r-- | app/k9mail/src/debug/java/app/k9mail/dev/DebugConfig.kt | 12 | ||||
| -rw-r--r-- | app/k9mail/src/debug/java/app/k9mail/dev/DemoBackendFactory.kt | 14 |
2 files changed, 26 insertions, 0 deletions
diff --git a/app/k9mail/src/debug/java/app/k9mail/dev/DebugConfig.kt b/app/k9mail/src/debug/java/app/k9mail/dev/DebugConfig.kt new file mode 100644 index 0000000..6d4b73b --- /dev/null +++ b/app/k9mail/src/debug/java/app/k9mail/dev/DebugConfig.kt @@ -0,0 +1,12 @@ +package app.k9mail.dev + +import org.koin.core.module.Module +import org.koin.core.scope.Scope + +fun Scope.developmentBackends() = mapOf( + "demo" to get<DemoBackendFactory>() +) + +fun Module.developmentModuleAdditions() { + single { DemoBackendFactory(backendStorageFactory = get()) } +} diff --git a/app/k9mail/src/debug/java/app/k9mail/dev/DemoBackendFactory.kt b/app/k9mail/src/debug/java/app/k9mail/dev/DemoBackendFactory.kt new file mode 100644 index 0000000..366fdc6 --- /dev/null +++ b/app/k9mail/src/debug/java/app/k9mail/dev/DemoBackendFactory.kt @@ -0,0 +1,14 @@ +package app.k9mail.dev + +import app.k9mail.backend.demo.DemoBackend +import com.fsck.k9.Account +import com.fsck.k9.backend.BackendFactory +import com.fsck.k9.backend.api.Backend +import com.fsck.k9.mailstore.K9BackendStorageFactory + +class DemoBackendFactory(private val backendStorageFactory: K9BackendStorageFactory) : BackendFactory { + override fun createBackend(account: Account): Backend { + val backendStorage = backendStorageFactory.createBackendStorage(account) + return DemoBackend(backendStorage) + } +} |
