001package org.kuali.student.ap.test.mock;
002
003import org.kuali.student.ap.academicplan.infc.LearningPlan;
004import org.kuali.student.ap.schedulebuilder.ScheduleBuildForm;
005import org.kuali.student.ap.schedulebuilder.ScheduleBuildStrategy;
006import org.kuali.student.ap.schedulebuilder.ShoppingCartForm;
007import org.kuali.student.ap.schedulebuilder.infc.ActivityOption;
008import org.kuali.student.ap.schedulebuilder.infc.CourseOption;
009import org.kuali.student.ap.schedulebuilder.infc.PossibleScheduleOption;
010import org.kuali.student.ap.schedulebuilder.infc.ReservedTime;
011import org.kuali.student.r2.common.exceptions.PermissionDeniedException;
012
013import java.util.List;
014
015/**
016 * Created with IntelliJ IDEA.
017 * User: johglove
018 * Date: 11/19/13
019 * Time: 10:13 AM
020 * To change this template use File | Settings | File Templates.
021 */
022public class ScheduleBuildStrategyMockTest implements ScheduleBuildStrategy {
023    /**
024     * Get the initial schedule build form.
025     *
026     * @return The initial schedule build form.
027     */
028    @Override
029    public ScheduleBuildForm getInitialForm() {
030        return null;  //To change body of implemented methods use File | Settings | File Templates.
031    }
032
033    /**
034     * Load course options for a term from a list of course IDs.
035     *
036     * @param courseIDs Course IDs from the existing shopping cart.
037     * @param termId    The term to get options for.
038     * @return The course options to use as inputs for generating schedules.
039     */
040    @Override
041    public List<CourseOption> getCourseOptions(List<String> courseIds, String termId) {
042        return null;  //To change body of implemented methods use File | Settings | File Templates.
043    }
044
045    /**
046     * Load the course options to use as inputs for generating schedules.
047     *
048     * @param learningPlanId The learning plan ID.
049     * @param termId         The term to get options for.
050     * @return The course options to use as inputs for generating schedules.
051     */
052    @Override
053    public List<CourseOption> getCourseOptions(String learningPlanId, String termId) {
054        return null;  //To change body of implemented methods use File | Settings | File Templates.
055    }
056
057    /**
058     * Get the learning plan for schedule build to use as inputs.
059     *
060     * @param requestedLearningPlanId The requested learning plan ID. May be null to get the first
061     *                                learning plan of type
062     *                                {@link org.kuali.student.ap.framework.context.PlanConstants#LEARNING_PLAN_TYPE_PLAN} for the student.
063     * @return The learning plan for schedule build to use as inputs.
064     * @throws org.kuali.student.r2.common.exceptions.PermissionDeniedException
065     *          If the current user does not have access to the requested
066     *          learning plan.
067     */
068    @Override
069    public LearningPlan getLearningPlan(String requestedLearningPlanId) throws PermissionDeniedException {
070        return null;  //To change body of implemented methods use File | Settings | File Templates.
071    }
072
073    /**
074     * Get reserved times related to the current learning plan.
075     *
076     * @param requestedLearningPlanId See {@link #getLearningPlan(String)}.
077     * @return The reserved times related to the current learning plan.
078     */
079    @Override
080    public List<ReservedTime> getReservedTimes(String requestedLearningPlanId) throws PermissionDeniedException {
081        return null;  //To change body of implemented methods use File | Settings | File Templates.
082    }
083
084    /**
085     * Add a new reserved time on the current learning plan.
086     *
087     * @param reservedTime The reserved time to add.
088     */
089    @Override
090    public void createReservedTime(String requestedLearningPlanId, ReservedTime reservedTime) throws PermissionDeniedException {
091        //To change body of implemented methods use File | Settings | File Templates.
092    }
093
094    /**
095     * Add a new reserved time on the current learning plan.
096     *
097     * @param reservedTime The reserved time to add.
098     */
099    @Override
100    public void updateReservedTime(String requestedLearningPlanId, ReservedTime reservedTime) throws PermissionDeniedException {
101        //To change body of implemented methods use File | Settings | File Templates.
102    }
103
104    /**
105     * Add a new reserved time on the current learning plan.
106     *
107     * @param reservedTimeId The ID of the reserved time to delete.
108     */
109    @Override
110    public void deleteReservedTime(String requestedLearningPlanId, String reservedTimeId) throws PermissionDeniedException {
111        //To change body of implemented methods use File | Settings | File Templates.
112    }
113
114    /**
115     * Get saved schedules related to the current learning plan.
116     *
117     * @param requestedLearningPlanId See {@link #getLearningPlan(String)}.
118     * @return The saved schedules related to the current learning plan.
119     */
120    @Override
121    public List<PossibleScheduleOption> getSchedules(String requestedLearningPlanId) throws PermissionDeniedException {
122        return null;  //To change body of implemented methods use File | Settings | File Templates.
123    }
124
125    /**
126     * Add a new reserved time on the current learning plan.
127     *
128     * @param reservedTime The reserved time to add.
129     */
130    @Override
131    public PossibleScheduleOption createSchedule(String requestedLearningPlanId, PossibleScheduleOption schedule) throws PermissionDeniedException {
132        return null;  //To change body of implemented methods use File | Settings | File Templates.
133    }
134
135    /**
136     * Add a new saved schedule on the current learning plan.
137     *
138     * @param schedule The schedule to add.
139     */
140    @Override
141    public void updateSchedule(String requestedLearningPlanId, PossibleScheduleOption schedule) throws PermissionDeniedException {
142        //To change body of implemented methods use File | Settings | File Templates.
143    }
144
145    /**
146     * Add a new saved schedule on the current learning plan.
147     *
148     * @param scheduleId The ID of the schedule to delete.
149     */
150    @Override
151    public void deleteSchedule(String requestedLearningPlanId, String scheduleId) throws PermissionDeniedException {
152        //To change body of implemented methods use File | Settings | File Templates.
153    }
154
155
156    /**
157     * Get a populated activity option for a given term, course, and
158     * registration code.
159     *
160     * @param termId   The term ID.
161     * @param courseId The course ID.
162     * @param regCode  The registration code.
163     * @return A populated activity option for a given term, course, and
164     *         registration code. Returns null if data is missing.
165     */
166    @Override
167    public ActivityOption getActivityOption(String termId, String courseId, String regCode) {
168        return null;  //To change body of implemented methods use File | Settings | File Templates.
169    }
170}