Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
IdentityService |
|
| 1.0;1 |
1 | /* | |
2 | * Copyright 2008-2009 The Kuali Foundation | |
3 | * | |
4 | * Licensed under the Educational Community License, Version 2.0 (the "License"); | |
5 | * you may not use this file except in compliance with the License. | |
6 | * You may obtain a copy of the License at | |
7 | * | |
8 | * http://www.opensource.org/licenses/ecl2.php | |
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 implied. | |
13 | * See the License for the specific language governing permissions and | |
14 | * limitations under the License. | |
15 | */ | |
16 | package org.kuali.rice.kim.api.services; | |
17 | ||
18 | import org.kuali.rice.core.api.criteria.QueryByCriteria; | |
19 | import org.kuali.rice.core.api.exception.RiceIllegalArgumentException; | |
20 | import org.kuali.rice.core.api.exception.RiceIllegalStateException; | |
21 | import org.kuali.rice.kim.api.identity.Type; | |
22 | import org.kuali.rice.kim.api.identity.address.EntityAddress; | |
23 | import org.kuali.rice.kim.api.identity.affiliation.EntityAffiliation; | |
24 | import org.kuali.rice.kim.api.identity.affiliation.EntityAffiliationType; | |
25 | import org.kuali.rice.kim.api.identity.citizenship.EntityCitizenship; | |
26 | import org.kuali.rice.kim.api.identity.email.EntityEmail; | |
27 | import org.kuali.rice.kim.api.identity.employment.EntityEmployment; | |
28 | import org.kuali.rice.kim.api.identity.entity.Entity; | |
29 | import org.kuali.rice.kim.api.identity.entity.EntityDefault; | |
30 | import org.kuali.rice.kim.api.identity.entity.EntityDefaultQueryResults; | |
31 | import org.kuali.rice.kim.api.identity.entity.EntityQueryResults; | |
32 | import org.kuali.rice.kim.api.identity.external.EntityExternalIdentifier; | |
33 | import org.kuali.rice.kim.api.identity.external.EntityExternalIdentifierType; | |
34 | import org.kuali.rice.kim.api.identity.name.EntityName; | |
35 | import org.kuali.rice.kim.api.identity.personal.EntityBioDemographics; | |
36 | import org.kuali.rice.kim.api.identity.personal.EntityEthnicity; | |
37 | import org.kuali.rice.kim.api.identity.phone.EntityPhone; | |
38 | import org.kuali.rice.kim.api.identity.principal.EntityNamePrincipalName; | |
39 | import org.kuali.rice.kim.api.identity.principal.Principal; | |
40 | import org.kuali.rice.kim.api.identity.privacy.EntityPrivacyPreferences; | |
41 | import org.kuali.rice.kim.api.identity.residency.EntityResidency; | |
42 | import org.kuali.rice.kim.api.identity.type.EntityTypeData; | |
43 | import org.kuali.rice.kim.api.identity.visa.EntityVisa; | |
44 | import org.kuali.rice.kim.api.jaxb.StringToKimEntityNameInfoMapAdapter; | |
45 | import org.kuali.rice.kim.api.jaxb.StringToKimEntityNamePrincipalInfoMapAdapter; | |
46 | import org.kuali.rice.kim.util.KIMWebServiceConstants; | |
47 | ||
48 | import javax.jws.WebMethod; | |
49 | import javax.jws.WebParam; | |
50 | import javax.jws.WebResult; | |
51 | import javax.jws.WebService; | |
52 | import javax.jws.soap.SOAPBinding; | |
53 | import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; | |
54 | import java.util.List; | |
55 | import java.util.Map; | |
56 | ||
57 | /** | |
58 | * This service provides operations to query for principal and identity data. | |
59 | * | |
60 | * <p>A principal represents an identity that can authenticate. In essence, a principal can be | |
61 | * thought of as an "account" or as an identity's authentication credentials. A principal has | |
62 | * an id which is used to uniquely identify it. It also has a name which represents the | |
63 | * principal's username and is typically what is entered when authenticating. All principals | |
64 | * are associated with one and only one identity. | |
65 | * | |
66 | * <p>An identity represents a person or system. Additionally, other "types" of entities can | |
67 | * be defined in KIM. Information like name, phone number, etc. is associated with an identity. | |
68 | * It is the representation of a concrete person or system. While an identity will typically | |
69 | * have a single principal associated with it, it is possible for an identity to have more than | |
70 | * one principal or even no principals at all (in the case where the identity does not actually | |
71 | * authenticate). | |
72 | * | |
73 | * <p>This service also provides operations for querying various pieces of reference data, such as | |
74 | * address types, affiliation types, phone types, etc. | |
75 | * | |
76 | * <p>This service provides read-only operations. For write operations, see | |
77 | * {@link org.kuali.rice.kim.service.IdentityUpdateService}. | |
78 | * | |
79 | * @see org.kuali.rice.kim.service.IdentityUpdateService | |
80 | * | |
81 | * @author Kuali Rice Team (rice.collab@kuali.org) | |
82 | * | |
83 | */ | |
84 | @WebService(name = KIMWebServiceConstants.IdentityService.WEB_SERVICE_NAME, targetNamespace = KIMWebServiceConstants.MODULE_TARGET_NAMESPACE) | |
85 | @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.WRAPPED) | |
86 | public interface IdentityService { | |
87 | ||
88 | /** | |
89 | * This method finds EntityDefault data based on a query criteria. The criteria cannot be null. | |
90 | * | |
91 | * @param queryByCriteria the criteria. Cannot be null. | |
92 | * @return query results. will never return null. | |
93 | * @throws IllegalArgumentException if the queryByCriteria is null | |
94 | */ | |
95 | @WebMethod(operationName = "findEntityDefaults") | |
96 | @WebResult(name = "results") | |
97 | EntityDefaultQueryResults findEntityDefaults(@WebParam(name = "query") QueryByCriteria query); | |
98 | ||
99 | /** | |
100 | * This method finds Entities based on a query criteria. The criteria cannot be null. | |
101 | * | |
102 | * @param queryByCriteria the criteria. Cannot be null. | |
103 | * @return query results. will never return null. | |
104 | * @throws IllegalArgumentException if the queryByCriteria is null | |
105 | */ | |
106 | @WebMethod(operationName = "findEntities") | |
107 | @WebResult(name = "results") | |
108 | EntityQueryResults findEntities(@WebParam(name = "query") QueryByCriteria query); | |
109 | ||
110 | ||
111 | /** | |
112 | * Gets a {@link org.kuali.rice.kim.api.identity.entity.Entity} from an id. | |
113 | * | |
114 | * <p> | |
115 | * This method will return null if the Entity does not exist. | |
116 | * </p> | |
117 | * | |
118 | * @param id the unique id to retrieve the entity by. cannot be null. | |
119 | * @return a {@link org.kuali.rice.kim.api.identity.entity.Entity} or null | |
120 | * @throws IllegalArgumentException if the id is blank | |
121 | */ | |
122 | @WebMethod(operationName = "getEntity") | |
123 | @WebResult(name = "entity") | |
124 | Entity getEntity( @WebParam(name="id") String id ); | |
125 | ||
126 | /** | |
127 | * Gets a {@link org.kuali.rice.kim.api.identity.entity.Entity} from a principalId. | |
128 | * | |
129 | * <p> | |
130 | * This method will return null if the Entity does not exist. | |
131 | * </p> | |
132 | * | |
133 | * @param principalId the unique id to retrieve the entity by. cannot be null. | |
134 | * @return a {@link org.kuali.rice.kim.api.identity.entity.Entity} or null | |
135 | * @throws IllegalArgumentException if the id is blank | |
136 | */ | |
137 | @WebMethod(operationName = "getEntityByPrincipalId") | |
138 | @WebResult(name = "entity") | |
139 | Entity getEntityByPrincipalId(@WebParam(name = "principalId") String principalId); | |
140 | ||
141 | /** | |
142 | * Gets a {@link org.kuali.rice.kim.api.identity.entity.Entity} from a principalName. | |
143 | * | |
144 | * <p> | |
145 | * This method will return null if the Entity does not exist. | |
146 | * </p> | |
147 | * | |
148 | * @param principalName the unique id to retrieve the entity by. cannot be null. | |
149 | * @return a {@link org.kuali.rice.kim.api.identity.entity.Entity} or null | |
150 | * @throws IllegalArgumentException if the id is blank | |
151 | */ | |
152 | @WebMethod(operationName = "getEntityByPrincipalName") | |
153 | @WebResult(name = "entity") | |
154 | Entity getEntityByPrincipalName(@WebParam(name = "principalName") String principalName); | |
155 | ||
156 | ||
157 | /** | |
158 | * This will create a {@link org.kuali.rice.kim.api.identity.entity.Entity} exactly like the entity passed in. | |
159 | * | |
160 | * @param entity the entity to create | |
161 | * @return the newly created Entity object. | |
162 | * @throws IllegalArgumentException if the entity is null | |
163 | * @throws IllegalStateException if the entity already exists in the system | |
164 | */ | |
165 | @WebMethod(operationName="createEntity") | |
166 | @WebResult(name = "entity") | |
167 | Entity createEntity(@WebParam(name = "entity") Entity entity) | |
168 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
169 | ||
170 | /** | |
171 | * This will update a {@link org.kuali.rice.kim.api.identity.entity.Entity}. | |
172 | * | |
173 | * @param entity the entity to update | |
174 | * @return the updated Entity object. | |
175 | * @throws IllegalArgumentException if the entity is null | |
176 | * @throws IllegalStateException if the entity does not already exist in the system | |
177 | */ | |
178 | @WebMethod(operationName="updateEntity") | |
179 | @WebResult(name = "entity") | |
180 | Entity updateEntity(@WebParam(name = "entity") Entity entity) | |
181 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
182 | ||
183 | /** | |
184 | * This will inactivate a {@link org.kuali.rice.kim.api.identity.entity.Entity}. | |
185 | * | |
186 | * @param id the unique id of the entity to inactivate | |
187 | * @return the inactivated Entity object. | |
188 | * @throws IllegalArgumentException if the entity is null | |
189 | * @throws IllegalStateException if the entity does not already exist in the system | |
190 | */ | |
191 | @WebMethod(operationName="inactivateEntity") | |
192 | @WebResult(name = "entity") | |
193 | Entity inactivateEntity(@WebParam(name = "id") String id) | |
194 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
195 | ||
196 | ||
197 | ||
198 | /** | |
199 | * Gets a {@link org.kuali.rice.kim.api.identity.entity.EntityDefault} from an id. | |
200 | * {@link org.kuali.rice.kim.api.identity.entity.EntityDefault} is a condensed version of {@link org.kuali.rice.kim.api.identity.entity.Entity} that contains | |
201 | * default values of its subclasses | |
202 | * | |
203 | * <p> | |
204 | * This method will return null if the Entity does not exist. | |
205 | * </p> | |
206 | * | |
207 | * @param id the unique id to retrieve the entity by. cannot be null. | |
208 | * @return a {@link org.kuali.rice.kim.api.identity.entity.EntityDefault} or null | |
209 | * @throws IllegalArgumentException if the id is blank | |
210 | */ | |
211 | @WebMethod(operationName = "getEntityDefault") | |
212 | @WebResult(name = "entityDefault") | |
213 | EntityDefault getEntityDefault(@WebParam(name = "id") String id); | |
214 | ||
215 | /** | |
216 | * Gets a {@link org.kuali.rice.kim.api.identity.entity.EntityDefault} from an principalId. | |
217 | * {@link org.kuali.rice.kim.api.identity.entity.EntityDefault} is a condensed version of {@link org.kuali.rice.kim.api.identity.entity.Entity} that contains | |
218 | * default values of its subclasses | |
219 | * | |
220 | * <p> | |
221 | * This method will return null if the Entity does not exist. | |
222 | * </p> | |
223 | * | |
224 | * @param principalId the unique id to retrieve the entity by. cannot be null. | |
225 | * @return a {@link org.kuali.rice.kim.api.identity.entity.EntityDefault} or null | |
226 | * @throws IllegalArgumentException if the principalId is blank | |
227 | */ | |
228 | @WebMethod(operationName = "getEntityDefaultByPrincipalId") | |
229 | @WebResult(name = "entityDefault") | |
230 | EntityDefault getEntityDefaultByPrincipalId(@WebParam(name = "principalId") String principalId); | |
231 | ||
232 | /** | |
233 | * Gets a {@link org.kuali.rice.kim.api.identity.entity.EntityDefault} from an principalName. | |
234 | * {@link org.kuali.rice.kim.api.identity.entity.EntityDefault} is a condensed version of {@link org.kuali.rice.kim.api.identity.entity.Entity} that contains | |
235 | * default values of its subclasses | |
236 | * | |
237 | * <p> | |
238 | * This method will return null if the Entity does not exist. | |
239 | * </p> | |
240 | * | |
241 | * @param principalName the unique id to retrieve the entity by. cannot be null. | |
242 | * @return a {@link org.kuali.rice.kim.api.identity.entity.EntityDefault} or null | |
243 | * @throws IllegalArgumentException if the principalId is blank | |
244 | */ | |
245 | @WebMethod(operationName = "getEntityDefaultByPrincipalName") | |
246 | @WebResult(name = "entityDefault") | |
247 | EntityDefault getEntityDefaultByPrincipalName(@WebParam(name = "principalName") String principalName); | |
248 | ||
249 | ||
250 | ||
251 | /** | |
252 | * Gets a {@link org.kuali.rice.kim.api.identity.principal.Principal} from an principalId. | |
253 | * | |
254 | * <p> | |
255 | * This method will return null if the Principal does not exist. | |
256 | * </p> | |
257 | * | |
258 | * @param principalId the unique id to retrieve the principal by. cannot be null. | |
259 | * @return a {@link org.kuali.rice.kim.api.identity.principal.Principal} or null | |
260 | * @throws IllegalArgumentException if the principalId is blank | |
261 | */ | |
262 | @WebMethod(operationName = "getPrincipal") | |
263 | @WebResult(name = "principal") | |
264 | Principal getPrincipal( @WebParam(name="principalId") String principalId ); | |
265 | ||
266 | /** | |
267 | * Gets a {@link org.kuali.rice.kim.api.identity.principal.Principal} from an principalName. | |
268 | * | |
269 | * <p> | |
270 | * This method will return null if the Principal does not exist. | |
271 | * </p> | |
272 | * | |
273 | * @param principalName the unique id to retrieve the principal by. cannot be null. | |
274 | * @return a {@link org.kuali.rice.kim.api.identity.principal.Principal} or null | |
275 | * @throws IllegalArgumentException if the principalId is blank | |
276 | */ | |
277 | @WebMethod(operationName = "getPrincipalByPrincipalName") | |
278 | @WebResult(name = "principal") | |
279 | Principal getPrincipalByPrincipalName( @WebParam(name="principalName") String principalName ); | |
280 | ||
281 | /** | |
282 | * Gets a {@link org.kuali.rice.kim.api.identity.principal.Principal} from an principalName and password. | |
283 | * | |
284 | * <p> | |
285 | * This method will return null if the Principal does not exist or the password is incorrect. | |
286 | * </p> | |
287 | * | |
288 | * @param principalName the unique id to retrieve the principal by. cannot be null. | |
289 | * @param password the password for the principal | |
290 | * @return a {@link org.kuali.rice.kim.api.identity.principal.Principal} or null | |
291 | * @throws IllegalArgumentException if the principalName is blank | |
292 | */ | |
293 | @WebMethod(operationName = "getPrincipalByPrincipalNameAndPassword") | |
294 | @WebResult(name = "principal") | |
295 | Principal getPrincipalByPrincipalNameAndPassword( @WebParam(name="principalName") String principalName, @WebParam(name="password") String password ); | |
296 | ||
297 | /** | |
298 | * This will create a {@link org.kuali.rice.kim.api.identity.principal.Principal} exactly like the principal passed in. | |
299 | * | |
300 | * The principal object passed in must be populated with an entityId and a principalName | |
301 | * | |
302 | * @param principal the principal to create | |
303 | * @return the newly created Principal object. | |
304 | * @throws IllegalArgumentException if the principal is null | |
305 | * @throws IllegalStateException if the principal already exists in the system or the principal object is not populated with entityId and principalName | |
306 | */ | |
307 | @WebMethod(operationName="addPrincipalToEntity") | |
308 | @WebResult(name = "principal") | |
309 | Principal addPrincipalToEntity(@WebParam(name = "principal") Principal principal) | |
310 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
311 | ||
312 | /** | |
313 | * This will update a {@link org.kuali.rice.kim.api.identity.principal.Principal} exactly like the principal passed in. | |
314 | * | |
315 | * | |
316 | * @param principal the principal to update | |
317 | * @return the updated Principal object. | |
318 | * @throws IllegalArgumentException if the principal is null | |
319 | * @throws IllegalStateException if the principal does not exist in the system. | |
320 | */ | |
321 | @WebMethod(operationName="updatePrincipal") | |
322 | @WebResult(name = "principal") | |
323 | Principal updatePrincipal(@WebParam(name = "principal") Principal principal) | |
324 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
325 | ||
326 | /** | |
327 | * This will inactivate a {@link org.kuali.rice.kim.api.identity.principal.Principal}. | |
328 | * | |
329 | * | |
330 | * @param id the unique id of the principal to inactivate | |
331 | * @return the inactivated Principal object. | |
332 | * @throws IllegalArgumentException if the principal is null | |
333 | * @throws IllegalStateException if the principal does not exist in the system. | |
334 | */ | |
335 | @WebMethod(operationName="inactivatePrincipal") | |
336 | @WebResult(name = "principal") | |
337 | Principal inactivatePrincipal(@WebParam(name = "principalId") String principalId) | |
338 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
339 | ||
340 | /** | |
341 | * This will inactivate a {@link org.kuali.rice.kim.api.identity.principal.Principal}. | |
342 | * | |
343 | * | |
344 | * @param principalName the unique principalName of the principal to inactivate | |
345 | * @return the inactivated Principal object. | |
346 | * @throws IllegalArgumentException if the principal is null | |
347 | * @throws IllegalStateException if the principal does not exist in the system. | |
348 | */ | |
349 | @WebMethod(operationName="inactivatePrincipalByName") | |
350 | @WebResult(name = "principal") | |
351 | Principal inactivatePrincipalByName(@WebParam(name = "principalName") String principalName) | |
352 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
353 | ||
354 | ||
355 | /** | |
356 | * This will create a {@link org.kuali.rice.kim.api.identity.type.EntityTypeData} exactly like the entityTypeData passed in. | |
357 | * | |
358 | * The EntityTypeData object passed in must be populated with an entityId and a entityTypeCode | |
359 | * | |
360 | * @param entityTypeData the EntityTypeData to create | |
361 | * @return the newly created EntityTypeData object. | |
362 | * @throws IllegalArgumentException if the entityTypeData is null | |
363 | * @throws IllegalStateException if the entityTypeData already exists in the system or the EntityTypeData object is not populated with entityId and entityTypeCode | |
364 | */ | |
365 | @WebMethod(operationName="addEntityTypeDataToEntity") | |
366 | @WebResult(name = "entityTypeData") | |
367 | EntityTypeData addEntityTypeDataToEntity(@WebParam(name = "entityTypeData") EntityTypeData entityTypeData) | |
368 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
369 | ||
370 | /** | |
371 | * This will update a {@link org.kuali.rice.kim.api.identity.type.EntityTypeData} exactly like the entityTypeData passed in. | |
372 | * | |
373 | * | |
374 | * @param entityTypeData the EntityTypeData to update | |
375 | * @return the updated EntityTypeData object. | |
376 | * @throws IllegalArgumentException if the entityTypeData is null | |
377 | * @throws IllegalStateException if the entityTypeData does not exist in the system. | |
378 | */ | |
379 | @WebMethod(operationName="updateEntityTypeData") | |
380 | @WebResult(name = "entityTypeData") | |
381 | EntityTypeData updateEntityTypeData(@WebParam(name = "entityTypeData") EntityTypeData entityTypeData) | |
382 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
383 | ||
384 | /** | |
385 | * This will inactivate a {@link org.kuali.rice.kim.api.identity.type.EntityTypeData} with the passed in parameters. | |
386 | * | |
387 | * | |
388 | * @param entityId the entityId of the EntityTypeData to inactivate | |
389 | * @param entityTypeCode the entityTypeCode of the EntityTypeData to inactivate | |
390 | * @return the inactivated EntityTypeData object. | |
391 | * @throws IllegalArgumentException if the entityTypeData is null | |
392 | * @throws IllegalStateException if the entityTypeData does not exist in the system. | |
393 | */ | |
394 | @WebMethod(operationName="inactivateEntityTypeData") | |
395 | @WebResult(name = "entityTypeData") | |
396 | EntityTypeData inactivateEntityTypeData(@WebParam(name = "entityId") String entityId, @WebParam(name = "entityTypeCode") String entityTypeCode) | |
397 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
398 | ||
399 | /** | |
400 | * This will create a {@link org.kuali.rice.kim.api.identity.address.EntityAddress} exactly like the address passed in. | |
401 | * | |
402 | * The EntityAddress object passed in must be populated with an entityId and a entityTypeCode | |
403 | * | |
404 | * @param address the EntityAddress to create | |
405 | * @return the newly created EntityAddress object. | |
406 | * @throws IllegalArgumentException if the address is null | |
407 | * @throws IllegalStateException if the address already exists in the system or address is not populated with entityId and entityTypeCode | |
408 | */ | |
409 | @WebMethod(operationName="addAddressToEntity") | |
410 | @WebResult(name = "address") | |
411 | EntityAddress addAddressToEntity(@WebParam(name = "address") EntityAddress address) | |
412 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
413 | ||
414 | /** | |
415 | * This will update a {@link org.kuali.rice.kim.api.identity.address.EntityAddress} exactly like the address passed in. | |
416 | * | |
417 | * | |
418 | * @param address the EntityAddress to update | |
419 | * @return the updated EntityAddress object. | |
420 | * @throws IllegalArgumentException if the address is null | |
421 | * @throws IllegalStateException if the address does not exist in the system. | |
422 | */ | |
423 | @WebMethod(operationName="updateAddress") | |
424 | @WebResult(name = "address") | |
425 | EntityAddress updateAddress(@WebParam(name = "address")EntityAddress address) | |
426 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
427 | ||
428 | /** | |
429 | * This will inactivate a {@link org.kuali.rice.kim.api.identity.address.EntityAddress} with the id passed in. | |
430 | * | |
431 | * | |
432 | * @param id the unique id of the EntityAddress to inactivate | |
433 | * @return the updated EntityAddress object. | |
434 | * @throws IllegalArgumentException if the id is null | |
435 | * @throws IllegalStateException if the address does not exist in the system. | |
436 | */ | |
437 | @WebMethod(operationName="inactivateAddress") | |
438 | @WebResult(name = "address") | |
439 | EntityAddress inactivateAddress(@WebParam(name = "id") String id) | |
440 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
441 | ||
442 | /** | |
443 | * This will create a {@link org.kuali.rice.kim.api.identity.email.EntityEmail} exactly like the email passed in. | |
444 | * | |
445 | * The EntityEmail object passed in must be populated with an entityId and a entityTypeCode | |
446 | * | |
447 | * @param email the EntityEmail to create | |
448 | * @return the newly created EntityEmail object. | |
449 | * @throws IllegalArgumentException if the email is null | |
450 | * @throws IllegalStateException if the email already exists in the system or email is not populated with entityId and entityTypeCode | |
451 | */ | |
452 | @WebMethod(operationName="addEmailToEntity") | |
453 | @WebResult(name = "email") | |
454 | EntityEmail addEmailToEntity(@WebParam(name = "email") EntityEmail email) | |
455 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
456 | ||
457 | /** | |
458 | * This will update a {@link org.kuali.rice.kim.api.identity.email.EntityEmail} exactly like the email passed in. | |
459 | * | |
460 | * | |
461 | * @param email the EntityEmail to update | |
462 | * @return the updated EntityEmail object. | |
463 | * @throws IllegalArgumentException if the email is null | |
464 | * @throws IllegalStateException if the email does not exist in the system. | |
465 | */ | |
466 | @WebMethod(operationName="updateEmail") | |
467 | @WebResult(name = "email") | |
468 | EntityEmail updateEmail(@WebParam(name = "email") EntityEmail email) | |
469 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
470 | ||
471 | /** | |
472 | * This will inactivate the {@link org.kuali.rice.kim.api.identity.email.EntityEmail} with the passed in id. | |
473 | * | |
474 | * | |
475 | * @param id the unique id of the EntityEmail to inactivate | |
476 | * @return the inactivated EntityEmail object. | |
477 | * @throws IllegalArgumentException if the id is null | |
478 | * @throws IllegalStateException if the email does not exist in the system. | |
479 | */ | |
480 | @WebMethod(operationName="inactivateEmail") | |
481 | @WebResult(name = "email") | |
482 | EntityEmail inactivateEmail(@WebParam(name = "id") String id) | |
483 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
484 | ||
485 | /** | |
486 | * This will create a {@link org.kuali.rice.kim.api.identity.phone.EntityPhone} exactly like the phone passed in. | |
487 | * | |
488 | * The EntityPhone object passed in must be populated with an entityId and a entityTypeCode | |
489 | * | |
490 | * @param phone the EntityPhone to create | |
491 | * @return the newly created EntityPhone object. | |
492 | * @throws IllegalArgumentException if the phone is null | |
493 | * @throws IllegalStateException if the phone already exists in the system or phone is not populated with entityId and entityTypeCode | |
494 | */ | |
495 | @WebMethod(operationName="addPhoneToEntity") | |
496 | @WebResult(name = "phone") | |
497 | EntityPhone addPhoneToEntity(@WebParam(name = "phone") EntityPhone phone) | |
498 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
499 | ||
500 | /** | |
501 | * This will update a {@link org.kuali.rice.kim.api.identity.phone.EntityPhone} exactly like the phone passed in. | |
502 | * | |
503 | * | |
504 | * @param phone the EntityPhone to update | |
505 | * @return the updated EntityPhone object. | |
506 | * @throws IllegalArgumentException if the phone is null | |
507 | * @throws IllegalStateException if the phone does not exist in the system. | |
508 | */ | |
509 | @WebMethod(operationName="updatePhone") | |
510 | @WebResult(name = "phone") | |
511 | EntityPhone updatePhone(@WebParam(name = "phone") EntityPhone phone) | |
512 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
513 | ||
514 | /** | |
515 | * This will inactivate the {@link org.kuali.rice.kim.api.identity.phone.EntityPhone} with the passed in id. | |
516 | * | |
517 | * | |
518 | * @param id the unique id of the EntityPhone to inactivate | |
519 | * @return the inactivated EntityPhone object. | |
520 | * @throws IllegalArgumentException if the id is null | |
521 | * @throws IllegalStateException if the phone does not exist in the system. | |
522 | */ | |
523 | @WebMethod(operationName="inactivatePhone") | |
524 | @WebResult(name = "phone") | |
525 | EntityPhone inactivatePhone(@WebParam(name = "id") String id) | |
526 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
527 | ||
528 | ||
529 | /** | |
530 | * This will create a {@link org.kuali.rice.kim.api.identity.external.EntityExternalIdentifier} exactly like the externalId passed in. | |
531 | * | |
532 | * The EntityExternalIdentifier object passed in must be populated with an entityId and a externalIdentifierTypeCode | |
533 | * | |
534 | * @param externalId the EntityExternalIdentifier to create | |
535 | * @return the newly created EntityExternalIdentifier object. | |
536 | * @throws IllegalArgumentException if the externalId is null | |
537 | * @throws IllegalStateException if the externalId already exists in the system or externalId is not populated with entityId and externalIdentifierTypeCode | |
538 | */ | |
539 | @WebMethod(operationName="addExternalIdentifierToEntity") | |
540 | @WebResult(name = "externalId") | |
541 | EntityExternalIdentifier addExternalIdentifierToEntity(@WebParam(name = "externalId") EntityExternalIdentifier externalId) | |
542 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
543 | ||
544 | /** | |
545 | * This will update a {@link org.kuali.rice.kim.api.identity.external.EntityExternalIdentifier} exactly like the externalId passed in. | |
546 | * | |
547 | * | |
548 | * @param externalId the EntityExternalIdentifier to update | |
549 | * @return the updated EntityExternalIdentifier object. | |
550 | * @throws IllegalArgumentException if the externalId is null | |
551 | * @throws IllegalStateException if the externalId does not exist in the system. | |
552 | */ | |
553 | @WebMethod(operationName="updateExternalIdentifier") | |
554 | @WebResult(name = "externalId") | |
555 | EntityExternalIdentifier updateExternalIdentifier(@WebParam(name = "externalId") EntityExternalIdentifier externalId) | |
556 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
557 | ||
558 | /** | |
559 | * This will create a {@link org.kuali.rice.kim.api.identity.affiliation.EntityAffiliation} exactly like the affiliation passed in. | |
560 | * | |
561 | * The EntityAffiliation object passed in must be populated with an entityId and a affiliationType | |
562 | * | |
563 | * @param affiliation the EntityAffiliation to create | |
564 | * @return the newly created EntityAffiliation object. | |
565 | * @throws IllegalArgumentException if the affiliation is null | |
566 | * @throws IllegalStateException if the affiliation already exists in the system or affiliation is not populated with entityId and affiliationType | |
567 | */ | |
568 | @WebMethod(operationName="addAffiliationToEntity") | |
569 | @WebResult(name = "affiliation") | |
570 | EntityAffiliation addAffiliationToEntity(@WebParam(name = "affiliation") EntityAffiliation affiliation) | |
571 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
572 | ||
573 | /** | |
574 | * This will update a {@link org.kuali.rice.kim.api.identity.affiliation.EntityAffiliation} exactly like the affiliation passed in. | |
575 | * | |
576 | * | |
577 | * @param affiliation the EntityAffiliation to update | |
578 | * @return the updated EntityAffiliation object. | |
579 | * @throws IllegalArgumentException if the affiliation is null | |
580 | * @throws IllegalStateException if the affiliation does not exist in the system. | |
581 | */ | |
582 | @WebMethod(operationName="updateAffiliation") | |
583 | @WebResult(name = "affiliation") | |
584 | EntityAffiliation updateAffiliation(@WebParam(name = "affiliation") EntityAffiliation affiliation) | |
585 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
586 | ||
587 | /** | |
588 | * This will inactivate a {@link org.kuali.rice.kim.api.identity.affiliation.EntityAffiliation} with the id passed in. | |
589 | * | |
590 | * | |
591 | * @param id the unique id of the EntityAffiliation to inactivate | |
592 | * @return the updated EntityAffiliation object. | |
593 | * @throws IllegalArgumentException if the affiliation is null | |
594 | * @throws IllegalStateException if the affiliation does not exist in the system. | |
595 | */ | |
596 | @WebMethod(operationName="inactivateAffiliation") | |
597 | @WebResult(name = "affiliation") | |
598 | EntityAffiliation inactivateAffiliation(@WebParam(name = "id") String id) | |
599 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
600 | ||
601 | /** | |
602 | * Gets a map {@link org.kuali.rice.kim.api.identity.principal.EntityNamePrincipalName} for a list of principalIds. | |
603 | * | |
604 | * <p>The resulting Map contains the principalId as the key and the EntityNamePrincipalName as the value. | |
605 | * When fetching names by principal id, the resulting EntityNamePrincipalName contains the identity's default name | |
606 | * as well as the principalName. | |
607 | * </p> | |
608 | * | |
609 | * @param principalIds list of unique principalIds to retrieve the names by. Cannot be null. | |
610 | * @return a map of {@link org.kuali.rice.kim.api.identity.principal.EntityNamePrincipalName} | |
611 | * @throws IllegalArgumentException if the list of principalIds is null | |
612 | */ | |
613 | @WebMethod(operationName = "getDefaultNamesForPrincipalIds") | |
614 | @WebResult(name = "entityNamePrincipalNames") | |
615 | @XmlJavaTypeAdapter(value = StringToKimEntityNamePrincipalInfoMapAdapter.class) | |
616 | Map<String, EntityNamePrincipalName> getDefaultNamesForPrincipalIds(@WebParam(name="principalIds") List<String> principalIds); | |
617 | ||
618 | ||
619 | /** | |
620 | * Gets a map {@link org.kuali.rice.kim.api.identity.principal.EntityNamePrincipalName} for a list of entityIds. | |
621 | * | |
622 | * <p>The resulting Map contains the entityId as the key and the EntityNamePrincipalName as the value. | |
623 | * When fetching names by principal id, the resulting EntityNamePrincipalName contains the identity's default name | |
624 | * as well as the principalName. | |
625 | * </p> | |
626 | * | |
627 | * @param principalIds list of unique principalIds to retrieve the names by. Cannot be null. | |
628 | * @return a map of {@link org.kuali.rice.kim.api.identity.principal.EntityNamePrincipalName} | |
629 | * @throws IllegalArgumentException if the list of principalIds is null | |
630 | */ | |
631 | @WebMethod(operationName = "getDefaultNamesForEntityIds") | |
632 | @WebResult(name = "entityNamePrincipalNames") | |
633 | @XmlJavaTypeAdapter(value = StringToKimEntityNameInfoMapAdapter.class) | |
634 | Map<String, EntityNamePrincipalName> getDefaultNamesForEntityIds(@WebParam(name="entityIds") List<String> entityIds); | |
635 | ||
636 | /** | |
637 | * This will create a {@link org.kuali.rice.kim.api.identity.name.EntityName} exactly like the name passed in. | |
638 | * | |
639 | * The EntityName object passed in must be populated with an entityId and a nameType | |
640 | * | |
641 | * @param name the EntityName to create | |
642 | * @return the newly created EntityName object. | |
643 | * @throws IllegalArgumentException if the name is null | |
644 | * @throws IllegalStateException if the name already exists in the system or name is not populated with entityId and nameType | |
645 | */ | |
646 | @WebMethod(operationName="addNameToEntity") | |
647 | @WebResult(name = "name") | |
648 | EntityName addNameToEntity(@WebParam(name = "name") EntityName name) | |
649 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
650 | ||
651 | /** | |
652 | * This will update a {@link org.kuali.rice.kim.api.identity.name.EntityName} exactly like the name passed in. | |
653 | * | |
654 | * | |
655 | * @param name the EntityName to update | |
656 | * @return the updated EntityName object. | |
657 | * @throws IllegalArgumentException if the name is null | |
658 | * @throws IllegalStateException if the name does not exist in the system. | |
659 | */ | |
660 | @WebMethod(operationName="updateName") | |
661 | @WebResult(name = "name") | |
662 | EntityName updateName(@WebParam(name = "name") EntityName name) | |
663 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
664 | ||
665 | /** | |
666 | * This will inactivate a {@link org.kuali.rice.kim.api.identity.name.EntityName} with the passed in id. | |
667 | * | |
668 | * | |
669 | * @param id the unique id of the EntityName to inactivate | |
670 | * @return the inactivated EntityName object. | |
671 | * @throws IllegalArgumentException if the id is null | |
672 | * @throws IllegalStateException if the name with the id does not exist in the system. | |
673 | */ | |
674 | @WebMethod(operationName="inactivateName") | |
675 | @WebResult(name = "name") | |
676 | EntityName inactivateName(@WebParam(name = "id") String id) | |
677 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
678 | ||
679 | /** | |
680 | * This will create a {@link org.kuali.rice.kim.api.identity.employment.EntityEmployment} exactly like the employment passed in. | |
681 | * | |
682 | * The EntityEmployment object passed in must be populated with an entityId and a employmentType | |
683 | * | |
684 | * @param employment the EntityEmployment to create | |
685 | * @return the newly created EntityName object. | |
686 | * @throws IllegalArgumentException if the employment is null | |
687 | * @throws IllegalStateException if the employment already exists in the system or employment is not populated with entityId and employmentType | |
688 | */ | |
689 | @WebMethod(operationName="addEmploymentToEntity") | |
690 | @WebResult(name = "employment") | |
691 | EntityEmployment addEmploymentToEntity(@WebParam(name = "employment") EntityEmployment employment) | |
692 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
693 | ||
694 | /** | |
695 | * This will update a {@link org.kuali.rice.kim.api.identity.employment.EntityEmployment} exactly like the employment passed in. | |
696 | * | |
697 | * | |
698 | * @param employment the EntityEmployment to update | |
699 | * @return the updated EntityEmployment object. | |
700 | * @throws IllegalArgumentException if the employment is null | |
701 | * @throws IllegalStateException if the employment does not exist in the system. | |
702 | */ | |
703 | @WebMethod(operationName="updateEmployment") | |
704 | @WebResult(name = "employment") | |
705 | EntityEmployment updateEmployment(@WebParam(name = "employment") EntityEmployment employment) | |
706 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
707 | ||
708 | /** | |
709 | * This will inactivate a {@link org.kuali.rice.kim.api.identity.employment.EntityEmployment} with the passed in id. | |
710 | * | |
711 | * | |
712 | * @param id the unique id of the EntityEmployment to inactivate | |
713 | * @return the inactivated EntityEmployment object. | |
714 | * @throws IllegalArgumentException if the id is null | |
715 | * @throws IllegalStateException if the employment with the id does not exist in the system. | |
716 | */ | |
717 | @WebMethod(operationName="inactivateEmployment") | |
718 | @WebResult(name = "employment") | |
719 | EntityEmployment inactivateEmployment(@WebParam(name = "id") String id) | |
720 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
721 | ||
722 | /** | |
723 | * This will create a {@link org.kuali.rice.kim.api.identity.personal.EntityBioDemographics} exactly like the bioDemographics passed in. | |
724 | * | |
725 | * The EntityBioDemographics object passed in must be populated with an entityId | |
726 | * | |
727 | * @param bioDemographics the EntityBioDemographics to create | |
728 | * @return the newly created EntityBioDemographics object. | |
729 | * @throws IllegalArgumentException if the bioDemographics is null | |
730 | * @throws IllegalStateException if the bioDemographics already exists in the system or bioDemographics is not populated with entityId | |
731 | */ | |
732 | @WebMethod(operationName="addBioDemographicsToEntity") | |
733 | @WebResult(name = "bioDemographics") | |
734 | EntityBioDemographics addBioDemographicsToEntity(@WebParam(name = "bioDemographics") EntityBioDemographics bioDemographics) | |
735 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
736 | ||
737 | /** | |
738 | * This will update a {@link org.kuali.rice.kim.api.identity.personal.EntityBioDemographics} exactly like the bioDemographics passed in. | |
739 | * | |
740 | * | |
741 | * @param bioDemographics the EntityBioDemographics to update | |
742 | * @return the updated EntityBioDemographics object. | |
743 | * @throws IllegalArgumentException if the bioDemographics is null | |
744 | * @throws IllegalStateException if the bioDemographics does not exist in the system. | |
745 | */ | |
746 | @WebMethod(operationName="updateBioDemographics") | |
747 | @WebResult(name = "bioDemographics") | |
748 | EntityBioDemographics updateBioDemographics(@WebParam(name = "bioDemographics") EntityBioDemographics bioDemographics) | |
749 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
750 | ||
751 | /** | |
752 | * Gets a {@link org.kuali.rice.kim.api.identity.privacy.EntityPrivacyPreferences} for a given entityId. | |
753 | * | |
754 | * <p> | |
755 | * This method will return null if the EntityPrivacyPreferences does not exist. | |
756 | * </p> | |
757 | * | |
758 | * @param entityId the unique id to retrieve the EntityPrivacyPreferences by. Cannot be null. | |
759 | * @return a {@link org.kuali.rice.kim.api.identity.privacy.EntityPrivacyPreferences} or null | |
760 | * @throws IllegalArgumentException if the entityId is blank | |
761 | */ | |
762 | @WebMethod(operationName = "getEntityPrivacyPreferences") | |
763 | @WebResult(name = "privacyPreferences") | |
764 | EntityPrivacyPreferences getEntityPrivacyPreferences( @WebParam(name="entityId") String entityId ); | |
765 | ||
766 | /** | |
767 | * This will create a {@link org.kuali.rice.kim.api.identity.privacy.EntityPrivacyPreferences} exactly like the privacyPreferences passed in. | |
768 | * | |
769 | * The EntityPrivacyPreferences object passed in must be populated with an entityId | |
770 | * | |
771 | * @param privacyPreferences the EntityPrivacyPreferences to create | |
772 | * @return the newly created EntityPrivacyPreferences object. | |
773 | * @throws IllegalArgumentException if the privacyPreferences is null | |
774 | * @throws IllegalStateException if the privacyPreferences already exists in the system or privacyPreferences is not populated with entityId | |
775 | */ | |
776 | @WebMethod(operationName="addPrivacyPreferencesToEntity") | |
777 | @WebResult(name = "privacyPreferences") | |
778 | EntityPrivacyPreferences addPrivacyPreferencesToEntity(@WebParam(name = "privacyPreferences") EntityPrivacyPreferences privacyPreferences) | |
779 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
780 | ||
781 | /** | |
782 | * This will update a {@link org.kuali.rice.kim.api.identity.privacy.EntityPrivacyPreferences} exactly like the privacyPreferences passed in. | |
783 | * | |
784 | * | |
785 | * @param privacyPreferences the EntityPrivacyPreferences to update | |
786 | * @return the updated EntityPrivacyPreferences object. | |
787 | * @throws IllegalArgumentException if the privacyPreferences is null | |
788 | * @throws IllegalStateException if the privacyPreferences does not exist in the system. | |
789 | */ | |
790 | @WebMethod(operationName="updatePrivacyPreferences") | |
791 | @WebResult(name = "privacyPreferences") | |
792 | EntityPrivacyPreferences updatePrivacyPreferences(@WebParam(name = "privacyPreferences") EntityPrivacyPreferences privacyPreferences) | |
793 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
794 | ||
795 | ||
796 | /** | |
797 | * This will create a {@link org.kuali.rice.kim.api.identity.citizenship.EntityCitizenship} exactly like the citizenship passed in. | |
798 | * | |
799 | * The EntityCitizenship object passed in must be populated with an entityId and a status | |
800 | * | |
801 | * @param citizenship the EntityCitizenship to create | |
802 | * @return the newly created EntityCitizenship object. | |
803 | * @throws IllegalArgumentException if the citizenship is null | |
804 | * @throws IllegalStateException if the citizenship already exists in the system or citizenship is not populated with entityId and status | |
805 | */ | |
806 | @WebMethod(operationName="addCitizenshipToEntity") | |
807 | @WebResult(name = "citizenship") | |
808 | EntityCitizenship addCitizenshipToEntity(@WebParam(name = "citizenship") EntityCitizenship citizenship) | |
809 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
810 | ||
811 | /** | |
812 | * This will update a {@link org.kuali.rice.kim.api.identity.citizenship.EntityCitizenship} exactly like the citizenship passed in. | |
813 | * | |
814 | * | |
815 | * @param citizenship the EntityCitizenship to update | |
816 | * @return the updated EntityCitizenship object. | |
817 | * @throws IllegalArgumentException if the citizenship is null | |
818 | * @throws IllegalStateException if the citizenship does not exist in the system. | |
819 | */ | |
820 | @WebMethod(operationName="updateCitizenship") | |
821 | @WebResult(name = "citizenship") | |
822 | EntityCitizenship updateCitizenship(@WebParam(name = "citizenship") EntityCitizenship citizenship) | |
823 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
824 | ||
825 | /** | |
826 | * This will inactivate a {@link org.kuali.rice.kim.api.identity.citizenship.EntityCitizenship} with the unique id passed in. | |
827 | * | |
828 | * | |
829 | * @param citizenship the EntityCitizenship to inactivate | |
830 | * @return the inactivated EntityCitizenship object. | |
831 | * @throws IllegalArgumentException if the citizenship is null | |
832 | * @throws IllegalStateException if the citizenship does not exist in the system. | |
833 | */ | |
834 | @WebMethod(operationName="inactivateCitizenship") | |
835 | @WebResult(name = "citizenship") | |
836 | EntityCitizenship inactivateCitizenship(@WebParam(name = "id") String id) | |
837 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
838 | ||
839 | /** | |
840 | * This will create a {@link org.kuali.rice.kim.api.identity.ethnicity.EntityEthnicity} exactly like the ethnicity passed in. | |
841 | * | |
842 | * The EntityEthnicity object passed in must be populated with an entityId and a ethnicity code | |
843 | * | |
844 | * @param ethnicity the EntityEthnicity to create | |
845 | * @return the newly created EntityEthnicity object. | |
846 | * @throws IllegalArgumentException if the ethnicity is null | |
847 | * @throws IllegalStateException if the ethnicity already exists in the system or ethnicity is not populated with entityId and ethnicity code | |
848 | */ | |
849 | @WebMethod(operationName="addEthnicityToEntity") | |
850 | @WebResult(name = "ethnicity") | |
851 | EntityEthnicity addEthnicityToEntity(@WebParam(name = "ethnicity") EntityEthnicity ethnicity) | |
852 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
853 | ||
854 | /** | |
855 | * This will update a {@link org.kuali.rice.kim.api.identity.ethnicity.EntityEthnicity} exactly like the ethnicity passed in. | |
856 | * | |
857 | * | |
858 | * @param ethnicity the EntityEthnicity to update | |
859 | * @return the updated EntityEthnicity object. | |
860 | * @throws IllegalArgumentException if the ethnicity is null | |
861 | * @throws IllegalStateException if the ethnicity does not exist in the system. | |
862 | */ | |
863 | @WebMethod(operationName="updateEthnicity") | |
864 | @WebResult(name = "ethnicity") | |
865 | EntityEthnicity updateEthnicity(@WebParam(name = "ethnicity") EntityEthnicity ethnicity) | |
866 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
867 | ||
868 | /** | |
869 | * This will create a {@link org.kuali.rice.kim.api.identity.residency.EntityResidency} exactly like the residency passed in. | |
870 | * | |
871 | * The EntityResidency object passed in must be populated with an entityId | |
872 | * | |
873 | * @param residency the EntityResidency to create | |
874 | * @return the newly created EntityResidency object. | |
875 | * @throws IllegalArgumentException if the residency is null | |
876 | * @throws IllegalStateException if the residency already exists in the system or residency is not populated with entityId | |
877 | */ | |
878 | @WebMethod(operationName="addResidencyToEntity") | |
879 | @WebResult(name = "residency") | |
880 | EntityResidency addResidencyToEntity(@WebParam(name = "residency") EntityResidency residency) | |
881 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
882 | ||
883 | /** | |
884 | * This will update a {@link org.kuali.rice.kim.api.identity.residency.EntityResidency} exactly like the residency passed in. | |
885 | * | |
886 | * | |
887 | * @param residency the EntityResidency to update | |
888 | * @return the updated EntityResidency object. | |
889 | * @throws IllegalArgumentException if the residency is null | |
890 | * @throws IllegalStateException if the residency does not exist in the system. | |
891 | */ | |
892 | @WebMethod(operationName="updateResidency") | |
893 | @WebResult(name = "residency") | |
894 | EntityResidency updateResidency(@WebParam(name = "residency") EntityResidency residency) | |
895 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
896 | ||
897 | ||
898 | /** | |
899 | * This will create a {@link org.kuali.rice.kim.api.identity.visa.EntityVisa} exactly like the visa passed in. | |
900 | * | |
901 | * The EntityVisa object passed in must be populated with an entityId and a visaTypeKey | |
902 | * | |
903 | * @param visa the EntityVisa to create | |
904 | * @return the newly created EntityVisa object. | |
905 | * @throws IllegalArgumentException if the visa is null | |
906 | * @throws IllegalStateException if the visa already exists in the system or visa is not populated with entityId and a visaTypeKey | |
907 | */ | |
908 | @WebMethod(operationName="addVisaToEntity") | |
909 | @WebResult(name = "visa") | |
910 | EntityVisa addVisaToEntity(@WebParam(name = "visa") EntityVisa visa) | |
911 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
912 | ||
913 | /** | |
914 | * This will update a {@link org.kuali.rice.kim.api.identity.visa.EntityVisa} exactly like the visa passed in. | |
915 | * | |
916 | * | |
917 | * @param visa the EntityVisa to update | |
918 | * @return the updated EntityVisa object. | |
919 | * @throws IllegalArgumentException if the visa is null | |
920 | * @throws IllegalStateException if the visa does not exist in the system. | |
921 | */ | |
922 | @WebMethod(operationName="updateVisa") | |
923 | @WebResult(name = "visa") | |
924 | EntityVisa updateVisa(@WebParam(name = "visa") EntityVisa visa) | |
925 | throws RiceIllegalArgumentException, RiceIllegalStateException; | |
926 | ||
927 | /** | |
928 | * Gets the {@link org.kuali.rice.kim.api.identity.Type} for a given EntityType code. | |
929 | * | |
930 | * <p> | |
931 | * This method will return null if the code does not exist. | |
932 | * </p> | |
933 | * | |
934 | * @param code the unique id to retrieve the Type by. Cannot be null. | |
935 | * @return a {@link org.kuali.rice.kim.api.identity.Type} or null | |
936 | * @throws IllegalArgumentException if the code is blank | |
937 | */ | |
938 | @WebMethod(operationName = "getEntityType") | |
939 | @WebResult(name = "type") | |
940 | Type getEntityType( @WebParam(name="code") String code ); | |
941 | ||
942 | ||
943 | /** | |
944 | * Gets the {@link org.kuali.rice.kim.api.identity.Type} for a given EntityAddressType code. | |
945 | * | |
946 | * <p> | |
947 | * This method will return null if the code does not exist. | |
948 | * </p> | |
949 | * | |
950 | * @param code the unique id to retrieve the Type by. Cannot be null. | |
951 | * @return a {@link org.kuali.rice.kim.api.identity.Type} or null | |
952 | * @throws IllegalArgumentException if the code is blank | |
953 | */ | |
954 | @WebMethod(operationName = "getAddressType") | |
955 | @WebResult(name = "type") | |
956 | Type getAddressType( @WebParam(name="code") String code ); | |
957 | ||
958 | /** | |
959 | * Gets the {@link org.kuali.rice.kim.api.identity.affiliation.EntityAffiliationType} for a given EntityAffiliationType code. | |
960 | * | |
961 | * <p> | |
962 | * This method will return null if the code does not exist. | |
963 | * </p> | |
964 | * | |
965 | * @param code the unique id to retrieve the EntityAffiliationType by. Cannot be null. | |
966 | * @return a {@link org.kuali.rice.kim.api.identity.affiliation.EntityAffiliationType} or null | |
967 | * @throws IllegalArgumentException if the code is blank | |
968 | */ | |
969 | @WebMethod(operationName = "getAffiliationType") | |
970 | @WebResult(name = "affiliationType") | |
971 | EntityAffiliationType getAffiliationType( @WebParam(name="code") String code ); | |
972 | ||
973 | /** | |
974 | * Gets the {@link org.kuali.rice.kim.api.identity.Type} for a given EntityCitizenship status code. | |
975 | * | |
976 | * <p> | |
977 | * This method will return null if the code does not exist. | |
978 | * </p> | |
979 | * | |
980 | * @param code the unique id to retrieve the Type by. Cannot be null. | |
981 | * @return a {@link org.kuali.rice.kim.api.identity.Type} or null | |
982 | * @throws IllegalArgumentException if the code is blank | |
983 | */ | |
984 | @WebMethod(operationName = "getCitizenshipStatus") | |
985 | @WebResult(name = "type") | |
986 | Type getCitizenshipStatus( @WebParam(name="code") String code ); | |
987 | ||
988 | /** | |
989 | * Gets the {@link org.kuali.rice.kim.api.identity.Type} for a given EntityEmployment type code. | |
990 | * | |
991 | * <p> | |
992 | * This method will return null if the code does not exist. | |
993 | * </p> | |
994 | * | |
995 | * @param code the unique id to retrieve the Type by. Cannot be null. | |
996 | * @return a {@link org.kuali.rice.kim.api.identity.Type} or null | |
997 | * @throws IllegalArgumentException if the code is blank | |
998 | */ | |
999 | @WebMethod(operationName = "getEmploymentType") | |
1000 | @WebResult(name = "type") | |
1001 | Type getEmploymentType( @WebParam(name="code") String code ); | |
1002 | ||
1003 | /** | |
1004 | * Gets the {@link org.kuali.rice.kim.api.identity.Type} for a given EntityEmployment status code. | |
1005 | * | |
1006 | * <p> | |
1007 | * This method will return null if the code does not exist. | |
1008 | * </p> | |
1009 | * | |
1010 | * @param code the unique id to retrieve the Type by. Cannot be null. | |
1011 | * @return a {@link org.kuali.rice.kim.api.identity.Type} or null | |
1012 | * @throws IllegalArgumentException if the code is blank | |
1013 | */ | |
1014 | @WebMethod(operationName = "getEmploymentStatus") | |
1015 | @WebResult(name = "type") | |
1016 | Type getEmploymentStatus( @WebParam(name="code") String code ); | |
1017 | ||
1018 | /** | |
1019 | * Gets the {@link org.kuali.rice.kim.api.identity.external.EntityExternalIdentifierType} for a given type code. | |
1020 | * | |
1021 | * <p> | |
1022 | * This method will return null if the code does not exist. | |
1023 | * </p> | |
1024 | * | |
1025 | * @param code the unique id to retrieve the EntityExternalIdentifierType by. Cannot be null. | |
1026 | * @return a {@link org.kuali.rice.kim.api.identity.Type} or null | |
1027 | * @throws IllegalArgumentException if the code is blank | |
1028 | */ | |
1029 | @WebMethod(operationName = "getExternalIdentifierType") | |
1030 | @WebResult(name = "type") | |
1031 | EntityExternalIdentifierType getExternalIdentifierType( @WebParam(name="code") String code ); | |
1032 | ||
1033 | /** | |
1034 | * Gets the {@link org.kuali.rice.kim.api.identity.Type} for a given EntityName type code. | |
1035 | * | |
1036 | * <p> | |
1037 | * This method will return null if the code does not exist. | |
1038 | * </p> | |
1039 | * | |
1040 | * @param code the unique id to retrieve the Type by. Cannot be null. | |
1041 | * @return a {@link org.kuali.rice.kim.api.identity.Type} or null | |
1042 | * @throws IllegalArgumentException if the code is blank | |
1043 | */ | |
1044 | @WebMethod(operationName = "getNameType") | |
1045 | @WebResult(name = "type") | |
1046 | Type getNameType(@WebParam(name = "code") String code); | |
1047 | ||
1048 | /** | |
1049 | * Gets the {@link org.kuali.rice.kim.api.identity.Type} for a given EntityPhone type code. | |
1050 | * | |
1051 | * <p> | |
1052 | * This method will return null if the code does not exist. | |
1053 | * </p> | |
1054 | * | |
1055 | * @param code the unique id to retrieve the Type by. Cannot be null. | |
1056 | * @return a {@link org.kuali.rice.kim.api.identity.Type} or null | |
1057 | * @throws IllegalArgumentException if the code is blank | |
1058 | */ | |
1059 | @WebMethod(operationName = "getPhoneType") | |
1060 | @WebResult(name = "type") | |
1061 | Type getPhoneType( @WebParam(name="code") String code ); | |
1062 | ||
1063 | /** | |
1064 | * Gets the {@link org.kuali.rice.kim.api.identity.Type} for a given EntityEmail type code. | |
1065 | * | |
1066 | * <p> | |
1067 | * This method will return null if the code does not exist. | |
1068 | * </p> | |
1069 | * | |
1070 | * @param code the unique id to retrieve the Type by. Cannot be null. | |
1071 | * @return a {@link org.kuali.rice.kim.api.identity.Type} or null | |
1072 | * @throws IllegalArgumentException if the code is blank | |
1073 | */ | |
1074 | @WebMethod(operationName = "getEmailType") | |
1075 | @WebResult(name = "type") | |
1076 | Type getEmailType( @WebParam(name="code") String code ); | |
1077 | ||
1078 | } |