Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
CourseRegistrationService |
|
| 1.0;1 |
1 | /* | |
2 | * Copyright 2011 The Kuali Foundation | |
3 | * | |
4 | * Licensed under the Educational Community License, Version 2.0 (the | |
5 | * "License"); you may not use this file except in compliance with the | |
6 | * License. You may obtain a copy of the License at | |
7 | * | |
8 | * http://www.osedu.org/licenses/ECL-2.0 | |
9 | * | |
10 | * Unless required by applicable law or agreed to in writing, software | |
11 | * distributed under the License is distributed on an "AS IS" BASIS, | |
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or | |
13 | * implied. See the License for the specific language governing | |
14 | * permissions and limitations under the License. | |
15 | */ | |
16 | ||
17 | package org.kuali.student.enrollment.courseregistration.service; | |
18 | ||
19 | import java.util.List; | |
20 | ||
21 | import javax.jws.WebParam; | |
22 | import javax.jws.WebService; | |
23 | import javax.jws.soap.SOAPBinding; | |
24 | ||
25 | import org.kuali.rice.core.api.criteria.QueryByCriteria; | |
26 | ||
27 | import org.kuali.student.enrollment.courseregistration.dto.ActivityRegistrationInfo; | |
28 | import org.kuali.student.enrollment.courseregistration.dto.CourseRegistrationInfo; | |
29 | import org.kuali.student.enrollment.courseregistration.dto.RegistrationRequestInfo; | |
30 | import org.kuali.student.enrollment.courseregistration.dto.RegistrationRequestItemInfo; | |
31 | import org.kuali.student.enrollment.courseregistration.dto.RegistrationResponseInfo; | |
32 | import org.kuali.student.enrollment.courseregistration.dto.CreditLoadInfo; | |
33 | import org.kuali.student.enrollment.courseoffering.dto.RegistrationGroupInfo; | |
34 | ||
35 | import org.kuali.student.r2.common.dto.ContextInfo; | |
36 | import org.kuali.student.r2.common.dto.StatusInfo; | |
37 | import org.kuali.student.r2.common.dto.ValidationResultInfo; | |
38 | ||
39 | import org.kuali.student.r2.common.exceptions.AlreadyExistsException; | |
40 | import org.kuali.student.r2.common.exceptions.DataValidationErrorException; | |
41 | import org.kuali.student.r2.common.exceptions.DoesNotExistException; | |
42 | import org.kuali.student.r2.common.exceptions.InvalidParameterException; | |
43 | import org.kuali.student.r2.common.exceptions.MissingParameterException; | |
44 | import org.kuali.student.r2.common.exceptions.OperationFailedException; | |
45 | import org.kuali.student.r2.common.exceptions.PermissionDeniedException; | |
46 | import org.kuali.student.r2.common.exceptions.ReadOnlyException; | |
47 | import org.kuali.student.r2.common.exceptions.VersionMismatchException; | |
48 | ||
49 | import org.kuali.student.r2.common.util.constants.CourseRegistrationServiceConstants; | |
50 | ||
51 | /** | |
52 | * The Course Registration Service is a Class II service supporting | |
53 | * the process of registering a student in course(s) for a term. The | |
54 | * service provides operations for creating and validating | |
55 | * registration requests, registering for a course, and dropping a | |
56 | * course. | |
57 | * | |
58 | * This service supports the concept of registration cart in the | |
59 | * application and all of the transactional requests for registration | |
60 | * are made through this service. As part of negotiating the student's | |
61 | * registration, operations are provided to manage related exceptions | |
62 | * and holds related to registration. | |
63 | * | |
64 | * @author Kuali Student Team (sambit) | |
65 | */ | |
66 | ||
67 | @WebService(name = "CourseRegistrationService", targetNamespace = CourseRegistrationServiceConstants.NAMESPACE) | |
68 | @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED) | |
69 | public interface CourseRegistrationService { | |
70 | ||
71 | // CourseRegitsration methods | |
72 | ||
73 | /** | |
74 | * Retrieves a single CourseRegistration by an CourseRegistration Id. | |
75 | * | |
76 | * @param courseRegistrationId the identifier for the | |
77 | * CourseRegistration to be retrieved | |
78 | * @param contextInfo information containing the principalId and | |
79 | * locale information about the caller of the service | |
80 | * operation | |
81 | * @return the CourseRegistration requested | |
82 | * @throws DoesNotExistException courseRegistrationId is not found | |
83 | * @throws InvalidParameterException contextInfo is not valid | |
84 | * @throws MissingParameterException courseRegistrationId or | |
85 | * contextInfo is missing or null | |
86 | * @throws OperationFailedException unable to complete request | |
87 | * @throws PermissionDeniedException an authorization failure occurred | |
88 | */ | |
89 | public CourseRegistrationInfo getCourseRegistration(@WebParam(name = "courseRegistrationId") String courseRegistrationId, | |
90 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
91 | throws DoesNotExistException, | |
92 | InvalidParameterException, | |
93 | MissingParameterException, | |
94 | OperationFailedException, | |
95 | PermissionDeniedException; | |
96 | ||
97 | /** | |
98 | * Retrieve a list of CourseRegistrations from a list of | |
99 | * CourseRegistration Ids. The returned list may be in any order | |
100 | * and if duplicate Ids are supplied, a unique set may or may not | |
101 | * ber returned. | |
102 | * | |
103 | * @param courseRegistrationIds a list of CourseRegistration identifiers | |
104 | * @param contextInfo information containing the principalId and | |
105 | * locale information about the caller of the service | |
106 | * operation | |
107 | * @return a list of CourseRegistrations | |
108 | * @throws DoesNotExistException a courseRegistrationId in the | |
109 | * list was not found | |
110 | * @throws InvalidParameterException contextInfo is not valid | |
111 | * @throws MissingParameterException courseRegistrationIds, an Id | |
112 | * in courseRegistrationIds, or contextInfo is missing or | |
113 | * null | |
114 | * @throws OperationFailedException unable to complete request | |
115 | * @throws PermissionDeniedException an authorization failure occurred | |
116 | */ | |
117 | public List<CourseRegistrationInfo> getCourseRegistrationsByIds(@WebParam(name = "courseRegistrationIds") List<String> courseRegistrationIds, | |
118 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
119 | throws DoesNotExistException, | |
120 | InvalidParameterException, | |
121 | MissingParameterException, | |
122 | OperationFailedException, | |
123 | PermissionDeniedException; | |
124 | ||
125 | /** | |
126 | * Retrieve a list of CourseRegistrationIds by CourseRegistration | |
127 | * Type. | |
128 | * | |
129 | * @param courseRegistrationTypeKey an identifier for an | |
130 | * CourseRegistration Type | |
131 | * @param contextInfo information containing the principalId and | |
132 | * locale information about the caller of the service | |
133 | * operation | |
134 | * @return a list of CourseRegistrations identifiers matching | |
135 | * courseRegistrationTypeKey or an empty list of none found | |
136 | * @throws InvalidParameterException contextInfo is not valid | |
137 | * @throws MissingParameterException courseRegistrationTypeKey | |
138 | * or contextInfo is missing or null | |
139 | * @throws OperationFailedException unable to complete request | |
140 | * @throws PermissionDeniedException an authorization failure occurred | |
141 | */ | |
142 | public List<String> getCourseRegistrationIdsByType(@WebParam(name = "courseRegistrationTypeKey") String courseRegistrationTypeKey, | |
143 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
144 | throws InvalidParameterException, | |
145 | MissingParameterException, | |
146 | OperationFailedException, | |
147 | PermissionDeniedException; | |
148 | ||
149 | /** | |
150 | * Gets a list of CourseRegistrations for a given Student. | |
151 | * | |
152 | * @param studentId an identifier for a Student | |
153 | * @param contextInfo information containing the principalId and | |
154 | * locale information about the caller of the service | |
155 | * operation | |
156 | * @return list of CourseRegistrations associated with the given | |
157 | * Student or an empty list if none found | |
158 | * @throws InvalidParameterException contextInfo is not valid | |
159 | * @throws MissingParameterException studentId or contextInfo is | |
160 | * missing or null | |
161 | * @throws OperationFailedException unable to complete request | |
162 | * @throws PermissionDeniedException an authorization failure occurred | |
163 | */ | |
164 | public List<CourseRegistrationInfo> getCourseRegistrationsByStudent(@WebParam(name = "studentId") String studentId, | |
165 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
166 | throws InvalidParameterException, | |
167 | MissingParameterException, | |
168 | OperationFailedException, | |
169 | PermissionDeniedException; | |
170 | ||
171 | /** | |
172 | * Gets a list of CourseRegistrations for a given CourseOffering. | |
173 | * | |
174 | * @param courseOfferingId an identifier for a CourseOffering | |
175 | * @param contextInfo information containing the principalId and | |
176 | * locale information about the caller of the service | |
177 | * operation | |
178 | * @return list of CourseRegistrations associated with the given | |
179 | * CourseOffering or an empty list if none found | |
180 | * @throws InvalidParameterException contextInfo is not valid | |
181 | * @throws MissingParameterException courseOfferingId or | |
182 | * contextInfo is missing or null | |
183 | * @throws OperationFailedException unable to complete request | |
184 | * @throws PermissionDeniedException an authorization failure occurred | |
185 | */ | |
186 | public List<CourseRegistrationInfo> getCourseRegistrationsByCourseOffering(@WebParam(name = "courseOfferingId") String courseOfferingId, | |
187 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
188 | throws InvalidParameterException, | |
189 | MissingParameterException, | |
190 | OperationFailedException, | |
191 | PermissionDeniedException; | |
192 | ||
193 | /** | |
194 | * Gets a list of CourseRegistrations for a given Student and | |
195 | * CourseOffering. | |
196 | * | |
197 | * @param studentId an identifier for a Student | |
198 | * @param courseOfferingId an identifier for a CourseOffering | |
199 | * @param contextInfo information containing the principalId and | |
200 | * locale information about the caller of the service | |
201 | * operation | |
202 | * @return list of CourseRegistrations associated with the given | |
203 | * Student and CourseOffering or an empty list if none | |
204 | * found | |
205 | * @throws InvalidParameterException contextInfo is not valid | |
206 | * @throws MissingParameterException studentId, courseOfferingId, | |
207 | * or contextInfo is missing or null | |
208 | * @throws OperationFailedException unable to complete request | |
209 | * @throws PermissionDeniedException an authorization failure occurred | |
210 | */ | |
211 | public List<CourseRegistrationInfo> getCourseRegistrationsByStudentAndCourseOffering(@WebParam(name = "studentId") String studentId, | |
212 | @WebParam(name = "courseOfferingId") String courseOfferingId, | |
213 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
214 | throws InvalidParameterException, | |
215 | MissingParameterException, | |
216 | OperationFailedException, | |
217 | PermissionDeniedException; | |
218 | ||
219 | /** | |
220 | * Gets a list of CourseRegistrations for a given Student and | |
221 | * Term. | |
222 | * | |
223 | * @param studentId an identifier for a Student | |
224 | * @param termId an identifier for a Term | |
225 | * @param contextInfo information containing the principalId and | |
226 | * locale information about the caller of the service | |
227 | * operation | |
228 | * @return list of CourseRegistrations associated with the given | |
229 | * Student and CourseOffering or an empty list if none | |
230 | * found | |
231 | * @throws InvalidParameterException contextInfo is not valid | |
232 | * @throws MissingParameterException studentId, termId, | |
233 | * or contextInfo is missing or null | |
234 | * @throws OperationFailedException unable to complete request | |
235 | * @throws PermissionDeniedException an authorization failure occurred | |
236 | */ | |
237 | public List<CourseRegistrationInfo> getCourseRegistrationsByStudentAndTerm(@WebParam(name = "studentId") String studentId, | |
238 | @WebParam(name = "termId") String termId, | |
239 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
240 | throws InvalidParameterException, | |
241 | MissingParameterException, | |
242 | OperationFailedException, | |
243 | PermissionDeniedException; | |
244 | ||
245 | /** | |
246 | * Searches for CourseRegistrations that meet the given search | |
247 | * criteria. | |
248 | * | |
249 | * @param criteria the search criteria | |
250 | * @param contextInfo information containing the principalId and | |
251 | * locale information about the caller of the service | |
252 | * operation | |
253 | * @return a list of CourseRegistration identifiers matching the criteria | |
254 | * @throws InvalidParameterException criteria or contextInfo is | |
255 | * not valid | |
256 | * @throws MissingParameterException criteria or or contextInfo is | |
257 | * missing or null | |
258 | * @throws OperationFailedException unable to complete request | |
259 | * @throws PermissionDeniedException an authorization failure occurred | |
260 | */ | |
261 | public List<String> searchForCourseRegistrationIds(@WebParam(name = "criteria") QueryByCriteria criteria, | |
262 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
263 | throws InvalidParameterException, | |
264 | MissingParameterException, | |
265 | OperationFailedException, | |
266 | PermissionDeniedException; | |
267 | ||
268 | /** | |
269 | * Searches for CourseRegistrations that meet the given search | |
270 | * criteria. | |
271 | * | |
272 | * @param criteria the search criteria | |
273 | * @param contextInfo information containing the principalId and | |
274 | * locale information about the caller of the service | |
275 | * operation | |
276 | * @return a list of CourseRegistrations matching the criteria | |
277 | * @throws InvalidParameterException criteria or contextInfo is | |
278 | * not valid | |
279 | * @throws MissingParameterException criteria or or contextInfo is | |
280 | * missing or null | |
281 | * @throws OperationFailedException unable to complete request | |
282 | * @throws PermissionDeniedException an authorization failure occurred | |
283 | */ | |
284 | public List<CourseRegistrationInfo> searchForCourseRegistrations(@WebParam(name = "criteria") QueryByCriteria criteria, | |
285 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
286 | throws InvalidParameterException, | |
287 | MissingParameterException, | |
288 | OperationFailedException, | |
289 | PermissionDeniedException; | |
290 | ||
291 | // ActivityRegistration methods | |
292 | ||
293 | /** | |
294 | * Retrieves a single ActivityRegistration by an | |
295 | * ActivityRegistration Id. | |
296 | * | |
297 | * @param activityRegistrationId the identifier for the | |
298 | * ActivityRegistration to be retrieved | |
299 | * @param contextInfo information containing the principalId and | |
300 | * locale information about the caller of the service | |
301 | * operation | |
302 | * @return the ActivityRegistration requested | |
303 | * @throws DoesNotExistException activityRegistrationId is not found | |
304 | * @throws InvalidParameterException contextInfo is not valid | |
305 | * @throws MissingParameterException activityRegistrationId or | |
306 | * contextInfo is missing or null | |
307 | * @throws OperationFailedException unable to complete request | |
308 | * @throws PermissionDeniedException an authorization failure occurred | |
309 | */ | |
310 | public ActivityRegistrationInfo getActivityRegistration(@WebParam(name = "activityRegistrationId") String activityRegistrationId, | |
311 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
312 | throws DoesNotExistException, | |
313 | InvalidParameterException, | |
314 | MissingParameterException, | |
315 | OperationFailedException, | |
316 | PermissionDeniedException; | |
317 | ||
318 | /** | |
319 | * Retrieve a list of ActivityRegistrations from a list of | |
320 | * ActivityRegistration Ids. The returned list may be in any order | |
321 | * and if duplicate Ids are supplied, a unique set may or may not | |
322 | * ber returned. | |
323 | * | |
324 | * @param activityRegistrationIds a list of ActivityRegistration | |
325 | * identifiers | |
326 | * @param contextInfo information containing the principalId and | |
327 | * locale information about the caller of the service | |
328 | * operation | |
329 | * @return a list of ActivityRegistrations | |
330 | * @throws DoesNotExistException a activityRegistrationId in the | |
331 | * list was not found | |
332 | * @throws InvalidParameterException contextInfo is not valid | |
333 | * @throws MissingParameterException activityRegistrationIds, an Id in | |
334 | * activityRegistrationIds, or contextInfo is missing or null | |
335 | * @throws OperationFailedException unable to complete request | |
336 | * @throws PermissionDeniedException an authorization failure occurred | |
337 | */ | |
338 | public List<ActivityRegistrationInfo> getActivityRegistrationsByIds(@WebParam(name = "activityRegistrationIds") List<String> activityRegistrationIds, | |
339 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
340 | throws DoesNotExistException, | |
341 | InvalidParameterException, | |
342 | MissingParameterException, | |
343 | OperationFailedException, | |
344 | PermissionDeniedException; | |
345 | ||
346 | /** | |
347 | * Retrieve a list of ActivityRegistrationIds by | |
348 | * ActivityRegistration Type. | |
349 | * | |
350 | * @param activityRegistrationTypeKey an identifier for an | |
351 | * ActivityRegistration Type | |
352 | * @param contextInfo information containing the principalId and | |
353 | * locale information about the caller of the service | |
354 | * operation | |
355 | * @return a list of ActivityRegistrations identifiers matching | |
356 | * activityRegistrationTypeKey or an empty list of none | |
357 | * found | |
358 | * @throws InvalidParameterException contextInfo is not valid | |
359 | * @throws MissingParameterException activityRegistrationTypeKey | |
360 | * or contextInfo is missing or null | |
361 | * @throws OperationFailedException unable to complete request | |
362 | * @throws PermissionDeniedException an authorization failure occurred | |
363 | */ | |
364 | public List<String> getActivityRegistrationIdsByType(@WebParam(name = "activityRegistrationTypeKey") String activityRegistrationTypeKey, | |
365 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
366 | throws InvalidParameterException, | |
367 | MissingParameterException, | |
368 | OperationFailedException, | |
369 | PermissionDeniedException; | |
370 | ||
371 | /** | |
372 | * Gets a list of ActivityRegistrations for a CourseRegistration. | |
373 | * | |
374 | * @param courseRegistrationId an identifier for a CourseRegistration | |
375 | * @param contextInfo information containing the principalId and | |
376 | * locale information about the caller of the service | |
377 | * operation | |
378 | * @return list of ActivityRegistrations associated with the given | |
379 | * CourseRegistration or an empty list if none found | |
380 | * @throws InvalidParameterException contextInfo is not valid | |
381 | * @throws MissingParameterException courseRegistrationId or | |
382 | * contextInfo is missing or null | |
383 | * @throws OperationFailedException unable to complete request | |
384 | * @throws PermissionDeniedException an authorization failure occurred | |
385 | */ | |
386 | public List<ActivityRegistrationInfo> getActivityRegistrationsForCourseRegistration(@WebParam(name = "courseRegistrationId") String courseRegistrationId, | |
387 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
388 | throws InvalidParameterException, | |
389 | MissingParameterException, | |
390 | OperationFailedException, | |
391 | PermissionDeniedException; | |
392 | ||
393 | /** | |
394 | * Gets a list of ActivityRegistrations for a given Student. | |
395 | * | |
396 | * @param studentId an identifier for a Student | |
397 | * @param contextInfo information containing the principalId and | |
398 | * locale information about the caller of the service | |
399 | * operation | |
400 | * @return list of ActivityRegistrations associated with the given | |
401 | * Student or an empty list if none found | |
402 | * @throws InvalidParameterException contextInfo is not valid | |
403 | * @throws MissingParameterException studentId or contextInfo is | |
404 | * missing or null | |
405 | * @throws OperationFailedException unable to complete request | |
406 | * @throws PermissionDeniedException an authorization failure occurred | |
407 | */ | |
408 | public List<ActivityRegistrationInfo> getActivityRegistrationsByStudent(@WebParam(name = "studentId") String studentId, | |
409 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
410 | throws InvalidParameterException, | |
411 | MissingParameterException, | |
412 | OperationFailedException, | |
413 | PermissionDeniedException; | |
414 | ||
415 | /** | |
416 | * Gets a list of ActivityRegistrations for a given | |
417 | * ActivityOffering. | |
418 | * | |
419 | * @param courseOfferingId an identifier for a ActivityOffering | |
420 | * @param contextInfo information containing the principalId and | |
421 | * locale information about the caller of the service | |
422 | * operation | |
423 | * @return list of ActivityRegistrations associated with the given | |
424 | * ActivityOffering or an empty list if none found | |
425 | * @throws InvalidParameterException contextInfo is not valid | |
426 | * @throws MissingParameterException courseOfferingId or | |
427 | * contextInfo is missing or null | |
428 | * @throws OperationFailedException unable to complete request | |
429 | * @throws PermissionDeniedException an authorization failure occurred | |
430 | */ | |
431 | public List<ActivityRegistrationInfo> getActivityRegistrationsByActivityOffering(@WebParam(name = "courseOfferingId") String courseOfferingId, | |
432 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
433 | throws InvalidParameterException, | |
434 | MissingParameterException, | |
435 | OperationFailedException, | |
436 | PermissionDeniedException; | |
437 | ||
438 | /** | |
439 | * Gets a list of ActivityRegistrations for a given Student and | |
440 | * ActivityOffering. | |
441 | * | |
442 | * @param studentId an identifier for a Student | |
443 | * @param courseOfferingId an identifier for a ActivityOffering | |
444 | * @param contextInfo information containing the principalId and | |
445 | * locale information about the caller of the service | |
446 | * operation | |
447 | * @return list of ActivityRegistrations associated with the given | |
448 | * Student and ActivityOffering or an empty list if none | |
449 | * found | |
450 | * @throws InvalidParameterException contextInfo is not valid | |
451 | * @throws MissingParameterException studentId, courseOfferingId, | |
452 | * or contextInfo is missing or null | |
453 | * @throws OperationFailedException unable to complete request | |
454 | * @throws PermissionDeniedException an authorization failure occurred | |
455 | */ | |
456 | public List<ActivityRegistrationInfo> getActivityRegistrationsByStudentAndActivityOffering(@WebParam(name = "studentId") String studentId, | |
457 | @WebParam(name = "courseOfferingId") String courseOfferingId, | |
458 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
459 | throws InvalidParameterException, | |
460 | MissingParameterException, | |
461 | OperationFailedException, | |
462 | PermissionDeniedException; | |
463 | ||
464 | /** | |
465 | * Gets a list of ActivityRegistrations for a given Student and | |
466 | * Term. | |
467 | * | |
468 | * @param studentId an identifier for a Student | |
469 | * @param termId an identifier for a Term | |
470 | * @param contextInfo information containing the principalId and | |
471 | * locale information about the caller of the service | |
472 | * operation | |
473 | * @return list of ActivityRegistrations associated with the given | |
474 | * Student and ActivityOffering or an empty list if none | |
475 | * found | |
476 | * @throws InvalidParameterException contextInfo is not valid | |
477 | * @throws MissingParameterException studentId, termId, | |
478 | * or contextInfo is missing or null | |
479 | * @throws OperationFailedException unable to complete request | |
480 | * @throws PermissionDeniedException an authorization failure occurred | |
481 | */ | |
482 | public List<ActivityRegistrationInfo> getActivityRegistrationsByStudentAndTerm(@WebParam(name = "studentId") String studentId, | |
483 | @WebParam(name = "termId") String termId, | |
484 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
485 | throws InvalidParameterException, | |
486 | MissingParameterException, | |
487 | OperationFailedException, | |
488 | PermissionDeniedException; | |
489 | ||
490 | /** | |
491 | * Searches for ActivityRegistrations that meet the given search | |
492 | * criteria. | |
493 | * | |
494 | * @param criteria the search criteria | |
495 | * @param contextInfo information containing the principalId and | |
496 | * locale information about the caller of the service | |
497 | * operation | |
498 | * @return a list of ActivityRegistration identifiers matching the | |
499 | * criteria | |
500 | * @throws InvalidParameterException criteria or contextInfo is | |
501 | * not valid | |
502 | * @throws MissingParameterException criteria or or contextInfo is | |
503 | * missing or null | |
504 | * @throws OperationFailedException unable to complete request | |
505 | * @throws PermissionDeniedException an authorization failure occurred | |
506 | */ | |
507 | public List<String> searchForActivityRegistrationIds(@WebParam(name = "criteria") QueryByCriteria criteria, | |
508 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
509 | throws InvalidParameterException, | |
510 | MissingParameterException, | |
511 | OperationFailedException, | |
512 | PermissionDeniedException; | |
513 | ||
514 | /** | |
515 | * Searches for ActivityRegistrations that meet the given search | |
516 | * criteria. | |
517 | * | |
518 | * @param criteria the search criteria | |
519 | * @param contextInfo information containing the principalId and | |
520 | * locale information about the caller of the service | |
521 | * operation | |
522 | * @return a list of ActivityRegistrations matching the criteria | |
523 | * @throws InvalidParameterException criteria or contextInfo is | |
524 | * not valid | |
525 | * @throws MissingParameterException criteria or or contextInfo is | |
526 | * missing or null | |
527 | * @throws OperationFailedException unable to complete request | |
528 | * @throws PermissionDeniedException an authorization failure occurred | |
529 | */ | |
530 | public List<ActivityRegistrationInfo> searchForActivityRegistrations(@WebParam(name = "criteria") QueryByCriteria criteria, | |
531 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
532 | throws InvalidParameterException, | |
533 | MissingParameterException, | |
534 | OperationFailedException, | |
535 | PermissionDeniedException; | |
536 | ||
537 | // RegistrationRequest methods | |
538 | ||
539 | /** | |
540 | * Retrieves a single RegistrationRequest by an | |
541 | * RegistrationRequest Id. | |
542 | * | |
543 | * @param registrationRequestId the identifier for the | |
544 | * RegistrationRequest to be retrieved | |
545 | * @param contextInfo information containing the principalId and | |
546 | * locale information about the caller of the service | |
547 | * operation | |
548 | * @return the RegistrationRequest requested | |
549 | * @throws DoesNotExistException registrationRequestId is not found | |
550 | * @throws InvalidParameterException contextInfo is not valid | |
551 | * @throws MissingParameterException registrationRequestId or contextInfo is | |
552 | * missing or null | |
553 | * @throws OperationFailedException unable to complete request | |
554 | * @throws PermissionDeniedException an authorization failure occurred | |
555 | */ | |
556 | public RegistrationRequestInfo getRegistrationRequest(@WebParam(name = "registrationRequestId") String registrationRequestId, | |
557 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
558 | throws DoesNotExistException, | |
559 | InvalidParameterException, | |
560 | MissingParameterException, | |
561 | OperationFailedException, | |
562 | PermissionDeniedException; | |
563 | ||
564 | /** | |
565 | * Retrieve a list of RegistrationRequests from a list of | |
566 | * RegistrationRequest Ids. The returned list may be in any order | |
567 | * and if duplicate Ids are supplied, a unique set may or may not | |
568 | * ber returned. | |
569 | * | |
570 | * @param registrationRequestIds a list of RegistrationRequest | |
571 | * identifiers | |
572 | * @param contextInfo information containing the principalId and | |
573 | * locale information about the caller of the service | |
574 | * operation | |
575 | * @return a list of RegistrationRequests | |
576 | * @throws DoesNotExistException a registrationRequestId in the | |
577 | * list was not found | |
578 | * @throws InvalidParameterException contextInfo is not valid | |
579 | * @throws MissingParameterException registrationRequestIds, an Id in | |
580 | * registrationRequestIds, or contextInfo is missing or null | |
581 | * @throws OperationFailedException unable to complete request | |
582 | * @throws PermissionDeniedException an authorization failure occurred | |
583 | */ | |
584 | public List<RegistrationRequestInfo> getRegistrationRequestsByIds(@WebParam(name = "registrationRequestIds") List<String> registrationRequestIds, | |
585 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
586 | throws DoesNotExistException, | |
587 | InvalidParameterException, | |
588 | MissingParameterException, | |
589 | OperationFailedException, | |
590 | PermissionDeniedException; | |
591 | ||
592 | /** | |
593 | * Retrieve a list of RegistrationRequestIds by | |
594 | * RegistrationRequest Type. | |
595 | * | |
596 | * @param registrationRequestTypeKey an identifier for an | |
597 | * RegistrationRequest Type | |
598 | * @param contextInfo information containing the principalId and | |
599 | * locale information about the caller of the service | |
600 | * operation | |
601 | * @return a list of RegistrationRequests identifiers matching | |
602 | * registrationRequestTypeKey or an empty list of none | |
603 | * found | |
604 | * @throws InvalidParameterException contextInfo is not valid | |
605 | * @throws MissingParameterException registrationRequestTypeKey or | |
606 | * contextInfo is missing or null | |
607 | * @throws OperationFailedException unable to complete request | |
608 | * @throws PermissionDeniedException an authorization failure occurred | |
609 | */ | |
610 | public List<String> getRegistrationRequestIdsByType(@WebParam(name = "registrationRequestTypeKey") String registrationRequestTypeKey, | |
611 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
612 | throws InvalidParameterException, | |
613 | MissingParameterException, | |
614 | OperationFailedException, | |
615 | PermissionDeniedException; | |
616 | ||
617 | /** | |
618 | * Gets a list of RegistrationRequests by requesting person Id. | |
619 | * | |
620 | * @param personId an identifier for a Person | |
621 | * @param contextInfo information containing the principalId and | |
622 | * locale information about the caller of the service | |
623 | * operation | |
624 | * @return list of RegistrationRequests associated with the given Lui or | |
625 | * an empty list if none found | |
626 | * @throws InvalidParameterException contextInfo is not valid | |
627 | * @throws MissingParameterException personId | |
628 | * or contextInfo is missing or null | |
629 | * @throws OperationFailedException unable to complete request | |
630 | * @throws PermissionDeniedException an authorization failure occurred | |
631 | */ | |
632 | public List<RegistrationRequestInfo> getRegistrationRequestsByRequestor(@WebParam(name = "pesonId") String personId, | |
633 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
634 | throws InvalidParameterException, | |
635 | MissingParameterException, | |
636 | OperationFailedException, | |
637 | PermissionDeniedException; | |
638 | ||
639 | /** | |
640 | * Gets a list of unsubmitted RegistrationRequests by requesting | |
641 | * person Id and Term. | |
642 | * | |
643 | * @param personId an identifier for a Person | |
644 | * @param termId an identifier for a Term | |
645 | * @param contextInfo information containing the principalId and | |
646 | * locale information about the caller of the service | |
647 | * operation | |
648 | * @return list of RegistrationRequests associated with the given Lui or | |
649 | * an empty list if none found | |
650 | * @throws InvalidParameterException contextInfo is not valid | |
651 | * @throws MissingParameterException personId, termId, | |
652 | * or contextInfo is missing or null | |
653 | * @throws OperationFailedException unable to complete request | |
654 | * @throws PermissionDeniedException an authorization failure occurred | |
655 | */ | |
656 | ||
657 | public List<RegistrationRequestInfo> getUnsubmittedRegistrationRequestsByRequestorAndTerm(@WebParam(name = "requestorId") String requestorId, | |
658 | @WebParam(name = "termId") String termId, | |
659 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
660 | throws InvalidParameterException, | |
661 | MissingParameterException, | |
662 | OperationFailedException, | |
663 | PermissionDeniedException; | |
664 | ||
665 | /** | |
666 | * Searches for RegistrationRequests that meet the given search | |
667 | * criteria. | |
668 | * | |
669 | * @param criteria the search criteria | |
670 | * @param contextInfo information containing the principalId and | |
671 | * locale information about the caller of the service | |
672 | * operation | |
673 | * @return a list of RegistrationRequest identifiers matching the | |
674 | * criteria | |
675 | * @throws InvalidParameterException criteria or contextInfo is | |
676 | * not valid | |
677 | * @throws MissingParameterException criteria or or contextInfo is | |
678 | * missing or null | |
679 | * @throws OperationFailedException unable to complete request | |
680 | * @throws PermissionDeniedException an authorization failure occurred | |
681 | */ | |
682 | public List<String> searchForRegistrationRequestIds(@WebParam(name = "criteria") QueryByCriteria criteria, | |
683 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
684 | throws InvalidParameterException, | |
685 | MissingParameterException, | |
686 | OperationFailedException, | |
687 | PermissionDeniedException; | |
688 | ||
689 | /** | |
690 | * Searches for RegistrationRequests that meet the given search | |
691 | * criteria. | |
692 | * | |
693 | * @param criteria the search criteria | |
694 | * @param contextInfo information containing the principalId and | |
695 | * locale information about the caller of the service | |
696 | * operation | |
697 | * @return a list of RegistrationRequests matching the criteria | |
698 | * @throws InvalidParameterException criteria or contextInfo is | |
699 | * not valid | |
700 | * @throws MissingParameterException criteria or or contextInfo is | |
701 | * missing or null | |
702 | * @throws OperationFailedException unable to complete request | |
703 | * @throws PermissionDeniedException an authorization failure occurred | |
704 | */ | |
705 | public List<RegistrationRequestInfo> searchForRegistrationRequests(@WebParam(name = "criteria") QueryByCriteria criteria, | |
706 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
707 | throws InvalidParameterException, | |
708 | MissingParameterException, | |
709 | OperationFailedException, | |
710 | PermissionDeniedException; | |
711 | ||
712 | /** | |
713 | * Validates an RegistrationRequest. Depending on the value of | |
714 | * validationType, this validation could be limited to tests on | |
715 | * just the current RegistrationRequest and its directly contained | |
716 | * sub-objects or expanded to perform all tests related to this | |
717 | * RegistrationRequest. If an identifier is present for the | |
718 | * RegistrationRequest (and/or one of its contained sub-objects) | |
719 | * and a record is found for that identifier, the validation | |
720 | * checks if the RegistrationRequest can be updated to the new | |
721 | * values. If an identifier is not present or a record does not | |
722 | * exist, the validation checks if the RegistrationRequest with | |
723 | * the given data can be created. | |
724 | * | |
725 | * @param validationTypeKey the identifier for the validation Type | |
726 | * @param registrationRequestTypeKey the identifier for the | |
727 | * RegistrationRequest Type to be validated | |
728 | * @param registrationRequestInfo the RegistrationRequest to be validated | |
729 | * @param contextInfo information containing the principalId and | |
730 | * locale information about the caller of the service | |
731 | * operation | |
732 | * @return a list of validation results or an empty list if | |
733 | * validation succeeded | |
734 | * @throws DoesNotExistException validationTypeKey or | |
735 | * registrationRequestTypeKey is not found | |
736 | * @throws InvalidParameterException registrationRequestInfo or | |
737 | * contextInfo is not valid | |
738 | * @throws MissingParameterException validationTypeKey, | |
739 | * registrationRequestTypeKey, registrationRequestInfo, or | |
740 | * contextInfo is missing or null | |
741 | * @throws OperationFailedException unable to complete request | |
742 | * @throws PermissionDeniedException an authorization failure occurred | |
743 | */ | |
744 | public List<ValidationResultInfo> validateRegistrationRequest(@WebParam(name = "validationTypeKey") String validationTypeKey, | |
745 | @WebParam(name = "registrationRequestTypeKey") String registrationRequestTypeKey, | |
746 | @WebParam(name = "registrationRequestInfo") RegistrationRequestInfo registrationRequestInfo, | |
747 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
748 | throws DoesNotExistException, | |
749 | InvalidParameterException, | |
750 | MissingParameterException, | |
751 | OperationFailedException, | |
752 | PermissionDeniedException; | |
753 | ||
754 | /** | |
755 | * Creates a new RegistrationRequest. The RegistrationRequest Id, | |
756 | * Type, and Meta information may not be set in the supplied data | |
757 | * object. | |
758 | * | |
759 | * @param registrationRequestTypeKey the identifier for the Type | |
760 | * of RegistrationRequest to be created | |
761 | * @param registrationRequestInfo the data with which to create | |
762 | * the RegistrationRequest | |
763 | * @param contextInfo information containing the principalId and | |
764 | * locale information about the caller of the service | |
765 | * operation | |
766 | * @return the new RegistrationRequest | |
767 | * @throws DataValidationErrorException supplied data is invalid | |
768 | * @throws DoesNotExistException registrationRequestTypeKey does | |
769 | * not exist or is not supported | |
770 | * @throws InvalidParameterException registrationRequestInfo or | |
771 | * contextInfo is not valid | |
772 | * @throws MissingParameterException registrationRequestTypeKey, | |
773 | * registrationRequestInfo, or contextInfo is missing or null | |
774 | * @throws OperationFailedException unable to complete request | |
775 | * @throws PermissionDeniedException an authorization failure occurred | |
776 | * @throws ReadOnlyException an attempt at supplying information | |
777 | * designated as read only | |
778 | */ | |
779 | public RegistrationRequestInfo createRegistrationRequest(@WebParam(name = "registrationRequestTypeKey") String registrationRequestTypeKey, | |
780 | @WebParam(name = "registrationRequestInfo") RegistrationRequestInfo registrationRequestInfo, | |
781 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
782 | throws DataValidationErrorException, | |
783 | DoesNotExistException, | |
784 | InvalidParameterException, | |
785 | MissingParameterException, | |
786 | OperationFailedException, | |
787 | PermissionDeniedException, | |
788 | ReadOnlyException; | |
789 | ||
790 | /** | |
791 | * A utiligy to create a new RegistrationRequest from an existing | |
792 | * RegistrationRequest. Once a RegistrationRequest is submitted, | |
793 | * it cannot be reused. If the registration fails, this method can | |
794 | * be used to copy the contents of the failed request into a new | |
795 | * request. | |
796 | * | |
797 | * @param registrationRequestId a RegistrationRequest from which to create | |
798 | * the new one | |
799 | * @param contextInfo information containing the principalId and | |
800 | * locale information about the caller of the service | |
801 | * operation | |
802 | * @return the new RegistrationRequest | |
803 | * @throws DoesNotExistException registrationRequestId does | |
804 | * not exist | |
805 | * @throws InvalidParameterException contextInfo is not valid | |
806 | * @throws MissingParameterException registrationRequestId or | |
807 | * contextInfo is missing or null | |
808 | * @throws OperationFailedException unable to complete request | |
809 | * @throws PermissionDeniedException an authorization failure occurred | |
810 | */ | |
811 | public RegistrationRequestInfo createRegistrationRequestFromExisting(@WebParam(name = "registrationRequestId") String registrationRequestId, | |
812 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
813 | throws DoesNotExistException, | |
814 | InvalidParameterException, | |
815 | MissingParameterException, | |
816 | OperationFailedException, | |
817 | PermissionDeniedException; | |
818 | ||
819 | /** | |
820 | * Updates an existing RegistrationRequest. The | |
821 | * RegistrationRequest Id, Type, and Meta information may not be | |
822 | * changed. | |
823 | * | |
824 | * @param registrationRequestId the identifier for the | |
825 | * RegistrationRequest to be updated | |
826 | * @param registrationRequestInfo the new data for the RegistrationRequest | |
827 | * @param contextInfo information containing the principalId and | |
828 | * locale information about the caller of the service | |
829 | * operation | |
830 | * @return the updated RegistrationRequest | |
831 | * @throws DataValidationErrorException supplied data is invalid | |
832 | * @throws DoesNotExistException registrationRequestId is not found | |
833 | * @throws InvalidParameterException registrationRequestInfo or | |
834 | * contextInfo is not valid | |
835 | * @throws MissingParameterException registrationRequestId, | |
836 | * registrationRequestInfo, or contextInfo is missing or | |
837 | * null | |
838 | * @throws OperationFailedException unable to complete request | |
839 | * @throws PermissionDeniedException an authorization failure occurred | |
840 | * @throws ReadOnlyException an attempt at supplying information | |
841 | * designated as read only | |
842 | * @throws VersionMismatchException an optimistic locking failure | |
843 | * or the action was attempted on an out of date version | |
844 | */ | |
845 | public RegistrationRequestInfo updateRegistrationRequest(@WebParam(name = "registrationRequestId") String registrationRequestId, | |
846 | @WebParam(name = "registrationRequestInfo") RegistrationRequestInfo registrationRequestInfo, | |
847 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
848 | throws DataValidationErrorException, | |
849 | DoesNotExistException, | |
850 | InvalidParameterException, | |
851 | MissingParameterException, | |
852 | OperationFailedException, | |
853 | PermissionDeniedException, | |
854 | ReadOnlyException, | |
855 | VersionMismatchException; | |
856 | ||
857 | /** | |
858 | * Deletes an existing RegistrationRequest. | |
859 | * | |
860 | * @param registrationRequestId the identifier for the | |
861 | * RegistrationRequest to be deleted | |
862 | * @param contextInfo information containing the principalId and | |
863 | * locale information about the caller of the service | |
864 | * operation | |
865 | * @return the status of the delete operation. This must always be | |
866 | * true.q | |
867 | * @throws DoesNotExistException registrationRequestId is not found | |
868 | * @throws InvalidParameterException contextInfo is not valid | |
869 | * @throws MissingParameterException registrationRequestId or | |
870 | * contextInfo is missing or null | |
871 | * @throws OperationFailedException unable to complete request | |
872 | * @throws PermissionDeniedException authorization failure | |
873 | */ | |
874 | public StatusInfo deleteRegistrationRequest(@WebParam(name = "registrationRequestId") String registrationRequestId, | |
875 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
876 | throws DoesNotExistException, | |
877 | InvalidParameterException, | |
878 | MissingParameterException, | |
879 | OperationFailedException, | |
880 | PermissionDeniedException; | |
881 | ||
882 | /** | |
883 | * Verifies a persisted RegistrationRequest for | |
884 | * submission. validateRegistrationRequest() validates the data | |
885 | * for persistence of the request itself. This method is intended | |
886 | * as a final validation prior to submission and may perform | |
887 | * additional checks, such as eligibility, course pre-requisites, | |
888 | * and calculating credit load limits. | |
889 | * | |
890 | * @param registrationRequestId an identifier for a | |
891 | * RegistrationRequest | |
892 | * @param contextInfo information containing the principalId and | |
893 | * locale information about the caller of the service | |
894 | * operation | |
895 | * @return a list of ValidationResults | |
896 | * @throws DoesNotExistException registrationRequestId | |
897 | * is not found | |
898 | * @throws InvalidParameterException contextInfo is not valid | |
899 | * @throws MissingParameterException, registrationRequestId or | |
900 | * contextInfo is missing or null | |
901 | * @throws OperationFailedException unable to complete request | |
902 | * @throws PermissionDeniedException an authorization failure occurred | |
903 | */ | |
904 | public List<ValidationResultInfo> verifyRegistrationRequestForSubmission(@WebParam(name = "registrationRequestId") String registrationRequestId, | |
905 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
906 | throws DoesNotExistException, | |
907 | InvalidParameterException, | |
908 | MissingParameterException, | |
909 | OperationFailedException, | |
910 | PermissionDeniedException; | |
911 | ||
912 | /** | |
913 | * Submits a RegsitrationRequest. This method is transactional and | |
914 | * for multiple items, each RegistrationRequestItem must succeed | |
915 | * or the entireregistration transaction fails. | |
916 | * | |
917 | * @param registrationRequestId an identifier for a RegistrationRequest | |
918 | * @param contextInfo information containing the principalId and | |
919 | * locale information about the caller of the service | |
920 | * operation | |
921 | * @return a RegistrationResponse | |
922 | * @throws AlreadyExistsException When the reg request is already submitted | |
923 | * @throws DoesNotExistException registrationRequestId | |
924 | * is not found | |
925 | * @throws InvalidParameterException contextInfo is not valid | |
926 | * @throws MissingParameterException, registrationRequestId or | |
927 | * contextInfo is missing or null | |
928 | * @throws OperationFailedException unable to complete request | |
929 | * @throws PermissionDeniedException an authorization failure occurred | |
930 | */ | |
931 | public RegistrationResponseInfo submitRegistrationRequest(@WebParam(name = "registrationRequestId") String registrationRequestId, | |
932 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
933 | throws AlreadyExistsException, | |
934 | DoesNotExistException, | |
935 | InvalidParameterException, | |
936 | MissingParameterException, | |
937 | OperationFailedException, | |
938 | PermissionDeniedException; | |
939 | ||
940 | /** | |
941 | * Gets the RegistrationRequestItems result in or impacting the | |
942 | * given CourseRegistration. | |
943 | * | |
944 | * @param courseRegistrationId an identifier for a CourseRegistration | |
945 | * @param contextInfo information containing the principalId and | |
946 | * locale information about the caller of the service | |
947 | * operation | |
948 | * @return list of RegistrationRequests associated with the given | |
949 | * CourseRegistration or an empty list if none found | |
950 | * @throws InvalidParameterException contextInfo is not valid | |
951 | * @throws MissingParameterException personId | |
952 | * or contextInfo is missing or null | |
953 | * @throws OperationFailedException unable to complete request | |
954 | * @throws PermissionDeniedException an authorization failure occurred | |
955 | */ | |
956 | public List<RegistrationRequestItemInfo> getRegistrationRequestItemsForCourseRegistration(@WebParam(name = "courseRegistrationId") String courseRegistrationId, | |
957 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
958 | throws InvalidParameterException, | |
959 | MissingParameterException, | |
960 | OperationFailedException, | |
961 | PermissionDeniedException; | |
962 | ||
963 | /** | |
964 | * Gets list of RegistrationRequestItems resulting in or impacting | |
965 | * a Student's registration in a CourseOffering. | |
966 | * | |
967 | * @param courseOfferingId an identifier for a CourseOffering | |
968 | * @param studentId an identifier for a Student | |
969 | * @param contextInfo information containing the principalId and | |
970 | * locale information about the caller of the service | |
971 | * operation | |
972 | * @return list of RegistrationRequests associated with the given | |
973 | * CourseOffering or an empty list if none found | |
974 | * @throws InvalidParameterException contextInfo is not valid | |
975 | * @throws MissingParameterException courseOfferingId, personId, | |
976 | * or contextInfo is missing or null | |
977 | * @throws OperationFailedException unable to complete request | |
978 | * @throws PermissionDeniedException an authorization failure occurred | |
979 | */ | |
980 | public List<RegistrationRequestItemInfo> getRegistrationRequestItemsByCourseOfferingAndStudent(@WebParam(name = "courseOfferingId") String courseOfferingId, | |
981 | @WebParam(name = "studentId") String studentId, | |
982 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
983 | throws InvalidParameterException, | |
984 | MissingParameterException, | |
985 | OperationFailedException, | |
986 | PermissionDeniedException; | |
987 | ||
988 | /** | |
989 | * Checks if a student is eligible to enter the registration | |
990 | * process. | |
991 | * | |
992 | * @param studentId Identifier of the student | |
993 | * @param contextInfo information containing the principalId and | |
994 | * locale information about the caller of the service | |
995 | * operation | |
996 | * @return a list of errors, warnings, or informational messages | |
997 | * @throws DoesNotExistException studentId is not found | |
998 | * @throws InvalidParameterException contextInfo is not valid | |
999 | * @throws MissingParameterException studentId or contextInfo is | |
1000 | * missing or null | |
1001 | * @throws OperationFailedException unable to complete request | |
1002 | * @throws PermissionDeniedException an authorization failure occurred | |
1003 | */ | |
1004 | public List<ValidationResultInfo> checkStudentEligibility(@WebParam(name = "studentId") String studentId, | |
1005 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
1006 | throws DoesNotExistException, | |
1007 | InvalidParameterException, | |
1008 | MissingParameterException, | |
1009 | OperationFailedException, | |
1010 | PermissionDeniedException; | |
1011 | ||
1012 | /** | |
1013 | * Checks the eligibility of a student to register in a particular | |
1014 | * term. | |
1015 | * | |
1016 | * @param studentId an identifier of a Student | |
1017 | * @param termId an identifier of a Term | |
1018 | * @param contextInfo information containing the principalId and | |
1019 | * locale information about the caller of the service | |
1020 | * operation | |
1021 | * @return a list of errors, warnings or informational messages | |
1022 | * @throws DoesNotExistException studentId or termId is not found | |
1023 | * @throws InvalidParameterException contextInfo is not valid | |
1024 | * @throws MissingParameterException studentId, termId, or | |
1025 | * contextInfo is missing or null | |
1026 | * @throws OperationFailedException unable to complete request | |
1027 | * @throws PermissionDeniedException an authorization failure occurred | |
1028 | */ | |
1029 | public List<ValidationResultInfo> checkStudentEligibilityForTerm(@WebParam(name = "studentId") String studentId, | |
1030 | @WebParam(name = "termId") String termId, | |
1031 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
1032 | throws DoesNotExistException, | |
1033 | InvalidParameterException, | |
1034 | MissingParameterException, | |
1035 | OperationFailedException, | |
1036 | PermissionDeniedException; | |
1037 | ||
1038 | /** | |
1039 | * Checks if the student is eligible to register for a particular course | |
1040 | * offering. | |
1041 | * | |
1042 | * @param studentId an identifier of a Student | |
1043 | * @param courseOfferingId an identifier of a CourseOffering | |
1044 | * @param contextInfo information containing the principalId and | |
1045 | * locale information about the caller of the service | |
1046 | * operation | |
1047 | * @return a list of errors, warnings or informational messages | |
1048 | * @throws DoesNotExistException studentId or courseOfferingId is | |
1049 | * not found | |
1050 | * @throws InvalidParameterException contextInfo is not valid | |
1051 | * @throws MissingParameterException studentId, courseOfferingId, | |
1052 | * or contextInfo is missing or null | |
1053 | * @throws OperationFailedException unable to complete request | |
1054 | * @throws PermissionDeniedException an authorization failure occurred | |
1055 | */ | |
1056 | public List<ValidationResultInfo> checkStudentEligibiltyForCourseOffering(@WebParam(name = "studentId") String studentId, | |
1057 | @WebParam(name = "courseOfferingId") String courseOfferingId, | |
1058 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
1059 | throws DoesNotExistException, | |
1060 | InvalidParameterException, | |
1061 | MissingParameterException, | |
1062 | OperationFailedException, | |
1063 | PermissionDeniedException; | |
1064 | ||
1065 | /** | |
1066 | * Checks if the student is eligible to register for a particular | |
1067 | * registration group. | |
1068 | * | |
1069 | * @param studentId an identifier of a Student | |
1070 | * @param registrationGroupId an identifier of a RegistrationGroup | |
1071 | * @param contextInfo information containing the principalId and | |
1072 | * locale information about the caller of the service | |
1073 | * operation | |
1074 | * @return a list of errors, warnings or informational messages | |
1075 | * @throws DoesNotExistException studentId or registrationGroupId | |
1076 | * is not found | |
1077 | * @throws InvalidParameterException contextInfo is not valid | |
1078 | * @throws MissingParameterException studentId, | |
1079 | * registrationGroupId, or contextInfo is missing or null | |
1080 | * @throws OperationFailedException unable to complete request | |
1081 | * @throws PermissionDeniedException an authorization failure occurred | |
1082 | */ | |
1083 | public List<ValidationResultInfo> checkStudentEligibiltyForRegistrationGroup(@WebParam(name = "studentId") String studentId, | |
1084 | @WebParam(name = "registrationGroupId") String registrationGroupId, | |
1085 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
1086 | throws DoesNotExistException, | |
1087 | InvalidParameterException, | |
1088 | MissingParameterException, | |
1089 | OperationFailedException, | |
1090 | PermissionDeniedException; | |
1091 | ||
1092 | /** | |
1093 | * Gets the Registration Groups for a CourseOffering for which the | |
1094 | * given student is eligible to register. | |
1095 | * | |
1096 | * @param studentId an identifier of a Student | |
1097 | * @param courseOfferingId an identifier of a CourseOffering | |
1098 | * @param contextInfo information containing the principalId and | |
1099 | * locale information about the caller of the service | |
1100 | * operation | |
1101 | * @return a list of RegistrationGroups | |
1102 | * @throws DoesNotExistException studentId or courseOfferingId is | |
1103 | * not found | |
1104 | * @throws InvalidParameterException contextInfo is not valid | |
1105 | * @throws MissingParameterException studentId, courseOfferingId, | |
1106 | * or contextInfo is missing or null | |
1107 | * @throws OperationFailedException unable to complete request | |
1108 | * @throws PermissionDeniedException an authorization failure occurred | |
1109 | */ | |
1110 | public List<RegistrationGroupInfo> getEligibleRegistrationGroupsForStudentInCourseOffering(@WebParam(name = "studentId") String studentId, | |
1111 | @WebParam(name = "courseOfferingId") String courseOfferingId, | |
1112 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
1113 | throws DoesNotExistException, | |
1114 | InvalidParameterException, | |
1115 | MissingParameterException, | |
1116 | OperationFailedException, | |
1117 | PermissionDeniedException; | |
1118 | ||
1119 | /** | |
1120 | * Calculate the credit load for each student in a given | |
1121 | * RegistrationRequest. | |
1122 | * | |
1123 | * @param registrationRequestId an identifier of a RegistrationRequest | |
1124 | * @param contextInfo information containing the principalId and | |
1125 | * locale information about the caller of the service | |
1126 | * operation | |
1127 | * @return the credit load | |
1128 | * @throws DoesNotExistException registrationRequestId is not | |
1129 | * found | |
1130 | * @throws InvalidParameterException contextInfo is not valid | |
1131 | * @throws MissingParameterException registrationRequestId, or | |
1132 | * contextInfo is missing or null | |
1133 | * @throws OperationFailedException unable to complete request | |
1134 | * @throws PermissionDeniedException an authorization failure occurred | |
1135 | */ | |
1136 | public List<CreditLoadInfo> calculateCreditLoadForRegistrationRequest(@WebParam(name = "registrationRequestId") String registrationRequestId, | |
1137 | @WebParam(name = "contextInfo") ContextInfo contextInfo) | |
1138 | throws DoesNotExistException, | |
1139 | InvalidParameterException, | |
1140 | MissingParameterException, | |
1141 | OperationFailedException, | |
1142 | PermissionDeniedException; | |
1143 | ||
1144 | /** | |
1145 | * Retrieves the available seat count for a particular course offering. It sums | |
1146 | * up the available seats for individual registration groups under the same | |
1147 | * course offering. | |
1148 | * | |
1149 | * @param courseOfferingId | |
1150 | * @param context Information Containing the principalId and locale information about the caller of the service operation. | |
1151 | * @return The available seat count for the specified CourseOffering. | |
1152 | * @throws InvalidParameterException Invalid courseOfferingId in the input | |
1153 | * @throws MissingParameterException Missing courseOfferingId in the input | |
1154 | * @throws OperationFailedException Unable to complete request | |
1155 | * @throws PermissionDeniedException Not authorized to do this operation | |
1156 | */ | |
1157 | // public Integer getAvailableSeatsForCourseOffering(@WebParam(name = "courseOfferingId") String courseOfferingId, @WebParam(name = "contextInfo") ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException; | |
1158 | ||
1159 | ||
1160 | ||
1161 | /** | |
1162 | * Get available seat count for the registration group. | |
1163 | * | |
1164 | * @param regGroupId Identifier of the registration group | |
1165 | * @param context Information Containing the principalId and locale information about the caller of the service operation. | |
1166 | * @return The available seat count for the specified Registration Group | |
1167 | * @throws InvalidParameterException Invalid regGroupId in the input | |
1168 | * @throws MissingParameterException Missing regGroupId in the input | |
1169 | * @throws OperationFailedException Unable to complete request | |
1170 | * @throws PermissionDeniedException Not authorized to do this operation | |
1171 | */ | |
1172 | // public Integer getAvailableSeatsForRegistrationGroup(@WebParam(name = "regGroupId") String regGroupId, @WebParam(name = "contextInfo") ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException; | |
1173 | ||
1174 | /** | |
1175 | * Gets the number of seats available for a particular student in a | |
1176 | * registration group. | |
1177 | * <p> | |
1178 | * Implementation notes : Seats available for a student taking seat pool (if | |
1179 | * any) into consideration. | |
1180 | * | |
1181 | * @param studentId Identifier of the student | |
1182 | * @param regGroupId Identifier of the registration group | |
1183 | * @param context Information Containing the principalId and locale information about the caller of the service operation. | |
1184 | * @return The available seat count for the specified student in a specified RegistrationGroup. | |
1185 | * @throws InvalidParameterException Invalid studentId or regGroupId in the | |
1186 | * input | |
1187 | * @throws MissingParameterException Missing studentId or regGroupId in the | |
1188 | * input | |
1189 | * @throws OperationFailedException Unable to complete request | |
1190 | * @throws PermissionDeniedException Not authorized to do this operation | |
1191 | */ | |
1192 | // public Integer getAvailableSeatsForStudentInRegistrationGroup(@WebParam(name = "studentId") String studentId, @WebParam(name = "regGroupId") String regGroupId, @WebParam(name = "contextInfo") ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException; | |
1193 | ||
1194 | /** | |
1195 | * Returns the available seat count in a particular seat pool. This is an admin | |
1196 | * support function to check the seat pool usage. | |
1197 | * | |
1198 | * @param seatPoolId Identifier of the seatPool | |
1199 | * @param context Information Containing the principalId and locale information about the caller of the service operation. | |
1200 | * @return The available seat count for the specified seat pool. | |
1201 | * @throws InvalidParameterException Invalid seatPool in the input | |
1202 | * @throws MissingParameterException Missing parameter seatPoolId in the input | |
1203 | * @throws OperationFailedException Unable to complete request | |
1204 | * @throws PermissionDeniedException Not authorized to do this operation | |
1205 | */ | |
1206 | // public Integer getAvailableSeatsInSeatPool(@WebParam(name = "seatPoolId") String seatPoolId, @WebParam(name = "contextInfo") ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException; | |
1207 | } |