1 package dst.ass2.service.api.courseplan.rest;
3 import javax.ws.rs.core.Response;
5 import dst.ass2.service.api.courseplan.CourseNotAvailableException;
6 import dst.ass2.service.api.courseplan.CoursePlan;
7 import dst.ass2.service.api.courseplan.EntityNotFoundException;
10 * The ICoursePlanResource exposes the {@code ICoursePlanService} as a RESTful interface.
12 public interface ICoursePlanResource {
14 // TODO annotate the class and methods with the correct javax.ws.rs annotations
16 Response createCoursePlan(Long membershipId)
17 throws EntityNotFoundException;
19 Response deleteCoursePlan(Long coursePlanId)
20 throws EntityNotFoundException;
22 CoursePlan getCoursePlan(Long coursePlanId)
23 throws EntityNotFoundException;
25 Response addCourse(Long coursePlanId, Long courseId)
26 throws EntityNotFoundException, CourseNotAvailableException;
28 Response removeCourse(Long coursePlanId, Long courseId)
29 throws EntityNotFoundException;
31 Response submitCoursePlan(Long coursePlanId)
32 throws EntityNotFoundException, CourseNotAvailableException;