Room-Adapter (EventStore) für mana-kotlin-event-sync — ersetzt die per-App-Kopien — Apache-2.0, Spiegel des Vereins mana.
| devlog/2026-06-10 | ||
| gradle | ||
| src/main/kotlin/ev/mana/eventsync/room | ||
| .gitignore | ||
| build.gradle.kts | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| README.md | ||
| settings.gradle.kts | ||
mana-kotlin-event-sync-room
Room-Adapter für ev.mana:mana-kotlin-event-sync — die Android-Persistenz
(EventStore-Implementierung) zur sonst pure-JVM-Engine. Ersetzt die
früheren identischen per-App-Kopien (RoomEventStore/EventSyncDao/
EventSyncDb in wordeck/pageta/zitare/nutriphi/stetick-android).
- Artefakt:
ev.mana:mana-kotlin-event-sync-room(Forgejo-Maven,git.mana.how/api/packages/till/maven) - Versionierung: Lockstep mit
mana-kotlin-event-sync(gleiche Version). - Inhalt:
EventSyncDatabase(Room, version 1:events/outbox/meta),EventSyncDao,RoomEventStore,createEventSyncDatabase(context, name).
Migration aus einer App-Kopie
// vorher (per-App-Kopie):
val db = Room.databaseBuilder(context, WordeckDatabase::class.java, "wordeck.db").build()
val store = RoomEventStore(db.dao())
// nachher:
import ev.mana.eventsync.room.RoomEventStore
import ev.mana.eventsync.room.createEventSyncDatabase
val db = createEventSyncDatabase(context, "wordeck.db") // ALTER DB-Name!
val store = RoomEventStore(db.dao())
Wichtig: Der DB-Dateiname muss der bisherige bleiben — das Schema ist identisch (version 1), bestehende Event-Logs werden nahtlos weiterverwendet.
Build
JAVA_HOME="/Applications/Android Studio.app/Contents/jbr/Contents/Home" ./gradlew assembleRelease
FORGEJO_TOKEN=… ./gradlew publish