Files
RSSuper/tasks/native-business-logic-migration/04-implement-android-data-models.md
Michael Freno d346b527e6
Some checks failed
CI - Multi-Platform Native / Build iOS (RSSuper) (push) Has been cancelled
CI - Multi-Platform Native / Build macOS (push) Has been cancelled
CI - Multi-Platform Native / Build Android (push) Has been cancelled
CI - Multi-Platform Native / Build Linux (push) Has been cancelled
CI - Multi-Platform Native / Build Summary (push) Has been cancelled
migration start
2026-03-29 14:12:17 -04:00

1.0 KiB

04. Implement Android data models (Kotlin)

meta: id: native-business-logic-migration-04 feature: native-business-logic-migration priority: P0 depends_on: [native-business-logic-migration-02] tags: [implementation, android, data-models]

objective:

  • Implement all data models in Kotlin following Android conventions

deliverables:

  • FeedItem.kt
  • Feed.kt
  • FeedSubscription.kt
  • SearchResult.kt
  • SearchFilters.kt
  • NotificationPreferences.kt
  • ReadingPreferences.kt
  • Supporting data classes and sealed classes

tests:

  • Unit: Test serialization/deserialization with Moshi/Gson
  • Unit: Test copy() functionality
  • Unit: Test toString() output

acceptance_criteria:

  • All models are data classes
  • All models have proper equals/hashCode
  • JSON serialization working with Moshi
  • Room Entity annotations ready for database models
  • Sealed classes for enum types

validation:

  • Run ./gradlew test
  • Verify no lint warnings

notes:

  • Use data classes for immutable value objects
  • Use sealed classes for enum-like types
  • Consider using Parcelize for UI passing