Data Layer low complexity mobile
0
Dependencies
0
Dependents
0
Entities
0
Integrations

Description

Drift-backed local repository for the course catalog. Persists courses fetched from the REST API so the catalog is available offline, and invalidates on sync reconnect. Applies org-context filtering to return only courses visible to the current tenant.

Feature: Course Registration

courses

Sources & reasoning

The feature explicitly requires offline catalog access via Drift sync on reconnect. Without a dedicated repository, the course screen would be unavailable without connectivity, violating the platform's offline-first contract.

No source references — this artifact was included based on reasoning alone (see above).

Responsibilities

  • Persist course catalog locally via Drift
  • Return org-filtered course list for UI
  • Upsert and replace catalog on sync

Interfaces

getAllCourses(String orgId)
getCourseById(String courseId)
upsertCourses(List<Course>)
clearAndReplaceAll(List<Course>)