Service Layer medium complexity mobile
1
Dependencies
2
Dependents
8
Entities
0
Integrations

Description

Manages course listing retrieval, registration submission, enrollment state transitions, and prerequisite validation via the REST API. Coordinates with the push notification system to schedule confirmation and reminder notifications, and links completed courses to certification records.

Feature: Course Registration

course-service

Responsibilities

  • Fetch available courses with filtering and pagination from REST API
  • Submit and cancel course registrations with optimistic state updates
  • Validate prerequisites against user certification and completion records
  • Trigger push notification scheduling for registration confirmation, course reminders, and certificate expiry warnings
  • Manage BLoC enrollment state transitions (available → registered → completed → certified)

Interfaces

fetchCourses(filters, page, pageSize)
fetchCourseById(courseId)
registerForCourse(courseId, userId)
cancelRegistration(registrationId)
getRegistrationStatus(courseId, userId)
getUserRegistrations(userId)
validatePrerequisites(courseId, userId)
linkCompletionToCertification(registrationId, certificationTypeId)
getCompletionHistory(userId)

Relationships

Dependencies (1)

Components this component depends on

Dependents (2)

Components that depend on this component