Hilt DatabaseModule (DI-Setup für Room) #19

Closed
opened 2026-05-13 20:42:14 +00:00 by jreinemann-euris · 1 comment
jreinemann-euris commented 2026-05-13 20:42:14 +00:00 (Migrated from github.com)

Feature: Hilt DatabaseModule

Part of: #5
Depends on: #17

Ziel

Room-Datenbank und alle DAOs sind über Hilt injizierbar – kein manuelles Erstellen von Datenbankinstanzen nötig.

Scope

  • DatabaseModule: Hilt @Module mit @InstallIn(SingletonComponent::class)
  • provideDatabase(): erstellt KrisenvorratDatabase als Singleton (Room.databaseBuilder)
  • provideItemDao(), provideCategoryDao(), provideLocationDao(), provideSettingsDao(): liefern DAO-Instanzen aus der Datenbank

Technische Hinweise

  • Package: de.krisenvorrat.app.di
  • Datenbankname: krisenvorrat.db
  • @Singleton-Scope für die Database-Instanz
  • DAOs erben den Scope implizit

Akzeptanzkriterien

  • DatabaseModule kompiliert mit Hilt-Annotationen
  • App startet ohne Crash (Datenbank wird korrekt initialisiert)
  • Tests: Smoke-Test – DAO-Injektion funktioniert
## Feature: Hilt DatabaseModule Part of: #5 Depends on: #17 ### Ziel Room-Datenbank und alle DAOs sind über Hilt injizierbar – kein manuelles Erstellen von Datenbankinstanzen nötig. ### Scope - `DatabaseModule`: Hilt `@Module` mit `@InstallIn(SingletonComponent::class)` - `provideDatabase()`: erstellt KrisenvorratDatabase als Singleton (`Room.databaseBuilder`) - `provideItemDao()`, `provideCategoryDao()`, `provideLocationDao()`, `provideSettingsDao()`: liefern DAO-Instanzen aus der Datenbank ### Technische Hinweise - Package: `de.krisenvorrat.app.di` - Datenbankname: `krisenvorrat.db` - `@Singleton`-Scope für die Database-Instanz - DAOs erben den Scope implizit ### Akzeptanzkriterien - [ ] DatabaseModule kompiliert mit Hilt-Annotationen - [ ] App startet ohne Crash (Datenbank wird korrekt initialisiert) - [ ] Tests: Smoke-Test – DAO-Injektion funktioniert
jreinemann-euris commented 2026-05-13 21:31:52 +00:00 (Migrated from github.com)

Abgeschlossen (2026-05-13)

Zyklen: 1 Implementierungszyklus + 1 Review-Korrektur
Tests: assembleDebug + unit tests, 0 Fehler

Implementierte Artefakte

  • \de.krisenvorrat.app.di.DatabaseModule: Hilt @Module\ mit @InstallIn(SingletonComponent), @Singleton-Provider für \KrisenvorratDatabase\ und vier @Provides-Methoden für ItemDao, CategoryDao, LocationDao, SettingsDao
  • \DatabaseModuleTest: Smoke-Test (in-memory Room DB) prüft Non-Null für alle vier DAOs

Abweichungen

  • Keine
## Abgeschlossen (2026-05-13) **Zyklen:** 1 Implementierungszyklus + 1 Review-Korrektur **Tests:** ✅ assembleDebug + unit tests, 0 Fehler ### Implementierte Artefakte - ✅ \de.krisenvorrat.app.di.DatabaseModule\: Hilt \@Module\ mit \@InstallIn(SingletonComponent)\, \@Singleton\-Provider für \KrisenvorratDatabase\ und vier \@Provides\-Methoden für ItemDao, CategoryDao, LocationDao, SettingsDao - ✅ \DatabaseModuleTest\: Smoke-Test (in-memory Room DB) prüft Non-Null für alle vier DAOs ### Abweichungen - Keine
Sign in to join this conversation.
No description provided.