feat(shared): ResourceDto im Shared-Modul #118

Closed
opened 2026-05-18 19:51:58 +00:00 by jreinemann-euris · 0 comments
jreinemann-euris commented 2026-05-18 19:51:58 +00:00 (Migrated from github.com)

Feature: ResourceDto im Shared-Modul

Part of: #117

Ziel

Ein @Serializable ResourceDto steht im shared-Modul bereit und kann von Server und App genutzt werden.

Scope

  • ResourceDto.kt in shared/src/main/kotlin/de/bollwerk/shared/model/
  • Pflichtfelder: guid, title, description, tags: List<String>, fileFormat, mimeType, fileSize: Long, releaseDate: String? (ISO 8601), createdAt: Long, updatedAt: Long
  • Optionale Felder: author: String?, language: String?, edition: String?, downloadUrl: String
  • @Serializable-Annotationen mit @SerialName wo nötig

Technische Hinweise

  • Muster: ItemDto.kt, MessageDto.kt im selben Paket
  • releaseDate als String? (ISO-Datum) oder nullable Long (epoch ms) – konsistent mit bestehenden Feldern wählen

Akzeptanzkriterien

  • ResourceDto ist @Serializable
  • Alle Pflichtfelder aus Issue #117 sind vorhanden
  • Optionale Felder als nullable
  • Kompiliert im shared-Modul ohne Fehler
## Feature: ResourceDto im Shared-Modul Part of: #117 ### Ziel Ein `@Serializable ResourceDto` steht im `shared`-Modul bereit und kann von Server und App genutzt werden. ### Scope - `ResourceDto.kt` in `shared/src/main/kotlin/de/bollwerk/shared/model/` - Pflichtfelder: `guid`, `title`, `description`, `tags: List<String>`, `fileFormat`, `mimeType`, `fileSize: Long`, `releaseDate: String?` (ISO 8601), `createdAt: Long`, `updatedAt: Long` - Optionale Felder: `author: String?`, `language: String?`, `edition: String?`, `downloadUrl: String` - `@Serializable`-Annotationen mit `@SerialName` wo nötig ### Technische Hinweise - Muster: `ItemDto.kt`, `MessageDto.kt` im selben Paket - `releaseDate` als `String?` (ISO-Datum) oder nullable `Long` (epoch ms) – konsistent mit bestehenden Feldern wählen ### Akzeptanzkriterien - [ ] `ResourceDto` ist `@Serializable` - [ ] Alle Pflichtfelder aus Issue #117 sind vorhanden - [ ] Optionale Felder als nullable - [ ] Kompiliert im shared-Modul ohne Fehler
Sign in to join this conversation.
No description provided.