Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
AcademicRecordService |
|
| 1.0;1 |
1 | /** | |
2 | * Copyright 2010 The Kuali Foundation Licensed under the | |
3 | * Educational Community License, Version 2.0 (the "License"); you may | |
4 | * not use this file except in compliance with the License. You may | |
5 | * obtain a copy of the License at | |
6 | * | |
7 | * http://www.osedu.org/licenses/ECL-2.0 | |
8 | * | |
9 | * Unless required by applicable law or agreed to in writing, | |
10 | * software distributed under the License is distributed on an "AS IS" | |
11 | * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express | |
12 | * or implied. See the License for the specific language governing | |
13 | * permissions and limitations under the License. | |
14 | */ | |
15 | ||
16 | package org.kuali.student.enrollment.academicrecord.service; | |
17 | ||
18 | import java.util.Date; | |
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.student.r2.common.dto.ContextInfo; | |
26 | ||
27 | import org.kuali.student.enrollment.academicrecord.dto.StudentCourseRecordInfo; | |
28 | import org.kuali.student.enrollment.academicrecord.dto.GPAInfo; | |
29 | ||
30 | import org.kuali.student.r2.common.exceptions.AlreadyExistsException; | |
31 | import org.kuali.student.r2.common.exceptions.DataValidationErrorException; | |
32 | import org.kuali.student.r2.common.exceptions.DoesNotExistException; | |
33 | import org.kuali.student.r2.common.exceptions.InvalidParameterException; | |
34 | import org.kuali.student.r2.common.exceptions.MissingParameterException; | |
35 | import org.kuali.student.r2.common.exceptions.OperationFailedException; | |
36 | import org.kuali.student.r2.common.exceptions.PermissionDeniedException; | |
37 | import org.kuali.student.r2.common.exceptions.VersionMismatchException; | |
38 | ||
39 | /** | |
40 | * Academic Record Service Description and Assumptions. | |
41 | * | |
42 | * This service provides the Academic Record. | |
43 | * | |
44 | * Version: 1.0 (Dev) | |
45 | * | |
46 | * @author tom | |
47 | * @since Mon Sep 12 12:22:34 EDT 2011 | |
48 | */ | |
49 | ||
50 | @WebService(name = "AcademicRecordService", serviceName = "AcademicRecordService", portName = "AcademicRecordService", targetNamespace = "http://student.kuali.org/wsdl/academicrecord") | |
51 | @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED) | |
52 | ||
53 | public interface AcademicRecordService { | |
54 | ||
55 | /** | |
56 | * This method returns a list of StudentCourseRecords for a | |
57 | * student and a term where each record is a course the student | |
58 | * attempted. The Term includes nested or sub-Terms. | |
59 | * | |
60 | * @param personId an Id of a student | |
61 | * @param termId a key of a Term | |
62 | * @param context Context information containing the principalId | |
63 | * and locale information about the caller of service | |
64 | * operation | |
65 | * @return a list of StudentCourseRecords | |
66 | * @throws DoesNotExistException personId or termId not found | |
67 | * @throws InvalidParameterException invalid parameter | |
68 | * @throws MissingParameterException missing parameter | |
69 | * @throws OperationFailedException unable to complete request | |
70 | */ | |
71 | public List<StudentCourseRecordInfo> getAttemptedCourseRecordsForTerm(@WebParam(name = "personId") String personId, @WebParam(name = "termId") String termId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException; | |
72 | ||
73 | /** | |
74 | * This method returns a list of StudentCourseRecord for a student | |
75 | * where each returned course is a course the student completed | |
76 | * for any term. | |
77 | * | |
78 | * @param personId an Id of a student | |
79 | * @param context Context information containing the principalId | |
80 | * and locale information about the caller of service | |
81 | * operation | |
82 | * @return a list of StudentCourseRecords | |
83 | * @throws DoesNotExistException personId not found | |
84 | * @throws InvalidParameterException invalid parameter | |
85 | * @throws MissingParameterException missing parameter | |
86 | * @throws OperationFailedException unable to complete request | |
87 | */ | |
88 | public List<StudentCourseRecordInfo> getCompletedCourseRecords(@WebParam(name = "personId") String personId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException; | |
89 | ||
90 | /** | |
91 | * This method returns a list of StudentCourseRecord for a student | |
92 | * and a term where each returned course is a course the student | |
93 | * completed The Term includes nested or sub-Terms. | |
94 | * | |
95 | * @param personId an Id of a student | |
96 | * @param termId a key of a Term | |
97 | * @param context Context information containing the principalId | |
98 | * and locale information about the caller of service | |
99 | * operation | |
100 | * @return a list of StudentCourseRecords | |
101 | * @throws DoesNotExistException personId or termId not found | |
102 | * @throws InvalidParameterException invalid parameter | |
103 | * @throws MissingParameterException missing parameter | |
104 | * @throws OperationFailedException unable to complete request | |
105 | */ | |
106 | public List<StudentCourseRecordInfo> getCompletedCourseRecordsForTerm(@WebParam(name = "personId") String personId, @WebParam(name = "termId") String termId, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException; | |
107 | ||
108 | /** | |
109 | * This method returns the GPA of a student for all courses taken | |
110 | * within a given a Term including its sub-Terms. | |
111 | * | |
112 | * @param personId an Id of a student | |
113 | * @param termId a key of a Term | |
114 | * @param context Context information containing the principalId | |
115 | * and locale information about the caller of service | |
116 | * operation | |
117 | * @return a GPA | |
118 | * @throws DoesNotExistException personId, termId or | |
119 | * calculationTypeKey not found | |
120 | * @throws InvalidParameterException invalid parameter | |
121 | * @throws MissingParameterException missing parameter | |
122 | * @throws OperationFailedException unable to complete request | |
123 | */ | |
124 | public GPAInfo getGPAForTerm(@WebParam(name = "personId") String personId, @WebParam(name = "termId") String termId, @WebParam(name = "calculationTypeKey") String calculationTypeKey, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException; | |
125 | ||
126 | /** | |
127 | * This method returns the GPA of a student for the period of time | |
128 | * indicated by the given Academic Calendar. | |
129 | * | |
130 | * @param personId an Id of a student | |
131 | * @param academiccalendarKey a key of an Academic Calendar | |
132 | * @param context Context information containing the principalId | |
133 | * and locale information about the caller of service | |
134 | * operation | |
135 | * @return a GPA | |
136 | * @throws DoesNotExistException personId or academicCalendarKey not found | |
137 | * @throws InvalidParameterException invalid parameter | |
138 | * @throws MissingParameterException missing parameter | |
139 | * @throws OperationFailedException unable to complete request | |
140 | */ | |
141 | public GPAInfo getGPAForAcademicCalendar(@WebParam(name = "personId") String personId, @WebParam(name = "academicCalendarKey") String academicCalendarKey, @WebParam(name = "calculationTypeKey") String calculationTypeKey, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException; | |
142 | ||
143 | /** | |
144 | * This method returns the cumulative GPA of a student. | |
145 | * | |
146 | * @param personId an Id of a student | |
147 | * @param context Context information containing the principalId | |
148 | * and locale information about the caller of service | |
149 | * operation | |
150 | * @return a GPA | |
151 | * @throws DoesNotExistException personId or calculationTypeKey | |
152 | * not found | |
153 | * @throws InvalidParameterException invalid parameter | |
154 | * @throws MissingParameterException missing parameter | |
155 | * @throws OperationFailedException unable to complete request | |
156 | */ | |
157 | public GPAInfo getCumulativeGPA(@WebParam(name = "personId") String personId, @WebParam(name = "calculationTypeKey") String calculationTypeKey, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException; | |
158 | ||
159 | /** | |
160 | * This method returns the number of credits a student earned by | |
161 | * courss within in a given Term including its sub-Terms. | |
162 | * | |
163 | * @param personId an Id of a student | |
164 | * @param termId a key for a Term | |
165 | * @param context Context information containing the principalId | |
166 | * and locale information about the caller of service | |
167 | * operation | |
168 | * @return a number of credits represented by a string | |
169 | * @throws DoesNotExistException personId, termId or | |
170 | * calculationTypeKey not found | |
171 | * @throws InvalidParameterException invalid parameter | |
172 | * @throws MissingParameterException missing parameter | |
173 | * @throws OperationFailedException unable to complete request | |
174 | */ | |
175 | public String getEarnedCreditsForTerm(@WebParam(name = "personId") String personId, @WebParam(name = "termId") String termId, @WebParam(name = "calculationTypeKey") String calculationTypeKey, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException; | |
176 | ||
177 | /** | |
178 | * This method returns the number of credits a student earned in a | |
179 | * given Academic Calendar. | |
180 | * | |
181 | * @param personId an Id of a student | |
182 | * @param academicCalendarKey a key for an AcademicCalendar | |
183 | * @param context Context information containing the principalId | |
184 | * and locale information about the caller of service | |
185 | * operation | |
186 | * @return a number of credits represented by a string | |
187 | * @throws DoesNotExistException personId, academicCalendarKey or | |
188 | * calculationTypeKey not found | |
189 | * @throws InvalidParameterException invalid parameter | |
190 | * @throws MissingParameterException missing parameter | |
191 | * @throws OperationFailedException unable to complete request | |
192 | */ | |
193 | public String getEarnedCreditsForAcademicCalendar(@WebParam(name = "personId") String personId, @WebParam(name = "academicCalendarKey") String academicCalendarKey, @WebParam(name = "calculationTypeKey") String calculationTypeKey, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException; | |
194 | ||
195 | /** | |
196 | * This method returns the number of credits a student earned | |
197 | * across all terms. | |
198 | * | |
199 | * @param personId an Id of a student | |
200 | * @param context Context information containing the principalId | |
201 | * and locale information about the caller of service | |
202 | * operation | |
203 | * @return a number of credits represented by a string | |
204 | * @throws DoesNotExistException personId or calculationTypeKey | |
205 | * not found | |
206 | * @throws InvalidParameterException invalid parameter | |
207 | * @throws MissingParameterException missing parameter | |
208 | * @throws OperationFailedException unable to complete request | |
209 | */ | |
210 | public String getEarnedCredits(@WebParam(name = "personId") String personId, @WebParam(name = "calculationTypeKey") String calculationTypeKey, @WebParam(name = "context") ContextInfo context) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException; | |
211 | } |