001/*
002 * Copyright 2011 The Kuali Foundation
003 *
004 * Licensed under the Educational Community License, Version 2.0 (the
005 * "License"); you may not use this file except in compliance with the
006 * License.  You may obtain a copy of the License at
007 *
008 *      http://www.osedu.org/licenses/ECL-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
013 * implied.  See the License for the specific language governing
014 * permissions and limitations under the License.
015 */
016
017package org.kuali.student.enrollment.class2.courseregistration.service.impl;
018
019import java.util.Date;
020import java.util.LinkedHashMap;
021import java.util.List;
022import java.util.Map;
023
024import org.kuali.rice.core.api.criteria.QueryByCriteria;
025
026import org.kuali.student.enrollment.courseregistration.service.CourseRegistrationService;
027import org.kuali.student.enrollment.courseregistration.dto.CourseRegistrationInfo;
028import org.kuali.student.enrollment.courseregistration.dto.ActivityRegistrationInfo;
029import org.kuali.student.enrollment.courseregistration.dto.RegistrationRequestInfo;
030import org.kuali.student.enrollment.courseregistration.dto.RegistrationRequestItemInfo;
031import org.kuali.student.enrollment.courseregistration.dto.RegistrationResponseInfo;
032import org.kuali.student.enrollment.courseregistration.dto.CreditLoadInfo;
033
034import org.kuali.student.enrollment.courseoffering.service.CourseOfferingService;
035import org.kuali.student.enrollment.courseoffering.dto.RegistrationGroupInfo;
036
037import org.kuali.student.r2.common.dto.BulkStatusInfo;
038import org.kuali.student.r2.common.dto.ContextInfo;
039import org.kuali.student.r2.common.dto.MetaInfo;
040import org.kuali.student.r2.common.dto.StatusInfo;
041import org.kuali.student.r2.common.dto.ValidationResultInfo;
042
043import org.kuali.student.r2.common.exceptions.AlreadyExistsException;
044import org.kuali.student.r2.common.exceptions.DataValidationErrorException;
045import org.kuali.student.r2.common.exceptions.DoesNotExistException;
046import org.kuali.student.r2.common.exceptions.InvalidParameterException;
047import org.kuali.student.r2.common.exceptions.MissingParameterException;
048import org.kuali.student.r2.common.exceptions.OperationFailedException;
049import org.kuali.student.r2.common.exceptions.PermissionDeniedException;
050import org.kuali.student.r2.common.exceptions.ReadOnlyException;
051import org.kuali.student.r2.common.exceptions.VersionMismatchException;
052
053public abstract class AbstractCourseRegistrationService
054    implements CourseRegistrationService {
055
056
057    @Override
058    public CourseRegistrationInfo getCourseRegistration(String courseRegistrationId, ContextInfo contextInfo)
059        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
060
061        throw new OperationFailedException("unimplemented");
062    }
063
064    @Override
065    public List<CourseRegistrationInfo> getCourseRegistrationsByIds(List<String> courseRegistrationIds, ContextInfo contextInfo)
066        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
067
068        throw new OperationFailedException("unimplemented");
069    }
070
071    @Override
072    public List<String> getCourseRegistrationIdsByType(String courseRegistrationTypeKey,ContextInfo contextInfo)
073        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
074
075        throw new OperationFailedException("unimplemented");
076    }
077
078
079    @Override
080    public List<CourseRegistrationInfo> getCourseRegistrationsByStudent(String studentId, ContextInfo contextInfo)
081        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
082
083        throw new OperationFailedException("unimplemented");
084    }
085
086
087    @Override
088    public List<CourseRegistrationInfo> getCourseRegistrationsByCourseOffering(String courseOfferingId, ContextInfo contextInfo)
089        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
090
091        throw new OperationFailedException("unimplemented");
092    }
093
094
095    @Override
096    public List<CourseRegistrationInfo> getCourseRegistrationsByStudentAndCourseOffering(String studentId, String courseOfferingId, ContextInfo contextInfo)
097        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
098
099        throw new OperationFailedException("unimplemented");
100    }
101
102
103    @Override
104    public List<CourseRegistrationInfo> getCourseRegistrationsByStudentAndTerm(String studentId, String termId, ContextInfo contextInfo)
105        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
106
107        throw new OperationFailedException("unimplemented");
108    }
109
110
111    @Override
112    public List<String> searchForCourseRegistrationIds(QueryByCriteria criteria,ContextInfo contextInfo)
113        throws InvalidParameterException,MissingParameterException, OperationFailedException, PermissionDeniedException {
114
115        throw new OperationFailedException("unimplemented");
116    }
117
118
119    @Override
120    public List<CourseRegistrationInfo> searchForCourseRegistrations(QueryByCriteria criteria, ContextInfo contextInfo)
121        throws InvalidParameterException,MissingParameterException, OperationFailedException, PermissionDeniedException {
122
123        throw new OperationFailedException("unimplemented");
124    }
125
126    @Override
127    public ActivityRegistrationInfo getActivityRegistration(String activityRegistrationId, ContextInfo contextInfo)
128        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
129
130        throw new OperationFailedException("unimplemented");
131    }
132
133    @Override
134    public List<ActivityRegistrationInfo> getActivityRegistrationsByIds(List<String> activityRegistrationIds, ContextInfo contextInfo)
135        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
136
137        throw new OperationFailedException("unimplemented");
138    }
139
140    @Override
141    public List<String> getActivityRegistrationIdsByType(String activityRegistrationTypeKey, ContextInfo contextInfo)
142        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
143
144        throw new OperationFailedException("unimplemented");
145    }
146
147    @Override
148    public List<ActivityRegistrationInfo> getActivityRegistrationsForCourseRegistration(String courseRegistrationId, ContextInfo contextInfo)
149        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
150
151        throw new OperationFailedException("unimplemented");
152    }
153
154    @Override
155    public List<ActivityRegistrationInfo> getActivityRegistrationsByStudent(String studentId, ContextInfo contextInfo)
156        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
157
158        throw new OperationFailedException("unimplemented");
159    }
160
161    @Override
162    public List<ActivityRegistrationInfo> getActivityRegistrationsByActivityOffering(String courseOfferingId, ContextInfo contextInfo)
163        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
164
165        throw new OperationFailedException("unimplemented");
166    }
167
168    @Override
169    public List<ActivityRegistrationInfo> getActivityRegistrationsByStudentAndActivityOffering(String studentId, String courseOfferingId, ContextInfo contextInfo) 
170        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
171
172        throw new OperationFailedException("unimplemented");
173    }
174
175    @Override
176    public List<ActivityRegistrationInfo> getActivityRegistrationsByStudentAndTerm(String studentId, String termId, ContextInfo contextInfo) 
177        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
178
179        throw new OperationFailedException("unimplemented");
180    }
181
182    @Override
183    public List<String> searchForActivityRegistrationIds(QueryByCriteria criteria, ContextInfo contextInfo)
184        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
185
186        throw new OperationFailedException("unimplemented");
187    }
188
189
190    @Override
191    public List<ActivityRegistrationInfo> searchForActivityRegistrations(QueryByCriteria criteria, ContextInfo contextInfo)
192        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
193
194        throw new OperationFailedException("unimplemented");
195    }
196
197    @Override
198    public RegistrationRequestInfo getRegistrationRequest(String registrationRequestId, ContextInfo contextInfo)
199        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
200
201        throw new OperationFailedException("unimplemented");
202    }
203
204    @Override
205    public List<RegistrationRequestInfo> getRegistrationRequestsByIds(List<String> registrationRequestIds, ContextInfo contextInfo)
206        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
207
208        throw new OperationFailedException("unimplemented");
209    }
210
211    @Override
212    public List<String> getRegistrationRequestIdsByType(String registrationRequestTypeKey, ContextInfo contextInfo)
213        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
214
215        throw new OperationFailedException("unimplemented");
216    }
217
218    @Override
219    public List<RegistrationRequestInfo> getRegistrationRequestsByRequestor(String personId, ContextInfo contextInfo)
220        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
221
222        throw new OperationFailedException("unimplemented");
223    }
224
225    @Override
226    public List<RegistrationRequestInfo> getUnsubmittedRegistrationRequestsByRequestorAndTerm(String requestorId, String termId, ContextInfo contextInfo)
227        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
228
229        throw new OperationFailedException("unimplemented");
230    }
231
232    @Override
233    public List<String> searchForRegistrationRequestIds(QueryByCriteria criteria, ContextInfo contextInfo)
234        throws InvalidParameterException,MissingParameterException, OperationFailedException, PermissionDeniedException {
235
236        throw new OperationFailedException("unimplemented");
237    }
238
239    @Override
240    public List<RegistrationRequestInfo> searchForRegistrationRequests(QueryByCriteria criteria, ContextInfo contextInfo)
241        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
242
243        throw new OperationFailedException("unimplemented");
244    }
245
246    @Override
247    public List<ValidationResultInfo> validateRegistrationRequest(String validationTypeKey, String registrationRequestTypeKey, RegistrationRequestInfo registrationRequestInfo, ContextInfo contextInfo) 
248        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
249        
250        throw new OperationFailedException("unimplemented");
251    }
252
253    @Override
254    public RegistrationRequestInfo createRegistrationRequest(String registrationRequestTypeKey, RegistrationRequestInfo registrationRequestInfo, ContextInfo contextInfo)
255        throws DataValidationErrorException, DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException {
256
257        throw new OperationFailedException("unimplemented");
258    }
259
260    @Override
261    public RegistrationRequestInfo createRegistrationRequestFromExisting(String registrationRequestId, ContextInfo contextInfo)
262        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
263
264        throw new OperationFailedException("unimplemented");
265    }
266
267    @Override
268    public RegistrationRequestInfo updateRegistrationRequest(String registrationRequestId, RegistrationRequestInfo registrationRequestInfo, ContextInfo contextInfo)
269        throws DataValidationErrorException, DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException, VersionMismatchException {
270
271        throw new OperationFailedException("unimplemented");
272    }
273
274    @Override
275    public StatusInfo deleteRegistrationRequest(String registrationRequestId, ContextInfo contextInfo) 
276        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
277
278        throw new OperationFailedException("unimplemented");
279    }
280
281    @Override
282    public List<ValidationResultInfo> verifyRegistrationRequestForSubmission(String registrationRequestId, ContextInfo contextInfo)
283        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
284
285        throw new OperationFailedException("unimplemented");
286    }
287
288    @Override
289    public RegistrationResponseInfo submitRegistrationRequest(String registrationRequestId, ContextInfo contextInfo) 
290        throws AlreadyExistsException, DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
291
292        throw new OperationFailedException("unimplemented");
293    }
294
295    @Override
296    public List<RegistrationRequestItemInfo> getRegistrationRequestItemsForCourseRegistration(String courseRegistrationId, ContextInfo contextInfo)
297        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
298
299        throw new OperationFailedException("unimplemented");
300    }
301
302    @Override
303    public List<RegistrationRequestItemInfo> getRegistrationRequestItemsByCourseOfferingAndStudent(String courseOfferingId, String studentId, ContextInfo contextInfo) 
304        throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
305
306        throw new OperationFailedException("unimplemented");
307    }
308
309    @Override
310    public List<ValidationResultInfo> checkStudentEligibility(String studentId, ContextInfo contextInfo) 
311        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
312
313        throw new OperationFailedException("unimplemented");
314    }
315
316    @Override
317    public List<ValidationResultInfo> checkStudentEligibilityForTerm(String studentId, String termId, ContextInfo contextInfo) 
318        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
319
320        throw new OperationFailedException("unimplemented");
321    }
322
323    @Override
324    public List<ValidationResultInfo> checkStudentEligibiltyForCourseOffering(String studentId, String courseOfferingId, ContextInfo contextInfo) 
325        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
326
327        throw new OperationFailedException("unimplemented");
328    }
329
330    @Override
331    public List<ValidationResultInfo> checkStudentEligibiltyForRegistrationGroup(String studentId, String registrationGroupId, ContextInfo contextInfo) 
332        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
333
334        throw new OperationFailedException("unimplemented");
335    }
336
337    @Override
338    public List<RegistrationGroupInfo> getEligibleRegistrationGroupsForStudentInCourseOffering(String studentId, String courseOfferingId, ContextInfo contextInfo) 
339        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
340
341        throw new OperationFailedException("unimplemented");
342
343    }
344
345    @Override
346    public CreditLoadInfo calculateCreditLoadForStudentRegistrationRequest(String registrationRequestId, String studentId, ContextInfo contextInfo)
347        throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
348
349        throw new OperationFailedException("unimplemented");
350    }
351}