Wizard Persistence Repository
Component Detail
Data Layer
low complexity
mobile
0
Dependencies
1
Dependents
0
Entities
0
Integrations
Description
Local storage adapter that serializes and deserializes in-progress wizard drafts as JSON, ensuring activity registration survives app backgrounding and device restarts. Stores a single active draft per user keyed by user ID, with automatic expiry after 7 days.
wizard-persistence-repository
Responsibilities
- Serialize wizard draft state to local JSON storage
- Deserialize and restore draft on wizard re-entry
- Enforce single active draft per user
- Apply 7-day TTL expiry to prevent stale drafts
- Clear draft on successful submission or explicit cancellation
Interfaces
saveDraft(String userId, WizardDraft draft)
loadDraft(String userId)
clearDraft(String userId)
hasDraft(String userId)
isDraftExpired(String userId)
getDraftAge(String userId)