1
2
3 package org.kuali.student.enrollment.coursewaitlist.service;
4
5 import java.util.List;
6
7 import javax.jws.WebParam;
8 import javax.jws.WebService;
9 import javax.jws.soap.SOAPBinding;
10
11 import org.kuali.rice.core.api.criteria.QueryByCriteria;
12 import org.kuali.student.enrollment.courseregistration.dto.RegistrationResponseInfo;
13 import org.kuali.student.enrollment.coursewaitlist.dto.CourseWaitlistEntryInfo;
14 import org.kuali.student.r2.common.dto.ContextInfo;
15 import org.kuali.student.r2.common.dto.StatusInfo;
16 import org.kuali.student.r2.common.exceptions.AlreadyExistsException;
17 import org.kuali.student.r2.common.exceptions.DataValidationErrorException;
18 import org.kuali.student.r2.common.exceptions.DoesNotExistException;
19 import org.kuali.student.r2.common.exceptions.InvalidParameterException;
20 import org.kuali.student.r2.common.exceptions.MissingParameterException;
21 import org.kuali.student.r2.common.exceptions.OperationFailedException;
22 import org.kuali.student.r2.common.exceptions.PermissionDeniedException;
23 import org.kuali.student.r2.common.util.constants.CourseWaitlistServiceConstants;
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 @WebService(name = "CourseWaitlistService", targetNamespace = CourseWaitlistServiceConstants.NAMESPACE)
39 @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
40 public interface CourseWaitlistService {
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 public Integer getAvailableSeatsForCourseOffering(@WebParam(name = "courseOfferingId") String courseOfferingId, @WebParam(name = "context") ContextInfo context) throws InvalidParameterException,
56 MissingParameterException, OperationFailedException, PermissionDeniedException;
57
58
59
60
61
62
63
64
65
66
67
68
69 public Integer getAvailableSeatsForRegGroup(@WebParam(name = "regGroupId") String regGroupId, @WebParam(name = "context") ContextInfo context) throws InvalidParameterException,
70 MissingParameterException, OperationFailedException, PermissionDeniedException;
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90 public Integer getAvailableSeatsForStudentInRegGroup(@WebParam(name = "studentId") String studentId, @WebParam(name = "regGroupId") String regGroupId,
91 @WebParam(name = "context") ContextInfo context) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107 public Integer getAvailableSeatsInSeatpool(@WebParam(name = "seatpoolId") String seatpoolId, @WebParam(name = "context") ContextInfo context) throws InvalidParameterException,
108 MissingParameterException, OperationFailedException, PermissionDeniedException;
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123 public CourseWaitlistEntryInfo getCourseWaitlistEntry(@WebParam(name = "courseWaitlistEntryId") String courseWaitlistEntryId, @WebParam(name = "context") ContextInfo context)
124 throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145 public StatusInfo updateCourseWaitlistEntry(@WebParam(name = "courseWaitlistEntryId") String courseWaitlistEntryId,
146 @WebParam(name = "courseWaitlistEntryInfo") CourseWaitlistEntryInfo courseWaitlistEntryInfo, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException,
147 DataValidationErrorException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166 public StatusInfo reorderCourseWaitlistEntries(@WebParam(name = "courseWaitlistEntryIds") List<String> courseWaitlistEntryIds, @WebParam(name = "context") ContextInfo context)
167 throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185 public StatusInfo insertCourseWaitlistEntryAtPosition(@WebParam(name = "courseWaitlistEntryId") String courseWaitlistEntryId, @WebParam(name = "position") Integer position,
186 @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201 public StatusInfo removeCourseWaitlistEntry(@WebParam(name = "courseWaitlistEntryId") String courseWaitlistEntryId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException,
202 InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
203
204
205
206
207
208
209
210
211
212
213
214
215 public StatusInfo deleteCourseWaitlistEntry(@WebParam(name = "courseWaitlistEntryId") String courseWaitlistEntryId, @WebParam(name = "context") ContextInfo context)
216 throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231 public StatusInfo validateCourseWaitlistEntry(@WebParam(name = "validateTypeKey") String validateTypeKey,
232 @WebParam(name = "courseWaitlistEntryInfo") CourseWaitlistEntryInfo courseWaitlistEntryInfo, @WebParam(name = "context") ContextInfo context) throws DataValidationErrorException,
233 InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248 public RegistrationResponseInfo registerStudentFromWaitlist(@WebParam(name = "courseWaitlistEntryId") String courseWaitlistEntryId, @WebParam(name = "context") ContextInfo context)
249 throws AlreadyExistsException, DataValidationErrorException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
250
251
252
253
254
255
256
257
258
259
260
261
262
263 public List<CourseWaitlistEntryInfo> getCourseWaitlistEntriesForCourseOffering(@WebParam(name = "courseOfferingId") String courseOfferingId, @WebParam(name = "context") ContextInfo context)
264 throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
265
266
267
268
269
270
271
272
273
274
275
276
277 public List<CourseWaitlistEntryInfo> getCourseWaitlistEntriesForRegGroup(@WebParam(name = "regGroupId") String regGroupId, @WebParam(name = "context") ContextInfo context)
278 throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
279
280
281
282
283
284
285
286
287
288
289
290
291
292 public List<CourseWaitlistEntryInfo> getCourseWaitlistEntriesForStudentInCourseOffering(@WebParam(name = "courseOfferingId") String courseOfferingId,
293 @WebParam(name = "studentId") String studentId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
294 OperationFailedException, PermissionDeniedException;
295
296
297
298
299
300
301
302
303
304
305
306
307 public CourseWaitlistEntryInfo getCourseWaitlistEntryForStudentInRegGroup(@WebParam(name = "regGroupId") String regGroupId, @WebParam(name = "studentId") String studentId,
308 @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323 public List<CourseWaitlistEntryInfo> getCourseWaitlistEntriesForStudentByTerm(@WebParam(name = "studentId") String studentId, @WebParam(name = "termId") String termId,
324 @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;
325
326
327
328
329
330
331
332 public List<CourseWaitlistEntryInfo> searchForCourseWaitlistEntries(@WebParam(name = "criteria") QueryByCriteria criteria, @WebParam(name = "context") ContextInfo context)
333 throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException;;
334
335
336
337
338
339
340
341 public List<String> searchForCourseWaitlistEntryIds(@WebParam(name = "criteria") QueryByCriteria criteria, @WebParam(name = "context") ContextInfo context) throws InvalidParameterException,
342 MissingParameterException, OperationFailedException, PermissionDeniedException;;
343
344 }