summaryrefslogtreecommitdiff
path: root/app/k9mail/src/debug/java
diff options
context:
space:
mode:
authortest@dangofactory.cos <you@example.com>2026-08-20 16:57:18 +0000
committertest@dangofactory.cos <you@example.com>2026-08-20 16:57:18 +0000
commit50ce5d5e6cd0d720ff437d35eace545816848428 (patch)
treeb59af206a36265cf081945e434900b32b0c43edd /app/k9mail/src/debug/java
downloadmonocles_mail-50ce5d5e6cd0d720ff437d35eace545816848428.tar.gz
monocles_mail-50ce5d5e6cd0d720ff437d35eace545816848428.tar.bz2
monocles_mail-50ce5d5e6cd0d720ff437d35eace545816848428.zip
Inital
Diffstat (limited to 'app/k9mail/src/debug/java')
-rw-r--r--app/k9mail/src/debug/java/app/k9mail/dev/DebugConfig.kt12
-rw-r--r--app/k9mail/src/debug/java/app/k9mail/dev/DemoBackendFactory.kt14
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)
+ }
+}